module Bool: sig
.. end
type 'a
t = 'a Cudd.Bdd.t
type
dt = Cudd.Man.d t
type
vt = Cudd.Man.v t
val of_expr : 'a Bdd.Expr0.expr -> 'a t
val to_expr : 'a t -> 'a Bdd.Expr0.expr
val dtrue : ('a, 'b) Bdd.Env.t -> 'b t
val dfalse : ('a, 'b) Bdd.Env.t -> 'b t
val of_bool : ('a, 'b) Bdd.Env.t -> bool -> 'b t
val var : ('a, 'b) Bdd.Env.t -> 'a -> 'b t
val dnot : ('a, 'b) Bdd.Env.t -> 'b t -> 'b t
val dand : ('a, 'b) Bdd.Env.t ->
'b t -> 'b t -> 'b t
val dor : ('a, 'b) Bdd.Env.t ->
'b t -> 'b t -> 'b t
not
, and
and or
(use of 'd' prefix because of conflict with OCaml
keywords)
val xor : ('a, 'b) Bdd.Env.t ->
'b t -> 'b t -> 'b t
val nand : ('a, 'b) Bdd.Env.t ->
'b t -> 'b t -> 'b t
val nor : ('a, 'b) Bdd.Env.t ->
'b t -> 'b t -> 'b t
val nxor : ('a, 'b) Bdd.Env.t ->
'b t -> 'b t -> 'b t
Exclusive or, not and, nor or and not xor
val leq : ('a, 'b) Bdd.Env.t ->
'b t -> 'b t -> 'b t
Implication
val eq : ('a, 'b) Bdd.Env.t ->
'b t -> 'b t -> 'b t
Same as nxor
val ite : ('a, 'b) Bdd.Env.t ->
'b t ->
'b t -> 'b t -> 'b t
If-then-else
val is_true : ('a, 'b) Bdd.Env.t -> 'b t -> bool
val is_false : ('a, 'b) Bdd.Env.t -> 'b t -> bool
val is_cst : ('a, 'b) Bdd.Env.t -> 'b t -> bool
val is_eq : ('a, 'b) Bdd.Env.t -> 'b t -> 'b t -> bool
val is_leq : ('a, 'b) Bdd.Env.t -> 'b t -> 'b t -> bool
val is_and_false : ('a, 'b) Bdd.Env.t -> 'b t -> 'b t -> bool
val exist : ('a, 'b) Bdd.Env.t -> 'a list -> 'b t -> 'b t
val forall : ('a, 'b) Bdd.Env.t -> 'a list -> 'b t -> 'b t
val cofactor : 'a t -> 'a t -> 'a t
val restrict : 'a t -> 'a t -> 'a t
val tdrestrict : 'a t -> 'a t -> 'a t
val permute : ?memo:Cudd.Memo.t -> 'a t -> int array -> 'a t
val varmap : 'a t -> 'a t
val substitute_by_var : ?memo:Cudd.Memo.t ->
('a, 'b) Bdd.Env.t ->
'b t -> ('a * 'a) list -> 'b t
val substitute : ?memo:Cudd.Memo.t ->
('a, 'b) Bdd.Env.t ->
'b t -> ('a * 'b Bdd.Expr0.expr) list -> 'b t
val print : ?print_external_idcondb:(Format.formatter -> int * bool -> unit) ->
('a, 'b) Bdd.Env.t -> Format.formatter -> 'b t -> unit