Package openllet.core

Class DependencySet


  • public class DependencySet
    extends java.lang.Object
    DependencySet for concepts and edges in the ABox for backjumping
    Author:
    Evren Sirin
    • Constructor Summary

      Constructors 
      Constructor Description
      DependencySet​(int branch)
      Create a dependency set that _depends on a single _branch
      DependencySet​(java.util.Set<openllet.aterm.ATermAppl> explain)
      Creates a dependency set with no dependency and a set of explanation atoms
      DependencySet​(openllet.aterm.ATermAppl explainAtom)
      Creates a dependency set with no dependency and single explanation atom
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void add​(int b)
      Add the integer value b to this DependencySet.
      DependencySet cache()
      Return a dummy representation of this DependencySet such that this.isIndependent() == this.copyForCache().isIndependent() The returned copy will not be accurate w.r.t. any other function call, e.g.
      boolean contains​(int b)  
      DependencySet copy​(int newBranch)  
      int getBranch()  
      IntSet getDepends()  
      java.util.Set<openllet.aterm.ATermAppl> getExplain()  
      boolean isIndependent()  
      int max()  
      void remove​(int b)
      Remove the integer value b from this DependencySet.
      void removeExplain​(openllet.aterm.ATermAppl assertion)
      Remove explanation sets which contain references to a syntactic assertion
      void setExplain​(java.util.Set<openllet.aterm.ATermAppl> explain)  
      int size()  
      java.lang.String toString()  
      DependencySet union​(java.util.Set<openllet.aterm.ATermAppl> explain, boolean doExplanation)  
      DependencySet union​(DependencySet ds, boolean doExplanation)  
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • _logger

        public static final java.util.logging.Logger _logger
      • EMPTY

        public static final DependencySet EMPTY
        An empty dependency set
      • INDEPENDENT

        public static final DependencySet INDEPENDENT
        Used for assertions that are true by nature, i.e. an _individual always has type owl:Thing
      • ZERO

        public static final IntSet ZERO
      • DUMMY

        public static final DependencySet DUMMY
        A dummy dependency set that is used just to indicate there is a dependency
    • Constructor Detail

      • DependencySet

        public DependencySet​(int branch)
        Create a dependency set that _depends on a single _branch
        Parameters:
        branch - Branch number
      • DependencySet

        public DependencySet​(openllet.aterm.ATermAppl explainAtom)
        Creates a dependency set with no dependency and single explanation atom
        Parameters:
        explainAtom -
      • DependencySet

        public DependencySet​(java.util.Set<openllet.aterm.ATermAppl> explain)
        Creates a dependency set with no dependency and a set of explanation atoms
        Parameters:
        explain -
    • Method Detail

      • copy

        public DependencySet copy​(int newBranch)
        Parameters:
        newBranch -
        Returns:
        a new DependencySet object with a new _branch number where the IntSet is openllet.shared.hash (changing one will change the other).
      • contains

        public boolean contains​(int b)
        Parameters:
        b -
        Returns:
        true if b is in this set.
      • add

        public void add​(int b)
        Add the integer value b to this DependencySet.
        Parameters:
        b -
      • remove

        public void remove​(int b)
        Remove the integer value b from this DependencySet.
        Parameters:
        b -
      • isIndependent

        public boolean isIndependent()
        Returns:
        true if there is no dependency on a non-deterministic _branch
      • getBranch

        public int getBranch()
        Returns:
        the _branch number when the dependency set was created
      • size

        public int size()
        Returns:
        the number of elements in this set.
      • max

        public int max()
        Returns:
        the maximum value in this set.
      • union

        public DependencySet union​(DependencySet ds,
                                   boolean doExplanation)
        Parameters:
        ds -
        doExplanation -
        Returns:
        a new DependencySet and all the elements of this and ds.
      • union

        public DependencySet union​(java.util.Set<openllet.aterm.ATermAppl> explain,
                                   boolean doExplanation)
        Parameters:
        explain -
        doExplanation -
        Returns:
        the union as dependencySet
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • removeExplain

        public void removeExplain​(openllet.aterm.ATermAppl assertion)
        Remove explanation sets which contain references to a syntactic assertion
        Parameters:
        assertion -
      • getDepends

        public IntSet getDepends()
      • setExplain

        public void setExplain​(java.util.Set<openllet.aterm.ATermAppl> explain)
        Parameters:
        explain - the explain to set
      • getExplain

        public java.util.Set<openllet.aterm.ATermAppl> getExplain()
        Returns:
        the set of explanations associated with this DependencySet.
      • cache

        public DependencySet cache()
        Return a dummy representation of this DependencySet such that this.isIndependent() == this.copyForCache().isIndependent() The returned copy will not be accurate w.r.t. any other function call, e.g. contains(int) for the copy will return different results for the copy. This function does not create a new DependencySet object so will not require additional memory. Caching this copy is more appropriate so we don't waste space for storing the actual dependency set or the explanation which are not used in caches anyway.
        Returns:
        the dummy dependency set, the cache