Class SingleRuleAggregator

java.lang.Object
fr.inria.rules.integraal.backward_chaining.pure.rewriting_operator.SingleRuleAggregator
All Implemented Interfaces:
RewritingOperator

public class SingleRuleAggregator extends Object implements RewritingOperator
From Melanie Konïg's thesis Rewriting operator SRA
Query rewriting engine that rewrite query using aggregation by rule of most general single piece-unifiers From Melanie Konïg's thesis Rewriting operator SRA
Query rewriting engine that rewrite query using aggregation by rule of most general single piece-unifiers
  • Constructor Details

    • SingleRuleAggregator

      public SingleRuleAggregator()
      Creates a new SingleRuleAggregator using default parameters query unifier algorithm : QueryUnifierAlgorithm
    • SingleRuleAggregator

      public SingleRuleAggregator(RuleCompilation compilation)
      Creates a new SingleRuleAggregator using default parameters query unifier algorithm : QueryUnifierAlgorithm
      Parameters:
      compilation - the compilation of the rules to use
    • SingleRuleAggregator

      public SingleRuleAggregator(QueryUnifierAlgorithm unifier_algo)
      Creates a new SingleRuleAggregator using the given parameters
      Parameters:
      unifier_algo - the query unifier algorithm to use
    • SingleRuleAggregator

      public SingleRuleAggregator(QueryUnifierAlgorithm unifier_algo, RuleCompilation compilation)
      Creates a new SingleRuleAggregator using the given parameters
      The unifier algorithm must have been instantiated with the given compilation if it is not an empty compilation
      Parameters:
      unifier_algo - the query unifier algorithm to use
      compilation - the compilation of the rules to use
  • Method Details

    • rewrite

      public Set<FOQuery<?>> rewrite(FOQuery<?> query, RuleBase rb)
      Description copied from interface: RewritingOperator
      A rewriting operator rew is a function which takes a conjunctive query Q and a set of rules R and outputs a set of conjunctive queries noted rew(Q, R)
      Specified by:
      rewrite in interface RewritingOperator
      Parameters:
      query - Q
      rb - R
      Returns:
      a set of conjunctive queries, rewritings of Q with R