SableJBDD.bdd.internal
Class PhantomUniqueTable

java.lang.Object
  extended bySableJBDD.cache.CacheProfiler
      extended bySableJBDD.bdd.internal.PhantomUniqueTable
All Implemented Interfaces:
Profiling, UniqueTable

public class PhantomUniqueTable
extends CacheProfiler
implements UniqueTable

A phantom unique table implements UniqueTable interface, and can recycle nodes not reachable from other programs other than this unique table.

Implementation details:


Field Summary
 
Fields inherited from interface SableJBDD.bdd.util.Profiling
PROFILING
 
Constructor Summary
PhantomUniqueTable(int inittablesize, int initpoolsize)
           
 
Method Summary
 JBddNode findOrCreate(JBddVariable var, JBddNode low, JBddNode high)
          Finds or creates a BddNode by a triple key.
 
Methods inherited from class SableJBDD.cache.CacheProfiler
accesses, hitRate, hits, misses, missRate, reportStatistics, steps
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface SableJBDD.bdd.util.Profiling
reportStatistics
 

Constructor Detail

PhantomUniqueTable

public PhantomUniqueTable(int inittablesize,
                          int initpoolsize)
Method Detail

findOrCreate

public final JBddNode findOrCreate(JBddVariable var,
                                   JBddNode low,
                                   JBddNode high)
Finds or creates a BddNode by a triple key.

Specified by:
findOrCreate in interface UniqueTable
Parameters:
var - the BDD variable
low - the false branch
high - the true branch
Returns:
a canonical internal BDD node