CPSolver.Space.Propagation (Fixpoint v0.8.37)

Summary

Functions

A single pass of propagation. Produces the list (up to implementation) of propagators scheduled for the next pass. Side effect: modifies the constraint graph. The graph will be modified on every individual Propagator.filter/1, if the latter results in any domain changes.

Functions

Link to this function

propagate(propagators, graph)

Link to this function

propagate(propagators, graph, opts)

Link to this function

propagate(propagators, graph, domain_changes, opts)

@spec propagate(map(), Graph.t(), map(), Keyword.t()) ::
  :fail | {map(), Graph.t(), map()}

A single pass of propagation. Produces the list (up to implementation) of propagators scheduled for the next pass. Side effect: modifies the constraint graph. The graph will be modified on every individual Propagator.filter/1, if the latter results in any domain changes.

Link to this function

run(constraint_graph, changes \\ %{})