sig
type cst =
[ `Apron of Apron.Coeff.t | `Bint of (bool * int) * int | `Bool of bool ]
type unop =
[ `Apron of Apron.Texpr1.unop * Apron.Texpr1.typ * Apron.Texpr1.round
| `Not ]
type bbinop = [ `And | `EQ | `GEQ | `GT | `LEQ | `LT | `NEQ | `Or ]
type binop =
[ `Apron of Apron.Texpr1.binop * Apron.Texpr1.typ * Apron.Texpr1.round
| `Bool of Bddapron.Syntax.bbinop ]
type 'a expr =
[ `Binop of
Bddapron.Syntax.binop * 'a Bddapron.Syntax.expr *
'a Bddapron.Syntax.expr
| `Cst of Bddapron.Syntax.cst
| `If of
'a Bddapron.Syntax.expr * 'a Bddapron.Syntax.expr *
'a Bddapron.Syntax.expr
| `In of 'a Bddapron.Syntax.expr * 'a Bddapron.Syntax.expr list
| `Ref of 'a
| `Unop of Bddapron.Syntax.unop * 'a Bddapron.Syntax.expr ]
val print_cst : Format.formatter -> Bddapron.Syntax.cst -> unit
val print_unop : Format.formatter -> Bddapron.Syntax.unop -> unit
val print_bbinop : Format.formatter -> Bddapron.Syntax.bbinop -> unit
val print_binop : Format.formatter -> Bddapron.Syntax.binop -> unit
val print_expr :
(Format.formatter -> 'a -> unit) ->
Format.formatter -> 'a Bddapron.Syntax.expr -> unit
exception Error of string
val to_expr0 :
'a Bddapron.Env.t ->
'a Bddapron.Cond.t -> 'a Bddapron.Syntax.expr -> 'a Bddapron.Expr0.t
val to_expr1 :
'a Bddapron.Env.t ->
'a Bddapron.Cond.t -> 'a Bddapron.Syntax.expr -> 'a Bddapron.Expr1.t
val to_listexpr1 :
'a Bddapron.Env.t ->
'a Bddapron.Cond.t ->
'a Bddapron.Syntax.expr list -> 'a Bddapron.Expr1.List.t
val to_listexpr2 :
?normalize:bool ->
?reduce:bool ->
?careset:bool ->
'a Bddapron.Env.t ->
'a Bddapron.Cond.t ->
'a Bddapron.Syntax.expr list -> 'a Bddapron.Expr2.List.t
val to_boolexpr2 :
?normalize:bool ->
?reduce:bool ->
?careset:bool ->
'a Bddapron.Env.t ->
'a Bddapron.Cond.t -> 'a Bddapron.Syntax.expr -> 'a Bddapron.Expr2.Bool.t
val error : ('a, Format.formatter, unit, 'b) Pervasives.format4 -> 'a
val is_zero : 'a Bddapron.Syntax.expr -> bool
val precedence_of_unop : Bddapron.Syntax.unop -> int
val precedence_of_binop : Bddapron.Syntax.binop -> int
val precedence_of_expr : 'a Bddapron.Syntax.expr -> int
val cst_to_expr0 :
'a Bddapron.Env.t ->
'a Bddapron.Cond.t -> [< Bddapron.Syntax.cst ] -> 'a Bddapron.Expr0.expr
val apply_bbinop :
'a Bddapron.Env.t ->
'a Bddapron.Cond.t ->
Bddapron.Syntax.bbinop ->
'a Bddapron.Expr0.expr ->
'a Bddapron.Expr0.expr -> 'a Bddapron.Expr0.Bool.t
val apply_binop :
'a Bddapron.Env.t ->
'a Bddapron.Cond.t ->
Bddapron.Syntax.binop ->
'a Bddapron.Expr0.t -> 'a Bddapron.Expr0.t -> 'a Bddapron.Expr0.t
end