Module ApronexprDD


module ApronexprDD: sig .. end
DDs on top of arithmetic expressions (internal)

type 'a t = 'a Apronexpr.t Cudd.Mtbdd.t 
val of_expr : [> `Apron of 'a t ] -> 'a t
val to_expr : 'a t -> [> `Apron of 'a t ]
val print : (Format.formatter -> Cudd.Bdd.vt -> unit) ->
'a Apronexpr.symbol -> Format.formatter -> 'a t -> unit
val is_zero : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a Apronexpr.t -> bool
val is_one : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a Apronexpr.t -> bool
val absorbant_zero : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a Apronexpr.t Cudd.Mtbdd.unique -> 'a Apronexpr.t Cudd.Mtbdd.unique option
val absorbant_one : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a Apronexpr.t Cudd.Mtbdd.unique -> 'a Apronexpr.t Cudd.Mtbdd.unique option
val cst : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
Apron.Coeff.t -> 'a t
val var : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a -> 'a t
val add : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
?typ:Apron.Texpr1.typ ->
?round:Apron.Texpr1.round ->
'a t -> 'a t -> 'a t
val sub : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
?typ:Apron.Texpr1.typ ->
?round:Apron.Texpr1.round ->
'a t -> 'a t -> 'a t
val mul : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
?typ:Apron.Texpr1.typ ->
?round:Apron.Texpr1.round ->
'a t -> 'a t -> 'a t
val div : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
?typ:Apron.Texpr1.typ ->
?round:Apron.Texpr1.round ->
'a t -> 'a t -> 'a t
val gmod : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
?typ:Apron.Texpr1.typ ->
?round:Apron.Texpr1.round ->
'a t -> 'a t -> 'a t
val negate : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a t -> 'a t
val cast : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
?typ:Apron.Texpr1.typ ->
?round:Apron.Texpr1.round -> 'a t -> 'a t
val sqrt : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
?typ:Apron.Texpr1.typ ->
?round:Apron.Texpr1.round -> 'a t -> 'a t
val support_leaf : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a t -> 'a PSette.t
val support_cond : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a t -> Cudd.Bdd.vt
val substitute_linexpr : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a Apronexpr.Lin.t ->
('a, [> `Apron of 'a t ]) PMappe.t -> 'a t
val substitute_polyexpr : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a Apronexpr.Poly.t ->
('a, [> `Apron of 'a t ]) PMappe.t -> 'a t
val substitute_treeexpr : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a Apronexpr.Tree.t ->
('a, [> `Apron of 'a t ]) PMappe.t -> 'a t
val substitute : ('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'b) Env.O.t ->
'a Apronexpr.t ->
('a, [> `Apron of 'a t ]) PMappe.t -> 'a t
module Condition: sig .. end