Interface UserPropagator

  • All Known Implementing Classes:
    AbstractUserPropagator, NQueensConstraintPropagator, NQueensEnumeratingPropagator

    public interface UserPropagator
    Allows user-defined propagators (~ theory solvers) to be implemented. It is advised to inherit from AbstractUserPropagator rather than implementing this interface directly.

    A user propagator provides various callbacks that are invoked by the solver during the solving process. Within these callbacks, the user can react to and influence the solver by calling into the PropagatorBackend. For example, he can raise conflicts whenever the solver makes assignments inconsistent to the user-defined theory.