|
|||||||||
| Home >> All >> org >> sf >> [ javabdd overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
org.sf.javabdd
Class JavaFactory

java.lang.Objectorg.sf.javabdd.BDDFactory
org.sf.javabdd.JavaFactory
- public class JavaFactory
- extends BDDFactory
This is a 100% Java implementation of the BDD factory. It is based on the C source code for BuDDy. As such, the implementation is very ugly, but it works. Like BuDDy, it uses reference counting scheme for garbage collection.
- Version:
- $Id: JavaFactory.java,v 1.10 2003/11/01 00:45:42 joewhaley Exp $
| Nested Class Summary | |
(package private) class |
JavaFactory.bdd
Wrapper for the BDD index number used internally in the representation. |
(package private) static class |
JavaFactory.BddCache
|
(package private) static class |
JavaFactory.BddCacheData
|
(package private) static class |
JavaFactory.BddCacheDataD
|
(package private) static class |
JavaFactory.BddCacheDataI
|
(package private) static class |
JavaFactory.bddCacheStat
|
(package private) class |
JavaFactory.bddDomain
|
(package private) static class |
JavaFactory.bddGbcStat
|
(package private) static class |
JavaFactory.BddNode
Actual data structure for each BDD node. |
(package private) class |
JavaFactory.bddPair
|
(package private) static class |
JavaFactory.BddTree
|
(package private) class |
JavaFactory.bvec
|
(package private) static class |
JavaFactory.imatrix
|
(package private) static class |
JavaFactory.JavaBDDException
|
(package private) static class |
JavaFactory.levelData
|
(package private) static class |
JavaFactory.LoadHash
|
(package private) static class |
JavaFactory.sizePair
|
| Nested classes inherited from class org.sf.javabdd.BDDFactory |
BDDFactory.BDDOp, BDDFactory.ReorderMethod |
| Field Summary | |
(package private) byte[] |
allsatProfile
|
(package private) JavaFactory.BddCache |
appexcache
|
(package private) int |
appexid
|
(package private) int |
appexop
|
(package private) JavaFactory.BddCache |
applycache
|
(package private) int |
applyop
|
(package private) static int |
BDD_BREAK
|
(package private) static int |
BDD_DECVNUM
|
(package private) static int |
BDD_DEREF
|
(package private) static int |
BDD_ERRNUM
|
(package private) static int |
BDD_FILE
|
(package private) static int |
BDD_FORMAT
|
(package private) static int |
BDD_ILLBDD
|
(package private) static int |
BDD_MEMORY
|
(package private) static int |
BDD_NODENUM
|
(package private) static int |
BDD_NODES
|
(package private) static int |
BDD_OP
|
(package private) static int |
BDD_ORDER
|
(package private) static int |
BDD_RANGE
|
(package private) static int |
BDD_REORDER_FIXED
|
(package private) static int |
BDD_REORDER_FREE
|
(package private) static int |
BDD_REORDER_NONE
|
(package private) static int |
BDD_REORDER_RANDOM
|
(package private) static int |
BDD_REORDER_SIFT
|
(package private) static int |
BDD_REORDER_SIFTITE
|
(package private) static int |
BDD_REORDER_WIN2
|
(package private) static int |
BDD_REORDER_WIN2ITE
|
(package private) static int |
BDD_REORDER_WIN3
|
(package private) static int |
BDD_REORDER_WIN3ITE
|
(package private) static int |
BDD_REPLACE
|
(package private) static int |
BDD_RUNNING
|
(package private) static int |
BDD_SIZE
|
(package private) static int |
BDD_VAR
|
(package private) static int |
BDD_VARBLK
|
(package private) static int |
BDD_VARNUM
|
(package private) static int |
BDD_VARSET
|
(package private) JavaFactory.bddCacheStat |
bddcachestats
|
(package private) int |
bdderrorcond
|
(package private) static int |
bddfalse
|
(package private) int |
bddfreenum
|
(package private) int |
bddfreepos
|
(package private) int[] |
bddlevel2var
|
(package private) int |
bddmaxnodeincrease
|
(package private) int |
bddmaxnodesize
|
(package private) JavaFactory.BddNode[] |
bddnodes
|
(package private) int |
bddnodesize
|
(package private) static int |
BDDONE
|
(package private) static int |
bddop_and
|
(package private) static int |
bddop_biimp
|
(package private) static int |
bddop_diff
|
(package private) static int |
bddop_imp
|
(package private) static int |
bddop_invimp
|
(package private) static int |
bddop_less
|
(package private) static int |
bddop_nand
|
(package private) static int |
bddop_nor
|
(package private) static int |
bddop_not
|
(package private) static int |
bddop_or
|
(package private) static int |
bddop_simplify
|
(package private) static int |
bddop_xor
|
(package private) int |
bddproduced
|
(package private) int[] |
bddrefstack
|
(package private) int |
bddrefstacktop
|
(package private) int |
bddreordermethod
|
(package private) int |
bddreordertimes
|
(package private) int |
bddresized
|
(package private) boolean |
bddrunning
|
(package private) static int |
bddtrue
|
(package private) int[] |
bddvar2level
|
(package private) int |
bddvarnum
|
(package private) int[] |
bddvarset
|
(package private) static int |
BDDZERO
|
(package private) int |
blockid
|
(package private) static int |
BVEC_DIVZERO
|
(package private) static int |
BVEC_SHIFT
|
(package private) static int |
BVEC_SIZE
|
(package private) static long |
c1
|
(package private) static int |
CACHEID_APPAL
|
(package private) static int |
CACHEID_APPEX
|
(package private) static int |
CACHEID_APPUN
|
(package private) static int |
CACHEID_COMPOSE
|
(package private) static int |
CACHEID_CONSTRAIN
|
(package private) static int |
CACHEID_EXIST
|
(package private) static int |
CACHEID_FORALL
|
(package private) static int |
CACHEID_PATHCOU
|
(package private) static int |
CACHEID_REPLACE
|
(package private) static int |
CACHEID_RESTRICT
|
(package private) static int |
CACHEID_SATCOU
|
(package private) static int |
CACHEID_SATCOULN
|
(package private) static int |
CACHEID_UNIQUE
|
(package private) static int |
CACHEID_VECCOMPOSE
|
(package private) int |
cacheratio
|
(package private) int |
cachesize
|
(package private) static boolean |
CACHESTATS
|
(package private) static int |
CHECKTIMES
|
(package private) int |
composelevel
|
(package private) JavaFactory.BddCache |
countcache
|
(package private) static int |
DEFAULTMAXNODEINC
|
(package private) static java.lang.String[] |
errorstrings
|
(package private) int[] |
extroots
|
(package private) int |
extrootsize
|
(package private) int |
firstReorder
|
(package private) long |
gbcclock
|
(package private) int |
gbcollectnum
|
(package private) JavaFactory.imatrix |
iactmtx
|
(package private) static int |
INT_MAX
|
(package private) JavaFactory.BddCache |
itecache
|
(package private) JavaFactory.levelData[] |
levels
|
(package private) int |
lh_freepos
|
(package private) int |
lh_nodenum
|
(package private) JavaFactory.LoadHash[] |
lh_table
|
(package private) int[] |
loadvar2level
|
(package private) static double |
M_LN2
|
(package private) static int |
MAXVAR
|
(package private) int |
minfreenodes
|
(package private) JavaFactory.BddCache |
misccache
|
(package private) int |
miscid
|
(package private) static int |
OPERATOR_NUM
|
(package private) static int[][] |
oprres
|
(package private) JavaFactory.bddPair |
pairs
|
(package private) int |
pairsid
|
(package private) JavaFactory.BddCache |
quantcache
|
(package private) int |
quantid
|
(package private) int |
quantlast
|
(package private) int[] |
quantvarset
|
(package private) int |
quantvarsetID
|
(package private) int |
reorderdisabled
|
(package private) JavaFactory.BddCache |
replacecache
|
(package private) int |
replaceid
|
(package private) int |
replacelast
|
(package private) int[] |
replacepair
|
(package private) boolean |
resizedInMakenode
|
(package private) static java.util.Random |
rng
|
(package private) int |
satPolarity
|
(package private) int |
supportID
|
(package private) int |
supportMax
|
(package private) int |
supportMin
|
(package private) int[] |
supportSet
|
(package private) static int |
supportSize
|
static boolean |
SWAPCOUNT
|
(package private) java.util.StringTokenizer |
tokenizer
|
(package private) int |
usednodes_nextreorder
|
(package private) int |
usednum_after
|
(package private) int |
usednum_before
|
(package private) JavaFactory.BddTree |
vartree
|
(package private) int |
verbose
|
| Fields inherited from class org.sf.javabdd.BDDFactory |
and, biimp, diff, domain, fdvarnum, firstbddvar, imp, invimp, less, nand, nor, or, REORDER_NONE, REORDER_RANDOM, REORDER_SIFT, REORDER_SIFTITE, REORDER_WIN2, REORDER_WIN2ITE, REORDER_WIN3, REORDER_WIN3ITE, xor |
| Constructor Summary | |
JavaFactory()
|
|
| Method Summary | |
(package private) static void |
_assert(boolean b)
|
(package private) void |
addDependencies(boolean[] dep)
|
(package private) void |
addref_rec(int r,
boolean[] dep)
|
void |
addVarBlock(BDD var,
boolean fixed)
Adds a new variable block for reordering. |
void |
addVarBlock(int first,
int last,
boolean fixed)
Adds a new variable block for reordering. |
(package private) void |
allsat_rec(int r,
java.util.List result)
|
(package private) static int |
APPEXHASH(int l,
int r,
int op)
|
(package private) int |
apply_rec(int l,
int r)
|
(package private) static int |
APPLYHASH(int l,
int r,
int op)
|
(package private) int |
appquant_rec(int l,
int r)
|
void |
autoReorder(BDDFactory.ReorderMethod method)
Enables automatic reordering. |
void |
autoReorder(BDDFactory.ReorderMethod method,
int max)
Enables automatic reordering with the given (maximum) number of reorderings. |
(package private) int |
bdd_addref(int root)
|
(package private) int |
bdd_addvarblock(int[] v,
boolean fixed)
|
(package private) void |
bdd_allsat(int r,
java.util.List result)
|
(package private) int |
bdd_anodecount(int[] r)
|
(package private) int |
bdd_appall(int l,
int r,
int opr,
int var)
|
(package private) int |
bdd_appex(int l,
int r,
int opr,
int var)
|
(package private) int |
bdd_apply(int l,
int r,
int op)
|
(package private) int |
bdd_appuni(int l,
int r,
int opr,
int var)
|
(package private) int |
bdd_autoreorder_times(int method,
int num)
|
(package private) int |
bdd_autoreorder(int method)
|
(package private) void |
bdd_checkreorder()
|
(package private) void |
bdd_clrvarblocks()
|
(package private) int |
bdd_compose(int f,
int g,
int var)
|
(package private) int |
bdd_constrain(int f,
int c)
|
(package private) int |
bdd_correctify(int level,
int l,
int r)
|
(package private) void |
bdd_default_gbchandler(boolean pre,
JavaFactory.bddGbcStat s)
|
(package private) void |
bdd_default_reohandler(int prestate)
|
(package private) int |
bdd_delref(int root)
|
(package private) void |
bdd_disable_reorder()
|
(package private) void |
bdd_done()
|
(package private) void |
bdd_enable_reorder()
|
(package private) static int |
bdd_error(int v)
|
(package private) int |
bdd_exist(int r,
int var)
|
(package private) int |
bdd_forall(int r,
int var)
|
(package private) void |
bdd_fprintall(java.io.PrintStream out)
|
(package private) void |
bdd_fprintorder(java.io.PrintStream ofile)
|
(package private) void |
bdd_fprintstat(java.io.PrintStream out)
|
(package private) void |
bdd_fprinttable(java.io.PrintStream out,
int r)
|
(package private) int |
bdd_fullsatone(int r)
|
(package private) void |
bdd_gbc_rehash()
|
(package private) void |
bdd_gbc()
|
(package private) int |
bdd_getallocnum()
|
(package private) int |
bdd_getnodenum()
|
(package private) int |
bdd_high(int root)
|
(package private) int |
bdd_intaddvarblock(int first,
int last,
boolean fixed)
|
(package private) int |
bdd_ite(int f,
int g,
int h)
|
(package private) int |
bdd_ithvar(int var)
|
(package private) int |
bdd_load(java.io.DataInput ifile)
|
(package private) int |
bdd_loaddata(java.io.DataInput ifile)
|
(package private) int |
bdd_low(int root)
|
(package private) int |
bdd_makenode(int level,
int low,
int high)
|
(package private) void |
bdd_mark_upto(int i,
int level)
|
(package private) void |
bdd_mark(int i)
|
(package private) void |
bdd_markcount(int i,
int[] cou)
|
(package private) int |
bdd_nithvar(int var)
|
(package private) int |
bdd_nodecount(int r)
|
(package private) int |
bdd_noderesize(boolean doRehash)
|
(package private) int |
bdd_not(int r)
|
(package private) void |
bdd_operator_done()
|
(package private) void |
bdd_operator_init(int cachesize)
|
(package private) void |
bdd_operator_noderesize()
|
(package private) void |
bdd_operator_reset()
|
(package private) void |
bdd_operator_varresize()
|
(package private) void |
bdd_pairs_done()
|
(package private) void |
bdd_pairs_init()
|
(package private) int |
bdd_pairs_resize(int oldsize,
int newsize)
|
(package private) void |
bdd_pairs_vardown(int level)
|
(package private) double |
bdd_pathcount_rec(int r)
|
(package private) double |
bdd_pathcount(int r)
|
(package private) int |
bdd_prime_gte(int src)
External interface |
(package private) int |
bdd_prime_lte(int src)
|
(package private) void |
bdd_register_pair(JavaFactory.bddPair p)
|
(package private) int |
bdd_relprod(int a,
int b,
int var)
|
(package private) void |
bdd_reorder_auto()
|
(package private) void |
bdd_reorder_done()
|
(package private) int |
bdd_reorder_gain()
|
(package private) void |
bdd_reorder_init()
|
(package private) boolean |
bdd_reorder_ready()
|
(package private) int |
bdd_reorder_verbose(int v)
|
(package private) void |
bdd_reorder(int method)
|
(package private) int |
bdd_replace(int r,
JavaFactory.bddPair pair)
|
(package private) void |
bdd_resetpair(JavaFactory.bddPair p)
|
(package private) int |
bdd_restrict(int r,
int var)
|
(package private) double |
bdd_satcount(int r)
|
(package private) double |
bdd_satcountset(int r,
int varset)
|
(package private) int |
bdd_satone(int r)
|
(package private) int |
bdd_satoneset(int r,
int var,
int pol)
|
(package private) void |
bdd_save_rec(java.io.DataOutput out,
int root)
|
(package private) void |
bdd_save(java.io.DataOutput out,
int r)
|
(package private) void |
bdd_setbddpair(JavaFactory.bddPair pair,
int oldvar,
int newvar)
|
(package private) int |
bdd_setcacheratio(int r)
|
(package private) int |
bdd_setmaxincrease(int size)
|
(package private) int |
bdd_setmaxnodenum(int size)
|
(package private) int |
bdd_setminfreenodes(int mf)
|
(package private) void |
bdd_setpair(JavaFactory.bddPair pair,
int oldvar,
int newvar)
|
(package private) int |
bdd_setvarnum(int num)
|
(package private) void |
bdd_setvarorder(int[] neworder)
|
(package private) int |
bdd_simplify(int f,
int d)
|
(package private) int |
bdd_support(int r)
|
(package private) int |
bdd_swapvar(int v1,
int v2)
|
(package private) int |
bdd_unique(int r,
int var)
|
(package private) void |
bdd_unmark_upto(int i,
int level)
|
(package private) void |
bdd_unmark(int i)
|
(package private) int |
bdd_var(int root)
|
(package private) void |
bdd_varblockall()
|
(package private) int |
bdd_varnum()
|
(package private) int[] |
bdd_varprofile(int r)
|
(package private) int |
bdd_veccompose(int f,
JavaFactory.bddPair pair)
|
(package private) void |
BddCache_done(JavaFactory.BddCache cache)
|
(package private) JavaFactory.BddCacheDataD |
BddCache_lookupD(JavaFactory.BddCache cache,
int hash)
|
(package private) JavaFactory.BddCacheDataI |
BddCache_lookupI(JavaFactory.BddCache cache,
int hash)
|
(package private) void |
BddCache_reset(JavaFactory.BddCache cache)
|
(package private) int |
BddCache_resize(JavaFactory.BddCache cache,
int newsize)
|
(package private) JavaFactory.BddCache |
BddCacheD_init(int size)
|
(package private) JavaFactory.BddCache |
BddCacheI_init(int size)
|
(package private) JavaFactory.BddTree |
bddtree_addrange_rec(JavaFactory.BddTree t,
JavaFactory.BddTree prev,
int first,
int last,
boolean fixed,
int id)
|
(package private) JavaFactory.BddTree |
bddtree_addrange(JavaFactory.BddTree t,
int first,
int last,
boolean fixed,
int id)
|
(package private) void |
bddtree_del(JavaFactory.BddTree t)
|
(package private) JavaFactory.BddTree |
bddtree_new(int id)
|
(package private) static boolean |
BitIsSet(int src,
int b)
|
(package private) void |
blockdown(JavaFactory.BddTree left)
|
(package private) void |
CHECK(int r)
|
(package private) void |
CHECKa(int r,
int x)
|
(package private) void |
checkresize()
|
void |
clearVarBlocks()
Clears all the variable blocks that have been defined by calls to addVarBlock. |
(package private) long |
clock()
|
(package private) int |
compose_rec(int f,
int g)
|
(package private) static int |
COMPOSEHASH(int f,
int g)
|
(package private) int |
constrain_rec(int f,
int c)
|
(package private) static int |
CONSTRAINHASH(int f,
int c)
|
protected BDDBitVector |
createBitVector(int a)
|
protected BDDDomain |
createDomain(int a,
long b)
Implementors must implement this factory method to create BDDDomain objects of the correct type. |
(package private) void |
DECREF(int n)
|
void |
disableReorder()
Disable automatic reordering until enableReorder is called. |
void |
done()
Resets the BDD package. |
void |
enableReorder()
Enable automatic reordering after a call to disableReorder. |
(package private) static void |
free(java.lang.Object o)
|
(package private) int |
fullsatone_rec(int r)
|
(package private) void |
gbc_handler(boolean pre,
JavaFactory.bddGbcStat s)
|
int |
getAllocNum()
Get the number of allocated nodes. |
int |
getNodeNum()
Get the number of active nodes in use. |
BDDFactory.ReorderMethod |
getReorderMethod()
Returns the current reorder method as defined by autoReorder. |
int |
getReorderTimes()
Returns the number of allowed reorderings left. |
(package private) static boolean |
hasEasyFactors(int src)
Basic prime searching stuff |
(package private) static boolean |
hasFactor(int src,
int n)
|
(package private) boolean |
HASREF(int n)
|
(package private) int |
HIGH(int r)
|
(package private) void |
imatrixDelete(JavaFactory.imatrix mtx)
  |
JAVADOC