sig
  val tcons0_array_of_cubecond :
    ('a, [> 'Bddapron.Env.typ ] as 'b, [> 'Bddapron.Env.typdef ] as 'c,
     'd)
    Bddapron.Env.O.t ->
    ('a, ('a, 'b, 'c, 'd) Bddapron.Env.O.t) Bddapron.Cond.O.t ->
    Cudd.Bdd.vt -> Apron.Tcons0.t array
  val lvar_split :
    ('a, [> 'Bddapron.Env.typ ], [> 'Bddapron.Env.typdef ], 'e)
    Bddapron.Env.O.t -> 'a list -> Cudd.Man.v Cudd.Bdd.t * Apron.Dim.t array
  val condition_of_tcons0 :
    ('a, [> 'Bddapron.Env.typ ], [> 'Bddapron.Env.typdef ], 'd)
    Bddapron.Env.O.t ->
    Apron.Tcons0.t ->
    [ `Bool of bool | `Cond of 'Bddapron.Apronexpr.Condition.t ]
  val bdd_of_tcons0 :
    ('a, [> 'Bddapron.Env.typ ] as 'b, [> 'Bddapron.Env.typdef ] as 'c,
     'd)
    Bddapron.Env.O.t ->
    ('a, ('a, 'b, 'c, 'd) Bddapron.Env.O.t) Bddapron.Cond.O.t ->
    Apron.Tcons0.t -> Cudd.Bdd.vt
  val bdd_of_tcons0_array :
    ('a, [> 'Bddapron.Env.typ ] as 'b, [> 'Bddapron.Env.typdef ] as 'c,
     'd)
    Bddapron.Env.O.t ->
    ('a, ('a, 'b, 'c, 'd) Bddapron.Env.O.t) Bddapron.Cond.O.t ->
    Apron.Tcons0.t array -> Cudd.Bdd.vt
end