#include <compmod.hpp>
|
The values possible for the picking strategy. |
|
Constructor that initialises the random number generator, inserts the query in the model and sets the pick strategies.
|
|
Adds a new entry to the model. If the entry already exists in the model, the old and the new con_type merge and replace the existing one. |
|
Change the constraint C of this rule into the conjunction of C and another constraint. It will call the appropriate specialised method. This is part of the update mechanism.
|
|
Change the constraint C of this answer into the conjunction of C and another constraint. This will add to the unused accumulated answer alternative if it exists, otherwise add a new unused answer alternative. This is part of the update mechanism.
|
|
Change the constraint C of this call into the conjunction of C and another constraint. The change will be duefully propagated to all answer extensions of this call, as to preserve consistency. This is part of the update mechanism.
|
|
Change the constraint C of this rule into the disjunction of C and another constraint. It will call the appropriate specialised method. This is part of the update mechanism.
|
|
Change the constraint C of this answer into the disjunction of C and another constraint. This will add to the unused accumulated answer alternative if it exists, otherwise add a new unused answer alternative. This is part of the update mechanism.
|
|
Change the constraint C of this call into the disjunction of C and another constraint. The change will be duefully propagated to all answer extensions of this call, as to preserve consistency. This is part of the update mechanism.
|
|
Clears all remaining dynamic memory allocated by this model. |
|
Extends the model by EBAA. |
|
Extends the model by EBAB. |
|
Extends the model by EBC or EBCWA. |
|
Extends the model by applying an answer to the first body literal of the given rule for the first time. This will not be called if the answer is not the first one used on this rule.
|
|
Extends the model by picking an entry (answer alternative or bound or call), depending on the choosing strategy and using the appropriate extension operation.
|
|
This method is called if a serious error occurs. This should not happen, because it means that the model is inconsistent and cannot be trusted. This also throws an compmod_error exception, which aborts the computation. |
|
Finalise the computation model. This clears all used dynamic memory. |
|
Gets the answer (conjunction of alternative and bound) that has been applied to the model for a given head, if one has been applied.
|
|
Gets at least the calls (both active and obsolete) whose first body literal unifies with the given literal. Both negated and non-negated literals are returned.
|
|
Uses the answer alternative picking strategy to find an unused answer alternative.
|
|
Uses the answer bound picking strategy to find an unused answer bound.
|
|
Uses the call picking strategy to find a call that can be used.
|
|
Gets an entry from the given set, using a given pick strategy.
|
|
Translates a strategy name into a strategy token.
|
|
Reports the answer for the given head (usually the given query).
|
|
Sets the strategy for choosing which answer alternative to use if several exist.
|
|
Sets the strategy for choosing which answer bound to use if several exist.
|
|
Sets the strategy for choosing which call to use if several exist.
|
|
Sets the percentage that local EBC is used. |
|
Sets the global strategy for choosing whether to use an answer alternative, answer bound or a call when extending the model.
|
|
Sets the strategy for choosing which clause in the program to use for EBC if several exist.
|
|
Write a text representation of a computation model's state to an ostream.
|
|
A vector of all the c_rule*:s used in the model, so that final garbage collection can be used. |
|
The set of disjunctions of answer alternatives not yet used. There can be only one element per head variant. |
|
The strategy used for choosing which answer alternative to use. |
|
The set of conjunctions of answer bounds not yet used. There can be only one element per head variant. |
|
The strategy used for choosing which answer bound to use. |
|
The answer extension of call entries, when they exist. This is a function "Call(origin) -> Call(target) x Unifier", where the unifier gives the unifier that unifies the origin and the target. |
|
The set of "active" calls, the calls which still has possibilities for EBC or EBCWA. |
|
The strategy used for choosing which call to use. |
|
The set of disjunctions of answer alternatives already used. There can be only one element per head variant. |
|
The set of conjunctions of answer bounds already used. There can be only one element per head variant. |
|
The set of obsolete calls, those that definitely can no longer be used for EBC or EBCWA. |
|
The percent of EBC that should be done locally (derive the constraint from the call ancestor). The rest is done globally (the derived call is not influenced by the parent call). |
|
The global strategy used for choosing which entry type (answer alternative/bound or call) to use to extend the model. |
|
The strategy used for choosing which clause in the program to use for EBC. |
|
A set of all calls that has been the origin of a EBC. |