Skip to main content

eliminate_boolean_rows

Function eliminate_boolean_rows 

Source
pub fn eliminate_boolean_rows(
    rows: &mut Vec<BooleanRow>,
    diagram: &mut BooleanDecisionDiagram,
    constraint: impl FnMut(&BooleanRow, &mut BooleanDecisionDiagram) -> Result<DecisionId, BooleanResourceError>,
) -> Result<BooleanRow, BooleanResourceError>
Expand description

Eliminate one linear constraint pointwise, returning its conditional pivot.

The first available pivot is selected by disjoint guards, so no assignment enumeration or product of alternative row spaces is needed.

ยงErrors

Returns BooleanResourceError if elimination exceeds configured limits.