public class InferenceRule extends Object
Class providing resolution and higher level facilities for rule objects.
| Constructor and Description |
|---|
InferenceRule(InferenceRule r) |
InferenceRule(Rule rule,
GraknGraph graph) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj) |
ReasonerQueryImpl |
getBody() |
ReasonerAtomicQuery |
getHead() |
Atom |
getRuleConclusionAtom() |
ConceptId |
getRuleId() |
boolean |
hasDisconnectedHead() |
int |
hashCode() |
InferenceRule |
propagateConstraints(Atom parentAtom) |
boolean |
requiresMaterialisation()
rule needs to be materialised if head atom requires materialisation or if its head contains only fresh variables
|
String |
toString() |
InferenceRule |
unify(Atom parentAtom)
make rule consistent variable-wise with the parent atom by means of unification
|
InferenceRule |
unify(Unifier unifier) |
public InferenceRule(Rule rule, GraknGraph graph)
public InferenceRule(InferenceRule r)
public ConceptId getRuleId()
public boolean hasDisconnectedHead()
public boolean requiresMaterialisation()
public ReasonerQueryImpl getBody()
public ReasonerAtomicQuery getHead()
public Atom getRuleConclusionAtom()
public InferenceRule propagateConstraints(Atom parentAtom)
parentAtom - from which constrained are propagatedpublic InferenceRule unify(Unifier unifier)
unifier - to be applied on this rulepublic InferenceRule unify(Atom parentAtom)
parentAtom - atom the rule should be unified withCopyright © 2017 Grakn Labs Ltd. All rights reserved.