Stay organized with collections
Save and categorize content based on your preferences.
C++ Reference: class CircuitPropagator
Note: This documentation is automatically generated.
Circuit/sub-circuit constraint.
Nodes that are not in the unique allowed sub-circuit must point to themseves.
A nodes that has no self-arc must thus be inside the sub-circuit. If there is
no self-arc at all, then this constaint forces the circuit to go through all
the nodes. Multi-arcs are NOT supported.
Important: for correctness, this constraint requires that "exactly one"
constraints have been added for all the incoming (resp. outgoing) arcs of
each node. Also, such constraint must propagate before this one.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-08-06 UTC."],[],["The `CircuitPropagator` class enforces circuit/sub-circuit constraints in a graph represented sparsely. Nodes outside the allowed sub-circuit must self-loop; absence of a self-loop implies node inclusion. The constraint mandates \"exactly one\" constraints on each node's incoming/outgoing arcs, and these must propagate first. Key methods include: `CircuitPropagator` (constructor taking graph parameters and options), `Propagate` and `IncrementalPropagate` (for constraint enforcement), `RegisterWith` (to interact with a watcher), and `SetLevel` (for setting a propagation level).\n"]]