org.deri.iris.rules.ordering
Class SimpleReOrdering
java.lang.Object
org.deri.iris.rules.ordering.SimpleReOrdering
- All Implemented Interfaces:
- IRuleReOrderingOptimiser
public class SimpleReOrdering
- extends Object
- implements IRuleReOrderingOptimiser
Very naive proof of concept, but speeds up a few unit tests by a factor of 10.
Attempt to re-order rules by simply looking for the first positive ordinary
literal in each rule's body.
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SimpleReOrdering
public SimpleReOrdering()
reOrder
public List<IRule> reOrder(Collection<IRule> rules)
- Description copied from interface:
IRuleReOrderingOptimiser
- Re-order the rules.
The returned collection will have an implied ordering.
- Specified by:
reOrder in interface IRuleReOrderingOptimiser
- Parameters:
rules - The rules to re-order.
- Returns:
- The same rules, but in a more efficient order for evaluation.