public interface IExplanationEngine
Created by cprudhom on 09/12/14. Project: choco.
Modifier and Type | Method and Description |
---|---|
default void |
activePropagator(BoolVar var,
Propagator propagator)
Explain the activation of a propagator involved in a reified constraint
|
default Explanation |
explain(ContradictionException cex)
Compute the explanation of the last event from the event store (naturally, the one that leads to a conflict),
and return the explanation of the failure, that is, the (sub-)set of decisions and propagators explaining the conflict.
|
default void |
freeDecisionExplanation(Decision decision)
Free the explanation related to the decision (for efficiency purpose only)
|
default Explanation |
getDecisionRefutationExplanation(Decision decision)
Get the explanation of a decision refutation
|
default ArrayEventStore |
getEventStore() |
default RuleStore |
getRuleStore() |
default void |
instantiateTo(IntVar var,
int val,
ICause cause,
int oldLB,
int oldUB)
Explain the assignment to
val of var due to cause . |
default boolean |
isSaveCauses()
Indicate whether or not the clauses are saved in Explanation
|
default Explanation |
makeExplanation(boolean saveCauses) |
default void |
moveDecisionRefutation(Decision decision,
int to)
Move a decision explanation from the old index to the new one.
|
default void |
removeValue(IntVar var,
int val,
ICause cause)
Explain the removal of the
val from var , due to cause . |
default void |
storeDecisionExplanation(Decision decision,
Explanation explanation)
Store a decision refutation, for future reasoning.
|
default void |
undo()
Undo the last operation done
|
default void |
updateLowerBound(IntVar var,
int value,
int old,
ICause cause)
Explain the removal of [
old ,value [ from var , due to cause . |
default void |
updateUpperBound(IntVar var,
int value,
int old,
ICause cause)
Explain the removal of ]
value ,old ] from var , due to cause . |
default boolean isSaveCauses()
default Explanation explain(ContradictionException cex)
cex
- contradiction to explaindefault Explanation makeExplanation(boolean saveCauses)
saveCauses
- set to true if causes need to be storeddefault RuleStore getRuleStore()
default ArrayEventStore getEventStore()
default Explanation getDecisionRefutationExplanation(Decision decision)
decision
- a refuted decisiondefault void storeDecisionExplanation(Decision decision, Explanation explanation)
decision
- refuted decisionexplanation
- the explanation of the refutationdefault void moveDecisionRefutation(Decision decision, int to)
decision
- a decisionto
- the new indexdefault void freeDecisionExplanation(Decision decision)
decision
- the decision which is going to be forgottendefault void removeValue(IntVar var, int val, ICause cause)
val
from var
, due to cause
.
This is the main explanation why we create this class.
Record operations to execute for explicit call to explanation.var
- an integer variableval
- a valuecause
- a causedefault void updateLowerBound(IntVar var, int value, int old, ICause cause)
old
,value
[ from var
, due to cause
.
Prerequisite: value
should belong to var
This is the main reason why we create this class.
Record operations to execute for explicit call to explanation.var
- an integer variablevalue
- a valuecause
- a causedefault void updateUpperBound(IntVar var, int value, int old, ICause cause)
value
,old
] from var
, due to cause
.
Prerequisite: value
should belong to var
This is the main reason why we create this class.
Record operations to execute for explicit call to explanation.var
- an integer variablevalue
- a valuecause
- a causedefault void instantiateTo(IntVar var, int val, ICause cause, int oldLB, int oldUB)
val
of var
due to cause
.
This is the main reason why we create this class.
Record operations to execute for explicit call to explanation.var
- an integer variableval
- a valuecause
- a causeoldLB
- previous lboldUB
- previous ubdefault void activePropagator(BoolVar var, Propagator propagator)
var
- the reified variablepropagator
- the propagator to awake.default void undo()
Copyright © 2017. All rights reserved.