Skip to main content

components

Function components 

Source
pub fn components(p: &Problem) -> Vec<Component>
Expand description

Split a problem into independent components.

  • Fixed variables never connect rules (they are constants).
  • Rules with no free variable form their own Backend::Trivial component (checked for violation only).
  • Free variables touched only by targets/stays form trivial components.
  • A component is Backend::Linear when every row of every rule is affine in the free variables; otherwise the whole component is Backend::Numeric.