Package com.semedy.reasoner.rewriter
Class PropagateConstantsRewriter
java.lang.Object
com.semedy.reasoner.rewriter.PropagateConstantsRewriter
- All Implemented Interfaces:
Rewriter
This rewriter propagates constants top-down in the rules and
then removes rules which cannot contribute to the answer or instantiates variables with constants in rules
then removes rules which cannot contribute to the answer or instantiates variables with constants in rules
- Author:
- angele
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionget a description for the rewritergetName()get the name of a rewriterbooleanindicates whether rewriter has to read the symbol tablerewrite(IntensionalDB input, ExtensionalDB[] edbs, SymbolTable symbolTable, ExternalDataTypeProvider datatypes, Configuration config) applies the rewriter to a set of rulesvoidsetBuiltinProvider(BuiltinProvider builtinProvider) sets the built-in provider for the rewritervoidsetProperties(Properties prp) set propertiesvoidsetStatistics(SystemMonitor _statistics) adds a system monitor which has run time data about rules.booleanindicates whether rewriter modifies the symbol table
-
Constructor Details
-
PropagateConstantsRewriter
public PropagateConstantsRewriter()
-
-
Method Details
-
getName
Description copied from interface:Rewriterget the name of a rewriter -
getDescription
Description copied from interface:Rewriterget a description for the rewriter- Specified by:
getDescriptionin interfaceRewriter- Returns:
-
readsSymbolTable
public boolean readsSymbolTable()Description copied from interface:Rewriterindicates whether rewriter has to read the symbol table- Specified by:
readsSymbolTablein interfaceRewriter- Returns:
-
writesSymbolTable
public boolean writesSymbolTable()Description copied from interface:Rewriterindicates whether rewriter modifies the symbol table- Specified by:
writesSymbolTablein interfaceRewriter- Returns:
-
setBuiltinProvider
Description copied from interface:Rewritersets the built-in provider for the rewriter- Specified by:
setBuiltinProviderin interfaceRewriter
-
rewrite
public IntensionalDB rewrite(IntensionalDB input, ExtensionalDB[] edbs, SymbolTable symbolTable, ExternalDataTypeProvider datatypes, Configuration config) throws InterruptedException, IOException, SemReasonerException Description copied from interface:Rewriterapplies the rewriter to a set of rules- Specified by:
rewritein interfaceRewriter- Parameters:
input- , intensional databaseedbs- , extensional databases, the last one is used for snapshot transaction datasymbolTable- , symbol tabledatatypes- , the external datatypesconfig- , configuration- Returns:
- Throws:
InterruptedExceptionIOExceptionRewriterExceptionSemReasonerException
-
setStatistics
Description copied from interface:Rewriteradds a system monitor which has run time data about rules.- Specified by:
setStatisticsin interfaceRewriter
-
setProperties
Description copied from interface:Rewriterset properties- Specified by:
setPropertiesin interfaceRewriter
-