Class ByPieceAndVariableCoreProcessor
java.lang.Object
fr.inria.rules.integraal.core.ByPieceAndVariableCoreProcessor
- All Implemented Interfaces:
CoreProcessor<FactBase>
Compute the core of a fact base with an algorithm that computes the core by
removing a variable in the atom set and try to retract the piece that contains
this variable into the fact base
Based on the algorithm presented in "Efficient Core Computation in Data Exchange",
p.9:41, by G. Gottlob and A. Nash
- Author:
- Guillaume Pérution-Kihli
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a core processor using the default generic query evaluator.ByPieceAndVariableCoreProcessor(FOQueryEvaluator<FOFormula, ? super FactBase> evaluator) Creates a core processor using the provided query evaluator. -
Method Summary
Modifier and TypeMethodDescriptionvoidcomputeCore(FactBase fb, Set<Variable> frozenVariables) Compute the core of a fact base by removing all the redundant atoms in it, in considering the frozen variables as constants, these variables must belong to the core.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface CoreProcessor
computeCore
-
Constructor Details
-
ByPieceAndVariableCoreProcessor
public ByPieceAndVariableCoreProcessor()Creates a core processor using the default generic query evaluator. -
ByPieceAndVariableCoreProcessor
Creates a core processor using the provided query evaluator.- Parameters:
evaluator- the evaluator used to test retractions during core computation
-
-
Method Details
-
computeCore
Description copied from interface:CoreProcessorCompute the core of a fact base by removing all the redundant atoms in it, in considering the frozen variables as constants, these variables must belong to the core.- Specified by:
computeCorein interfaceCoreProcessor<FactBase>- Parameters:
fb- the writable data on which we want to compute the corefrozenVariables- Variables that will be treated as constants
-