module Bdd:Finite-type expressions/properties on top of CUDDsig
..end
Higher-level interface relying on Cudd
interface for manipulating
BDDs/MTBDDs:
Bdd.Reg
: manipulating arrays of BDDs as CPU register, including
most ALU (Arithmetic and Logical Unit) operations;Bdd.Int
: signed/unsigned integers encoded as arrays of BDDs;Bdd.Enum
: enumerated types, with management of labels and types (requires Bdd.Env
);Bdd.Output
: outputing BDDs/MTBDDs (low-level)Bdd.Env
: environment defining finite-type variables and user-defined enumerated types, and mapping them to BDDs indices;Bdd.Expr0
: general finite-type expressions;Bdd.Domain0
: Boolean formula seen as an (abstract) domainBdd.Expr1
, Bdd.Domain1
: extends Bdd.Expr0
and Bdd.Domain0
by incorporating
normalized environments.Output
: Output of BDDs/MTBDDsmodule Output:sig
..end
Normalform
: Utility types and functions for normalizationmodule Normalform:sig
..end
Reg
: Bounded unsigned integer expressions with BDDsmodule Reg:sig
..end
Env
: Normalized managers/environmentsmodule Env:sig
..end
Int
: Bounded integer expressions with BDDsmodule Int:sig
..end
Enum
: Enumerated expressions with BDDsmodule Enum:sig
..end
Cond
: Normalized condition environments (base module)module Cond:sig
..end
Decompose
: Separation of Boolean formula in purely Boolean/conditional partsmodule Decompose:sig
..end
Expr0
: Finite-type expressions with BDDsmodule Expr0:sig
..end
Expr1
: Finite-type expressions with normalized environmentsmodule Expr1:sig
..end
Domain0
: Boolean (abstract) domainmodule Domain0:sig
..end
Domain1
: Boolean (abstract) domain with normalized environmentmodule Domain1:sig
..end