org.deri.iris.rules.optimisation
Class JoinConditionOptimiser
java.lang.Object
org.deri.iris.rules.optimisation.JoinConditionOptimiser
- All Implemented Interfaces:
- IRuleOptimiser
public class JoinConditionOptimiser
- extends Object
- implements IRuleOptimiser
This optimiser attempts to use the same variable for join conditions.
e.g. t(?X,?Y,?Z) :- p(?X), q(?Y), r(?Z), ?X = ?Y, ?Y = ?Z.
==>> t(?X,?X,?X) :- p(?X), q(?X), r(?X).
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JoinConditionOptimiser
public JoinConditionOptimiser()
optimise
public IRule optimise(IRule rule)
- Description copied from interface:
IRuleOptimiser
- Optimise the rule.
- Specified by:
optimise in interface IRuleOptimiser
- Parameters:
rule - The rule to optimise.
- Returns:
- The optimised rule.