sig
type t = { mutable texpr0 : Texpr0.t; mutable env : Environment.t; }
type unop = Texpr0.unop = Neg | Cast | Sqrt
type binop = Texpr0.binop = Add | Sub | Mul | Div | Mod
type typ = Texpr0.typ = Real | Int | Single | Double | Extended | Quad
type round = Texpr0.round = Near | Zero | Up | Down | Rnd
type expr =
Cst of Coeff.t
| Var of Var.t
| Unop of Texpr1.unop * Texpr1.expr * Texpr1.typ * Texpr1.round
| Binop of Texpr1.binop * Texpr1.expr * Texpr1.expr * Texpr1.typ *
Texpr1.round
val of_expr : Environment.t -> Texpr1.expr -> Texpr1.t
val copy : Texpr1.t -> Texpr1.t
val of_linexpr : Linexpr1.t -> Texpr1.t
val to_expr : Texpr1.t -> Texpr1.expr
external cst : Environment.t -> Coeff.t -> Texpr1.t
= "camlidl_texpr1_ap_texpr1_cst"
external var : Environment.t -> Var.t -> Texpr1.t
= "camlidl_texpr1_ap_texpr1_var"
external unop :
Texpr0.unop -> Texpr1.t -> Texpr0.typ -> Texpr0.round -> Texpr1.t
= "camlidl_texpr1_ap_texpr1_unop"
external binop :
Texpr0.binop ->
Texpr1.t -> Texpr1.t -> Texpr0.typ -> Texpr0.round -> Texpr1.t
= "camlidl_texpr1_ap_texpr1_binop"
val is_interval_cst : Texpr1.t -> bool
val is_interval_linear : Texpr1.t -> bool
val is_interval_polynomial : Texpr1.t -> bool
val is_interval_polyfrac : Texpr1.t -> bool
val is_scalar : Texpr1.t -> bool
external extend_environment : Texpr1.t -> Environment.t -> Texpr1.t
= "camlidl_texpr1_ap_texpr1_extend_environment"
external extend_environment_with : Texpr1.t -> Environment.t -> unit
= "camlidl_texpr1_ap_texpr1_extend_environment_with"
val get_texpr0 : Texpr1.t -> Texpr0.t
val get_env : Texpr1.t -> Environment.t
val string_of_unop : Texpr1.unop -> string
val string_of_binop : Texpr1.binop -> string
val string_of_typ : Texpr1.typ -> string
val string_of_round : Texpr1.round -> string
val print_unop : Format.formatter -> Texpr1.unop -> unit
val print_binop : Format.formatter -> Texpr1.binop -> unit
val print_typ : Format.formatter -> Texpr1.typ -> unit
val print_round : Format.formatter -> Texpr1.round -> unit
val print_expr : Format.formatter -> Texpr1.expr -> unit
val print : Format.formatter -> Texpr1.t -> unit
end