sig
type t
and unop = Neg | Cast | Sqrt
and binop = Add | Sub | Mul | Div | Mod | Pow
and typ = Real | Int | Single | Double | Extended | Quad
and round = Near | Zero | Up | Down | Rnd
type expr =
Cst of Apron.Coeff.t
| Dim of Apron.Dim.t
| Unop of Apron.Texpr0.unop * Apron.Texpr0.expr * Apron.Texpr0.typ *
Apron.Texpr0.round
| Binop of Apron.Texpr0.binop * Apron.Texpr0.expr * Apron.Texpr0.expr *
Apron.Texpr0.typ * Apron.Texpr0.round
external of_expr : Apron.Texpr0.expr -> Apron.Texpr0.t
= "camlidl_texpr0_ap_texpr0_of_expr"
external copy : Apron.Texpr0.t -> Apron.Texpr0.t
= "camlidl_texpr0_ap_texpr0_copy"
external of_linexpr : Apron.Linexpr0.t -> Apron.Texpr0.t
= "camlidl_texpr0_ap_texpr0_of_linexpr"
external to_expr : Apron.Texpr0.t -> Apron.Texpr0.expr
= "camlidl_texpr0_ap_texpr0_to_expr"
external cst : Apron.Coeff.t -> Apron.Texpr0.t
= "camlidl_texpr0_ap_texpr0_cst"
external dim : Apron.Dim.t -> Apron.Texpr0.t
= "camlidl_texpr0_ap_texpr0_dim"
external unop :
Apron.Texpr0.unop ->
Apron.Texpr0.t ->
Apron.Texpr0.typ -> Apron.Texpr0.round -> Apron.Texpr0.t
= "camlidl_texpr0_ap_texpr0_unop"
external binop :
Apron.Texpr0.binop ->
Apron.Texpr0.typ ->
Apron.Texpr0.round -> Apron.Texpr0.t -> Apron.Texpr0.t -> Apron.Texpr0.t
= "camlidl_texpr0_ap_texpr0_binop"
external is_interval_cst : Apron.Texpr0.t -> bool
= "camlidl_texpr0_ap_texpr0_is_interval_cst"
external is_interval_linear : Apron.Texpr0.t -> bool
= "camlidl_texpr0_ap_texpr0_is_interval_linear"
external is_interval_polynomial : Apron.Texpr0.t -> bool
= "camlidl_texpr0_ap_texpr0_is_interval_polynomial"
external is_interval_polyfrac : Apron.Texpr0.t -> bool
= "camlidl_texpr0_ap_texpr0_is_interval_polyfrac"
external is_scalar : Apron.Texpr0.t -> bool
= "camlidl_texpr0_ap_texpr0_is_scalar"
val string_of_unop : Apron.Texpr0.unop -> string
val string_of_binop : Apron.Texpr0.binop -> string
val string_of_typ : Apron.Texpr0.typ -> string
val string_of_round : Apron.Texpr0.round -> string
val print_unop : Format.formatter -> Apron.Texpr0.unop -> unit
val print_binop : Format.formatter -> Apron.Texpr0.binop -> unit
val print_typ : Format.formatter -> Apron.Texpr0.typ -> unit
val print_round : Format.formatter -> Apron.Texpr0.round -> unit
val print_expr :
(Apron.Dim.t -> string) -> Format.formatter -> Apron.Texpr0.expr -> unit
val print :
(Apron.Dim.t -> string) -> Format.formatter -> Apron.Texpr0.t -> unit
val print_sprint_unop :
Apron.Texpr0.unop -> Apron.Texpr0.typ -> Apron.Texpr0.round -> string
val print_sprint_binop :
Apron.Texpr0.binop -> Apron.Texpr0.typ -> Apron.Texpr0.round -> string
val print_precedence_of_unop : Apron.Texpr0.unop -> int
val print_precedence_of_binop : Apron.Texpr0.binop -> int
end