Interface Theory
public interface Theory
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe default priority for theory propagators.static final intThe recommended priority for theory propagators that might diverge (i.e., execute continuously without reaching fixed point) on unsatisfiable problems. -
Method Summary
Modifier and TypeMethodDescriptioncheckSupport(TheoryRule theoryRule) voidcreatePropagator(ModelStoreBuilder storeBuilder, Collection<TheoryRule> collectedRules) default intGets the priority that determines where in the sequence of propagator should this theory run.
-
Field Details
-
DEFAULT_PRIORITY
static final int DEFAULT_PRIORITYThe default priority for theory propagators.- See Also:
-
DIVERGING_PRIORITY
static final int DIVERGING_PRIORITYThe recommended priority for theory propagators that might diverge (i.e., execute continuously without reaching fixed point) on unsatisfiable problems.Propagators with this priority will run late enough in the sequence of propagators so that theory propagators that can detect global unsatisfiability have already finished and determined that the numerical problem is satisfiable.
- See Also:
-
-
Method Details
-
checkSupport
-
createPropagator
-
getPriority
default int getPriority()Gets the priority that determines where in the sequence of propagator should this theory run.Higher values denote a request to appear earlier in the sequence of propagators.
- Returns:
- The priority. The default priority is
DEFAULT_PRIORITY.
-