Expand for a particular parent value.
Gets the constraint factors for this component.
Gets the constraint factors for this component. Returns the lower bound factors unless an Upper argument is provided.
Expand for all values of the parent that were not previously expanded, based on the current range of the parent.
A problem component is fully enumerated if its range is complete.
A problem component is fully enumerated if its range is complete. This also means that its range cannot contain star. This is always false for components associated with elements that have infinite support.
A problem component is fully refined if any additional refinement cannot change its range or factors.
A problem component is fully refined if any additional refinement cannot change its range or factors. One necessary condition is to be fully enumerated. Additionally, expandable components must be fully expanded (i.e. have created a subproblem for each parent value), and each subproblem must be fully refined. These conditions are necessary but not always sufficient to be fully refined.
Generate a range of values for this component.
Generate a range of values for this component. Also sets the variable for this component. If an argument is not in the component collection, we do not generate the argument, but instead assume its only value is *. This doesn't change the range of any other element or expand any subproblems. The range will include * based on argument ranges including * or any subproblem not being expanded.\
Generate the non-constraint factors based on the current range.
Generate the non-constraint factors based on the current range. For most elements, this just generates the factors in the usual way. For a chain, this does not include subproblem factors. The parameterized flag indicates whether parameterized elements should have special factors created that use the MAP values of their arguments. This defaults to false.
The current range of the element.
The current range of the element. May grow or change over time.
Set the variable associated with this component to the given variable.
Set the variable associated with this component to the given variable.
The subproblems nested inside this expandable component.
The subproblems nested inside this expandable component. They are created for particular parent values.
The current variable representing this component in factors.
The current variable representing this component in factors. This is set automatically when the range is updated.
A problem component that provides an expand method.