org.mindswap.pellet.tableau.cache
Interface CachedNode

All Known Implementing Classes:
CachedConceptNode, CachedConstantNode, Individual

public interface CachedNode

Title:

Description: Represent the cached information for a concept or an individual. For concepts this represents the root node of the tableau completion graph built to check the satisfiability of the concept. For individuals, this is the individual itself (Individual implements this interface}. The cached node for concepts may be incomplete if the satisfiability status was cached when the satisfiability of another concept was being computed. Incomplete cached nodes will not have any information regarding types or edges.

Copyright: Copyright (c) 2008

Company: Clark & Parsia, LLC.

Author:
Evren Sirin

Method Summary
 java.util.Map<aterm.ATermAppl,DependencySet> getDepends()
          Returns the types and their dependencies for this node.
 EdgeList getInEdges()
          Returns the incoming edges of this node.
 aterm.ATermAppl getName()
          Returns the name of this node.
 EdgeList getOutEdges()
          Returns the outgoing edges of this node.
 boolean hasRNeighbor(Role role)
          Checks if this node is connected to another node with the given role (or one of its subproperties).
 boolean isBottom()
          Returns if this is the cached node for TOP concept.
 boolean isComplete()
          Returns if this cached node is complete.
 boolean isIndependent()
          Returns if this node was cached without any dependency to a non-deterministic branch.
 boolean isNamedIndividual()
          Returns if this node represent a named individual (not an anonymous individual or a concept node)
 boolean isTop()
          Returns if this is the cached node for BOTTOM concept.
 

Method Detail

isComplete

boolean isComplete()
Returns if this cached node is complete.

Returns:
true if this cached node is complete

isTop

boolean isTop()
Returns if this is the cached node for BOTTOM concept.

Returns:
true if this is the cached node for BOTTOM concept

isBottom

boolean isBottom()
Returns if this is the cached node for TOP concept.

Returns:
true if this is the cached node for TOP concept

getDepends

java.util.Map<aterm.ATermAppl,DependencySet> getDepends()
Returns the types and their dependencies for this node.

Returns:
a map from concepts to dependency sets

getOutEdges

EdgeList getOutEdges()
Returns the outgoing edges of this node.

Returns:
Outgoing edges of this node

getInEdges

EdgeList getInEdges()
Returns the incoming edges of this node.

Returns:
Incoming edges of this node

hasRNeighbor

boolean hasRNeighbor(Role role)
Checks if this node is connected to another node with the given role (or one of its subproperties). The node may have an incoming edge with the inverse of this role which would count as an r-neighbor.

Returns:
Outgoing edges of this node

getName

aterm.ATermAppl getName()
Returns the name of this node. For cached concept nodes this is the name of the concept.

Returns:
Name of this node

isNamedIndividual

boolean isNamedIndividual()
Returns if this node represent a named individual (not an anonymous individual or a concept node)

Returns:
If this node represent a named individual

isIndependent

boolean isIndependent()
Returns if this node was cached without any dependency to a non-deterministic branch. In the presence of nominals, when we are checking the satisfiability of a concept the root node may be merged to a nominal node and that merge may be due to a non-deterministic branch. In such cases the types and edges that are cached do not necessarily show types and edges that will exist in every clash-free tableau completion.

Returns:
If this node was cached without any dependency to a non-deterministic branch


Copyright © 2004 Evren Sirin. All Rights Reserved.