| Constructor and Description |
|---|
InferenceRule(Rule rule,
GraknTx tx) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj) |
ReasonerQueryImpl |
getBody() |
ReasonerAtomicQuery |
getHead() |
MultiUnifier |
getMultiUnifier(Atom parentAtom) |
Atom |
getRuleConclusionAtom() |
ConceptId |
getRuleId() |
boolean |
hasDisconnectedHead() |
int |
hashCode() |
InferenceRule |
propagateConstraints(Atom parentAtom,
Unifier unifier) |
boolean |
requiresMaterialisation(Atom parentAtom)
rule requires materialisation in the context of resolving parent atom
if parent atom requires materialisation, head atom requires materialisation or if the head contains only fresh variables
|
int |
resolutionPriority() |
InferenceRule |
rewrite(Atom parentAtom)
rewrite the rule to a form with user defined variables
|
ResolutionState |
subGoal(Atom parentAtom,
Unifier ruleUnifier,
QueryStateBase parent,
Set<ReasonerAtomicQuery> visitedSubGoals,
QueryCache<ReasonerAtomicQuery> cache) |
String |
toString() |
InferenceRule |
withSubstitution(Answer sub) |
public int resolutionPriority()
public ConceptId getRuleId()
public boolean hasDisconnectedHead()
public boolean requiresMaterialisation(Atom parentAtom)
public ReasonerQueryImpl getBody()
public ReasonerAtomicQuery getHead()
public InferenceRule withSubstitution(Answer sub)
sub - substitution to be added to the rulepublic Atom getRuleConclusionAtom()
public InferenceRule propagateConstraints(Atom parentAtom, Unifier unifier)
parentAtom - atom containing constraints (parent)unifier - unifier unifying parent with the rulepublic InferenceRule rewrite(Atom parentAtom)
parentAtom - reference parent atompublic ResolutionState subGoal(Atom parentAtom, Unifier ruleUnifier, QueryStateBase parent, Set<ReasonerAtomicQuery> visitedSubGoals, QueryCache<ReasonerAtomicQuery> cache)
parentAtom - atom to which this rule is appliedruleUnifier - unifier with parent stateparent - parent statevisitedSubGoals - set of visited sub goalscache - query cachepublic MultiUnifier getMultiUnifier(Atom parentAtom)
parentAtom - atom to unify the rule withCopyright © 2018 Grakn Labs Ltd. All rights reserved.