module Expr0:sig..end
type'at =[ `Benum of 'a Bdd.Enum.t | `Bint of 'a Bdd.Int.t | `Bool of 'a Cudd.Bdd.t ]
type'aexpr ='a t
typedt =Cudd.Man.d t
typevt =Cudd.Man.v t
module Bool:sig..end
module Bint:sig..end
module Benum:sig..end
Failure exception in case
of a typing error.val typ_of_expr : ('a, 'b) Bdd.Env.t -> 'b t -> 'a Bdd.Env.typval var : ('a, 'b) Bdd.Env.t -> 'a -> 'b tval ite : 'a Bool.t -> 'a t -> 'a t -> 'a tval eq : ('a, 'b) Bdd.Env.t -> 'b t -> 'b t -> 'b Bool.tval substitute_by_var : ?memo:Cudd.Memo.t ->
('a, 'b) Bdd.Env.t -> 'b t -> ('a * 'a) list -> 'b tval substitute_by_var_list : ?memo:Cudd.Memo.t ->
('a, 'b) Bdd.Env.t ->
'b t list -> ('a * 'a) list -> 'b t list
The new variables should already have been declared
val substitute : ?memo:Cudd.Memo.t ->
('a, 'b) Bdd.Env.t ->
'b t -> ('a * 'b t) list -> 'b tval substitute_list : ?memo:Cudd.Memo.t ->
('a, 'b) Bdd.Env.t ->
'b t list -> ('a * 'b t) list -> 'b t listval cofactor : 'a t -> 'a Cudd.Bdd.t -> 'a tval restrict : 'a t -> 'a Cudd.Bdd.t -> 'a tval tdrestrict : 'a t -> 'a Cudd.Bdd.t -> 'a tcofactor.val support : ('a, 'b) Bdd.Env.t -> 'b t -> 'a PSette.tval support_cond : 'a Cudd.Man.t -> 'a t -> 'a Cudd.Bdd.tval cube_of_bdd : ('a, 'b) Bdd.Env.t -> 'b Cudd.Bdd.t -> 'b Cudd.Bdd.tCudd.Bdd.cube_of_bdd, but keep only the
the values of variables having a determinated value.
Example: the classical Cudd.Bdd.cube_of_bdd could return
b and (x=1 or x=3), whereas cube_of_bdd will return only b in
such a case.
val print : ?print_external_idcondb:(Format.formatter -> int * bool -> unit) ->
('a, 'b) Bdd.Env.t -> Format.formatter -> 'b t -> unitval print_minterm : ?print_external_idcondb:(Format.formatter -> int * bool -> unit) ->
('a, 'b) Bdd.Env.t -> Format.formatter -> Cudd.Man.tbool array -> unitval print_bdd : ?print_external_idcondb:(Format.formatter -> int * bool -> unit) ->
('a, 'b) Bdd.Env.t -> Format.formatter -> 'b Cudd.Bdd.t -> unitval print_idcondb : ?print_external_idcondb:(Format.formatter -> int * bool -> unit) ->
('a, 'b) Bdd.Env.t -> Format.formatter -> int * bool -> unitval print_idcond : ?print_external_idcondb:(Format.formatter -> int * bool -> unit) ->
('a, 'b) Bdd.Env.t -> Format.formatter -> int -> unitmodule O:sig..end