org.semanticweb.HermiT.existentials
Class AbstractExpansionStrategy
java.lang.Object
org.semanticweb.HermiT.existentials.AbstractExpansionStrategy
- All Implemented Interfaces:
- java.io.Serializable, ExistentialExpansionStrategy
- Direct Known Subclasses:
- CreationOrderStrategy, IndividualReuseStrategy
public abstract class AbstractExpansionStrategy
- extends java.lang.Object
- implements ExistentialExpansionStrategy, java.io.Serializable
Implements the common bits of an ExistentialsExpansionStrategy, leaving only actual processing of existentials in need of expansion to subclasses.
- See Also:
- Serialized Form
Method Summary |
void |
additionalDLOntologyCleared()
|
void |
additionalDLOntologySet(DLOntology additionalDLOntology)
|
void |
assertionAdded(AtomicRole atomicRole,
Node nodeFrom,
Node nodeTo,
boolean isCore)
|
void |
assertionAdded(Concept concept,
Node node,
boolean isCore)
|
void |
assertionAdded(DataRange range,
Node node,
boolean isCore)
|
void |
assertionCoreSet(AtomicRole atomicRole,
Node nodeFrom,
Node nodeTo)
|
void |
assertionCoreSet(Concept concept,
Node node)
|
void |
assertionCoreSet(DataRange range,
Node node)
|
void |
assertionRemoved(AtomicRole atomicRole,
Node nodeFrom,
Node nodeTo,
boolean isCore)
|
void |
assertionRemoved(Concept concept,
Node node,
boolean isCore)
|
void |
assertionRemoved(DataRange range,
Node node,
boolean isCore)
|
void |
backtrack()
|
void |
branchingPointPushed()
|
void |
clear()
|
protected boolean |
containsSubsetOfNUnequalNodes(Node forNode,
java.util.List<Node> nodes,
int startAt,
java.util.List<Node> selectedNodes,
int cardinality)
|
void |
dlClauseBodyCompiled(java.util.List<DLClauseEvaluator.Worker> workers,
DLClause dlClause,
java.util.List<Variable> variables,
java.lang.Object[] valuesBuffer,
boolean[] coreVariables)
|
protected abstract void |
expandExistential(AtLeast atLeast,
Node forNode)
This method performs the actual expansion. |
boolean |
expandExistentials(boolean finalChance)
|
void |
initialize(Tableau tableau)
|
boolean |
isExact()
|
protected boolean |
isPermanentSatisfier(Node forNode,
Node toNode)
|
protected AbstractExpansionStrategy.SatType |
isSatisfied(AtLeast atLeast,
Node forNode)
|
void |
modelFound()
|
void |
nodeDestroyed(Node node)
|
void |
nodeInitialized(Node node)
|
void |
nodesMerged(Node mergeFrom,
Node mergeInto)
|
void |
nodeStatusChanged(Node node)
|
void |
nodesUnmerged(Node mergeFrom,
Node mergeInto)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
m_blockingStrategy
protected final BlockingStrategy m_blockingStrategy
m_expandNodeAtATime
protected final boolean m_expandNodeAtATime
m_processedExistentials
protected final java.util.List<ExistentialConcept> m_processedExistentials
m_auxiliaryNodes1
protected final java.util.List<Node> m_auxiliaryNodes1
m_auxiliaryNodes2
protected final java.util.List<Node> m_auxiliaryNodes2
m_tableau
protected Tableau m_tableau
m_interruptFlag
protected InterruptFlag m_interruptFlag
m_extensionManager
protected ExtensionManager m_extensionManager
m_ternaryExtensionTableSearch01Bound
protected ExtensionTable.Retrieval m_ternaryExtensionTableSearch01Bound
m_ternaryExtensionTableSearch02Bound
protected ExtensionTable.Retrieval m_ternaryExtensionTableSearch02Bound
m_existentialExpansionManager
protected ExistentialExpansionManager m_existentialExpansionManager
m_descriptionGraphManager
protected DescriptionGraphManager m_descriptionGraphManager
AbstractExpansionStrategy
public AbstractExpansionStrategy(BlockingStrategy blockingStrategy,
boolean expandNodeAtATime)
initialize
public void initialize(Tableau tableau)
- Specified by:
initialize
in interface ExistentialExpansionStrategy
additionalDLOntologySet
public void additionalDLOntologySet(DLOntology additionalDLOntology)
- Specified by:
additionalDLOntologySet
in interface ExistentialExpansionStrategy
additionalDLOntologyCleared
public void additionalDLOntologyCleared()
- Specified by:
additionalDLOntologyCleared
in interface ExistentialExpansionStrategy
clear
public void clear()
- Specified by:
clear
in interface ExistentialExpansionStrategy
expandExistentials
public boolean expandExistentials(boolean finalChance)
- Specified by:
expandExistentials
in interface ExistentialExpansionStrategy
assertionAdded
public void assertionAdded(Concept concept,
Node node,
boolean isCore)
- Specified by:
assertionAdded
in interface ExistentialExpansionStrategy
assertionCoreSet
public void assertionCoreSet(Concept concept,
Node node)
- Specified by:
assertionCoreSet
in interface ExistentialExpansionStrategy
assertionRemoved
public void assertionRemoved(Concept concept,
Node node,
boolean isCore)
- Specified by:
assertionRemoved
in interface ExistentialExpansionStrategy
assertionAdded
public void assertionAdded(DataRange range,
Node node,
boolean isCore)
- Specified by:
assertionAdded
in interface ExistentialExpansionStrategy
assertionCoreSet
public void assertionCoreSet(DataRange range,
Node node)
- Specified by:
assertionCoreSet
in interface ExistentialExpansionStrategy
assertionRemoved
public void assertionRemoved(DataRange range,
Node node,
boolean isCore)
- Specified by:
assertionRemoved
in interface ExistentialExpansionStrategy
assertionAdded
public void assertionAdded(AtomicRole atomicRole,
Node nodeFrom,
Node nodeTo,
boolean isCore)
- Specified by:
assertionAdded
in interface ExistentialExpansionStrategy
assertionCoreSet
public void assertionCoreSet(AtomicRole atomicRole,
Node nodeFrom,
Node nodeTo)
- Specified by:
assertionCoreSet
in interface ExistentialExpansionStrategy
assertionRemoved
public void assertionRemoved(AtomicRole atomicRole,
Node nodeFrom,
Node nodeTo,
boolean isCore)
- Specified by:
assertionRemoved
in interface ExistentialExpansionStrategy
nodesMerged
public void nodesMerged(Node mergeFrom,
Node mergeInto)
- Specified by:
nodesMerged
in interface ExistentialExpansionStrategy
nodesUnmerged
public void nodesUnmerged(Node mergeFrom,
Node mergeInto)
- Specified by:
nodesUnmerged
in interface ExistentialExpansionStrategy
nodeStatusChanged
public void nodeStatusChanged(Node node)
- Specified by:
nodeStatusChanged
in interface ExistentialExpansionStrategy
nodeInitialized
public void nodeInitialized(Node node)
- Specified by:
nodeInitialized
in interface ExistentialExpansionStrategy
nodeDestroyed
public void nodeDestroyed(Node node)
- Specified by:
nodeDestroyed
in interface ExistentialExpansionStrategy
branchingPointPushed
public void branchingPointPushed()
- Specified by:
branchingPointPushed
in interface ExistentialExpansionStrategy
backtrack
public void backtrack()
- Specified by:
backtrack
in interface ExistentialExpansionStrategy
modelFound
public void modelFound()
- Specified by:
modelFound
in interface ExistentialExpansionStrategy
isExact
public boolean isExact()
- Specified by:
isExact
in interface ExistentialExpansionStrategy
dlClauseBodyCompiled
public void dlClauseBodyCompiled(java.util.List<DLClauseEvaluator.Worker> workers,
DLClause dlClause,
java.util.List<Variable> variables,
java.lang.Object[] valuesBuffer,
boolean[] coreVariables)
- Specified by:
dlClauseBodyCompiled
in interface ExistentialExpansionStrategy
isSatisfied
protected AbstractExpansionStrategy.SatType isSatisfied(AtLeast atLeast,
Node forNode)
isPermanentSatisfier
protected boolean isPermanentSatisfier(Node forNode,
Node toNode)
containsSubsetOfNUnequalNodes
protected boolean containsSubsetOfNUnequalNodes(Node forNode,
java.util.List<Node> nodes,
int startAt,
java.util.List<Node> selectedNodes,
int cardinality)
expandExistential
protected abstract void expandExistential(AtLeast atLeast,
Node forNode)
- This method performs the actual expansion.