sig
  type 'a t = ('Cond.t, 'Expr1.Bool.t) Bdd.Cond.value
  val of_expr0 :
    ?normalize:bool ->
    ?reduce:bool ->
    ?careset:bool ->
    'Env.t -> 'Cond.t -> 'Expr0.Bool.t -> 'Expr2.Bool.t
  val of_expr1 :
    ?normalize:bool ->
    ?reduce:bool ->
    ?careset:bool -> 'Cond.t -> 'Expr1.Bool.t -> 'Expr2.Bool.t
  val get_env : 'Expr2.Bool.t -> 'Env.t
  val get_cond : 'Expr2.Bool.t -> 'Cond.t
  val to_expr0 : 'Expr2.Bool.t -> 'Expr0.Bool.t
  val to_expr1 : 'Expr2.Bool.t -> 'Expr1.Bool.t
  val of_expr : 'Expr2.expr -> 'Expr2.Bool.t
  val to_expr : 'Expr2.Bool.t -> 'Expr2.expr
  val extend_environment : 'Expr2.Bool.t -> 'Env.t -> 'Expr2.Bool.t
  val is_false : 'Expr2.Bool.t -> bool
  val is_true : 'Expr2.Bool.t -> bool
  val print : Format.formatter -> 'Expr2.Bool.t -> unit
end