Versions in this module Expand all Collapse all v0 v0.1.0 Jun 15, 2026 Changes in this version + type BDD struct + func New(numVars int, pool *memory.Pool) *BDD + func (b *BDD) AddRef(f NodeID) NodeID + func (b *BDD) AllSat(f NodeID, handler func(assign []bool)) + func (b *BDD) And(f, g NodeID) NodeID + func (b *BDD) AnodeCount(roots []NodeID) int + func (b *BDD) AppAll(f, g NodeID, op OpCode, vars []int32) NodeID + func (b *BDD) AppAllBDD(f, g NodeID, op OpCode, varset NodeID) NodeID + func (b *BDD) AppEx(f, g NodeID, op OpCode, vars []int32) NodeID + func (b *BDD) AppExBDD(f, g NodeID, op OpCode, varset NodeID) NodeID + func (b *BDD) AppUni(l, r NodeID, varset NodeID, op OpCode) NodeID + func (b *BDD) Apply(f, g NodeID, op OpCode) NodeID + func (b *BDD) BuildCube(vars []int32, positive []bool) NodeID + func (b *BDD) Compose(f NodeID, v int32, g NodeID) NodeID + func (b *BDD) Constrain(f, c NodeID) NodeID + func (b *BDD) DelRef(f NodeID) + func (b *BDD) Diff(f, g NodeID) NodeID + func (b *BDD) Done() + func (b *BDD) Equiv(f, g NodeID) NodeID + func (b *BDD) ExistSet(f, varset NodeID) NodeID + func (b *BDD) Exists(f NodeID, v int32) NodeID + func (b *BDD) ExistsAll(f NodeID, vars []int32) NodeID + func (b *BDD) ExtVarNum(n int32) int32 + func (b *BDD) ForAll(f NodeID, v int32) NodeID + func (b *BDD) ForAllSet(f, varset NodeID) NodeID + func (b *BDD) ForAllVars(f NodeID, vars []int32) NodeID + func (b *BDD) FprintDot(file *os.File, f NodeID) + func (b *BDD) FullSatOne(f NodeID) []bool + func (b *BDD) FullSatOneBDD(f NodeID) NodeID + func (b *BDD) High(f NodeID) NodeID + func (b *BDD) IBuildCube(value int, width int, vars []int32) NodeID + func (b *BDD) ITE(f, g, h NodeID) NodeID + func (b *BDD) Implies(f, g NodeID) NodeID + func (b *BDD) InvImp(f, g NodeID) NodeID + func (b *BDD) IsRunning() bool + func (b *BDD) Less(f, g NodeID) NodeID + func (b *BDD) Load(r io.Reader) (NodeID, error) + func (b *BDD) Low(f NodeID) NodeID + func (b *BDD) MakeSet(vars []int32) NodeID + func (b *BDD) Nand(f, g NodeID) NodeID + func (b *BDD) NewPair() *Pair + func (b *BDD) Nithvar(v int32) NodeID + func (b *BDD) NodeCount() int + func (b *BDD) Nor(f, g NodeID) NodeID + func (b *BDD) Not(f NodeID) NodeID + func (b *BDD) Or(f, g NodeID) NodeID + func (b *BDD) PathCount(f NodeID) float64 + func (b *BDD) PrintDot(f NodeID) + func (b *BDD) PrintTable(f NodeID) string + func (b *BDD) RefCount(f NodeID) int32 + func (b *BDD) RelProd(f, g NodeID, vars []int32) NodeID + func (b *BDD) RelProdBDD(f, g NodeID, varset NodeID) NodeID + func (b *BDD) Replace(f NodeID, p *Pair) NodeID + func (b *BDD) Restrict(f NodeID, v int32, value bool) NodeID + func (b *BDD) RestrictBDD(f, c NodeID) NodeID + func (b *BDD) SatCountDouble(f NodeID) float64 + func (b *BDD) SatCountLn(f NodeID) float64 + func (b *BDD) SatCountLnSet(f NodeID, vars []int32) float64 + func (b *BDD) SatCountSet(f NodeID, vars []int32) uint64 + func (b *BDD) SatOne(f NodeID) NodeID + func (b *BDD) SatOneSet(f, varset NodeID, pol bool) NodeID + func (b *BDD) SatisfyCount(f NodeID) uint64 + func (b *BDD) SatisfyOne(f NodeID) []bool + func (b *BDD) Save(w io.Writer, f NodeID) error + func (b *BDD) ScanSet(f NodeID) []int32 + func (b *BDD) SetCacheRatio(ratio int) + func (b *BDD) SetVarNum(num int32) + func (b *BDD) Simplify(f, d NodeID) NodeID + func (b *BDD) Stats() Stats + func (b *BDD) Support(f NodeID) []int32 + func (b *BDD) SupportBDD(f NodeID) NodeID + func (b *BDD) SwapVar(v1, v2 int32) func(oldIdx NodeID) NodeID + func (b *BDD) ToCNF(f NodeID) string + func (b *BDD) ToDNF(f NodeID) string + func (b *BDD) ToFormula(f NodeID) string + func (b *BDD) Unique(f, varset NodeID) NodeID + func (b *BDD) Var(v int32) NodeID + func (b *BDD) VarCount() int32 + func (b *BDD) VarOf(f NodeID) int32 + func (b *BDD) VarProfile(f NodeID) []int32 + func (b *BDD) VecCompose(f NodeID, p *Pair) NodeID + func (b *BDD) Xor(f, g NodeID) NodeID + func (bd *BDD) Sift() + type NodeID int32 + const False + const True + type OpCode int32 + const OpAnd + const OpBiimp + const OpConstrain + const OpDiff + const OpImp + const OpInvImp + const OpLess + const OpNand + const OpNor + const OpOr + const OpSimplify + const OpXor + type Pair struct + func (p *Pair) Reset() + func (p *Pair) Set(oldVar int32, newVal NodeID) + func (p *Pair) SetAll(oldVars []int32, newVals []NodeID, n int) + func (p *Pair) SetVar(oldVar, newVar int32) + func (p *Pair) SetVars(oldVars, newVars []int32, n int) + type Stats struct + EdgesToFalse int + EdgesToTrue int + NodeCount int + PerVar [256]int + VarCount int