org.mindswap.pellet.tableau.completion.incremental
Class DependencyIndex

java.lang.Object
  extended by org.mindswap.pellet.tableau.completion.incremental.DependencyIndex

public class DependencyIndex
extends java.lang.Object

This is the index structure for maintaining the dependencies between structures in an ABox and the syntactic assertions which caused them to be created. This is used for incremental deletions.

Author:
Christian Halaschek-Wiener

Field Summary
static java.util.logging.Logger log
           
 
Constructor Summary
DependencyIndex(KnowledgeBase kb)
          Default constructor
DependencyIndex(KnowledgeBase kb, DependencyIndex oldIndex)
          Copy constructor
 
Method Summary
 void addBranchAddDependency(Branch branch)
          Add a new branch dependency
 void addCloseBranchDependency(Branch branch, DependencySet ds)
          Add a new branch ds removal dependency
 void addEdgeDependency(Edge edge, DependencySet ds)
          Add a new edge dependency
 void addMergeDependency(aterm.ATermAppl ind, aterm.ATermAppl mergedTo, DependencySet ds)
          Add a new merge dependency
 void addTypeDependency(aterm.ATermAppl ind, aterm.ATermAppl type, DependencySet ds)
          Add a new type dependency
 DependencyEntry getDependencies(aterm.ATermAppl assertion)
           
 void removeBranchDependencies(Branch b)
          Remove branch dependencies - this is needed due to backjumping!
 void removeDependencies(aterm.ATermAppl assertion)
          Remove the dependencies for a given assertion
 void setClashDependencies(Clash clash)
          Set clash dependencies
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

public static final java.util.logging.Logger log
Constructor Detail

DependencyIndex

public DependencyIndex(KnowledgeBase kb)
Default constructor


DependencyIndex

public DependencyIndex(KnowledgeBase kb,
                       DependencyIndex oldIndex)
Copy constructor

Method Detail

getDependencies

public DependencyEntry getDependencies(aterm.ATermAppl assertion)
Parameters:
assertion -
Returns:

addTypeDependency

public void addTypeDependency(aterm.ATermAppl ind,
                              aterm.ATermAppl type,
                              DependencySet ds)
Add a new type dependency

Parameters:
ind -
type -
ds -

addMergeDependency

public void addMergeDependency(aterm.ATermAppl ind,
                               aterm.ATermAppl mergedTo,
                               DependencySet ds)
Add a new merge dependency

Parameters:
ind -
type -
ds -

addEdgeDependency

public void addEdgeDependency(Edge edge,
                              DependencySet ds)
Add a new edge dependency

Parameters:
edge -
ds -

addBranchAddDependency

public void addBranchAddDependency(Branch branch)
Add a new branch dependency

Parameters:
ind -
type -
ds -

addCloseBranchDependency

public void addCloseBranchDependency(Branch branch,
                                     DependencySet ds)
Add a new branch ds removal dependency

Parameters:
ind -
type -
ds -

removeDependencies

public void removeDependencies(aterm.ATermAppl assertion)
Remove the dependencies for a given assertion

Parameters:
assertion -

removeBranchDependencies

public void removeBranchDependencies(Branch b)
Remove branch dependencies - this is needed due to backjumping!

Parameters:
b -

setClashDependencies

public void setClashDependencies(Clash clash)
Set clash dependencies



Copyright © 2004 Evren Sirin. All Rights Reserved.