bddapron

Logico-numerical domain(s) based on BDDs and APRON
Legend:
Library
Module
Module type
Parameter
Class
Class type
Manual
Module Bddapron . Syntax
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 bbinop
]
type !'a expr = [
| `Binop of binop * 'a expr * 'a expr
| `Cst of cst
| `If of 'a expr * 'a expr * 'a expr
| `In of 'a expr * 'a expr list
| `Ref of 'a
| `Unop of unop * 'a expr
]
val print_cst : Format.formatter -> cst -> unit
val print_unop : Format.formatter -> unop -> unit
val print_bbinop : Format.formatter -> bbinop -> unit
val print_binop : Format.formatter -> binop -> unit
val print_expr : ( Format.formatter -> 'a -> unit ) -> Format.formatter -> 'a expr -> unit
exception Error of string
val to_expr0 : 'a Env.t -> 'a Cond.t -> string expr -> 'a Expr0.t
val to_expr1 : 'a Env.t -> 'a Cond.t -> string expr -> 'a Expr1.t
val to_listexpr1 : 'a Env.t -> 'a Cond.t -> string expr list -> 'a Expr1.List.t
val to_listexpr2 : ?normalize:bool -> ?reduce:bool -> ?careset:bool -> 'a Env.t -> 'a Cond.t -> string expr list -> 'a Expr2.List.t
val to_boolexpr2 : ?normalize:bool -> ?reduce:bool -> ?careset:bool -> 'a Env.t -> 'a Cond.t -> string expr -> 'a Expr2.Bool.t
val error : ( 'a, Format.formatter, unit, 'b ) format4 -> 'a
val is_zero : 'a expr -> bool
val precedence_of_unop : unop -> int
val precedence_of_binop : binop -> int
val precedence_of_expr : 'a expr -> int
val cst_to_expr0 : 'a Env.t -> 'a Cond.t -> [< cst ] -> 'a Expr0.expr
val apply_bbinop : 'a Env.t -> 'a Cond.t -> bbinop -> 'a Expr0.expr -> 'a Expr0.expr -> 'a Expr0.Bool.t
val apply_binop : 'a Env.t -> 'a Cond.t -> binop -> 'a Expr0.t -> 'a Expr0.t -> 'a Expr0.t