Class QueryCoreProcessorImpl

java.lang.Object
fr.inria.rules.integraal.backward_chaining.core.QueryCoreProcessorImpl
All Implemented Interfaces:
QueryCoreProcessor

public class QueryCoreProcessorImpl extends Object implements QueryCoreProcessor
Core computing for small sets of atoms, used mostly for queries This is based on an implementation by Guillaume Pérution-Kihli
Author:
Florent Tornil, Guillaume Pérution-Kihli
  • Constructor Details

    • QueryCoreProcessorImpl

      public QueryCoreProcessorImpl()
      Default constructor using generic homomorphism
    • QueryCoreProcessorImpl

      public QueryCoreProcessorImpl(CoreProcessor coreProcessor)
      Constructor using a specific core processor
      Parameters:
      coreProcessor - the core processor
    • QueryCoreProcessorImpl

      public QueryCoreProcessorImpl(RuleCompilation compilation)
      Constructor using a homomorphism with compilation test
      Parameters:
      compilation - the compilation of the rules to use
    • QueryCoreProcessorImpl

      public QueryCoreProcessorImpl(RuleCompilation compilation, CoreProcessor coreProcessor)
      Constructor using a homomorphism with compilation test and a specific core processor
      Parameters:
      compilation - the compilation of the rules to use
      coreProcessor - the core processor
  • Method Details

    • computeCore

      public FOQuery<? extends FOFormula> computeCore(FOQuery<? extends FOFormula> query)
      Description copied from interface: QueryCoreProcessor
      Compute the core of a query by removing all the redundant atoms in it, in considering the answer variables as constants, these variables must belong to the core.
      Specified by:
      computeCore in interface QueryCoreProcessor
      Parameters:
      query - a FOQuery we want to compute the core
      Returns:
      a query representing the core of the given query