Class LegacyBacktrackEvaluator<QD extends QueryableData>

java.lang.Object
fr.inria.rules.integraal.query_evaluation.conjunction.backtrack.legacy.LegacyBacktrackEvaluator<QD>
Type Parameters:
QD - the type of queryable data evaluated by this backtracker
All Implemented Interfaces:
FOQueryEvaluator<FOFormulaConjunction, QD>, QueryEvaluator<FOQuery<? extends FOFormulaConjunction>, QD>

public class LegacyBacktrackEvaluator<QD extends QueryableData> extends Object implements FOQueryEvaluator<FOFormulaConjunction, QD>
Evaluates a query with a conjunctive formula by using homomorphism computing using backtrack algorithm to aggregate the result of each sub-query
To evaluate a given query, a sub-query is chosen and evaluated. The first result is assumed correct and the next sub-query is evaluated. If the results of the second sub-query are consistent with the first (assumed correct) result, the next sub-query is evaluated and so on. When a sub-query result is not consistent with the previous results, a step of backtrack is used to go back on the assumed result and take the next answer. If there is no more answer to go back to, it is also considered inconsistent.
This Backtrack algorithm is inspired by the Baget Jean-François Thesis (Chapter 5) See ... for more information