sig
module Scalar :
sig
type t = Float of float | Mpqf of Mpqf.t | Mpfrf of Mpfrf.t
val of_mpq : Mpq.t -> Apron.Scalar.t
val of_mpqf : Mpqf.t -> Apron.Scalar.t
val of_int : int -> Apron.Scalar.t
val of_frac : int -> int -> Apron.Scalar.t
val of_mpfr : Mpfr.t -> Apron.Scalar.t
val of_mpfrf : Mpfrf.t -> Apron.Scalar.t
val of_float : float -> Apron.Scalar.t
val of_infty : int -> Apron.Scalar.t
val is_infty : Apron.Scalar.t -> int
val sgn : Apron.Scalar.t -> int
val cmp : Apron.Scalar.t -> Apron.Scalar.t -> int
val cmp_int : Apron.Scalar.t -> int -> int
val equal : Apron.Scalar.t -> Apron.Scalar.t -> bool
val equal_int : Apron.Scalar.t -> int -> bool
val neg : Apron.Scalar.t -> Apron.Scalar.t
val to_string : Apron.Scalar.t -> string
val print : Format.formatter -> Apron.Scalar.t -> unit
end
module Interval :
sig
type t = {
mutable inf : Apron.Scalar.t;
mutable sup : Apron.Scalar.t;
}
val of_scalar : Apron.Scalar.t -> Apron.Scalar.t -> Apron.Interval.t
val of_infsup : Apron.Scalar.t -> Apron.Scalar.t -> Apron.Interval.t
val of_mpq : Mpq.t -> Mpq.t -> Apron.Interval.t
val of_mpqf : Mpqf.t -> Mpqf.t -> Apron.Interval.t
val of_int : int -> int -> Apron.Interval.t
val of_frac : int -> int -> int -> int -> Apron.Interval.t
val of_float : float -> float -> Apron.Interval.t
val of_mpfr : Mpfr.t -> Mpfr.t -> Apron.Interval.t
val is_top : Apron.Interval.t -> bool
val is_bottom : Apron.Interval.t -> bool
val is_leq : Apron.Interval.t -> Apron.Interval.t -> bool
val cmp : Apron.Interval.t -> Apron.Interval.t -> int
val equal : Apron.Interval.t -> Apron.Interval.t -> bool
val is_zero : Apron.Interval.t -> bool
val equal_int : Apron.Interval.t -> int -> bool
val neg : Apron.Interval.t -> Apron.Interval.t
val top : Apron.Interval.t
val bottom : Apron.Interval.t
val set_infsup :
Apron.Interval.t -> Apron.Scalar.t -> Apron.Scalar.t -> unit
val set_top : Apron.Interval.t -> unit
val set_bottom : Apron.Interval.t -> unit
val print : Format.formatter -> Apron.Interval.t -> unit
end
module Coeff :
sig
type union_5 = Scalar of Apron.Scalar.t | Interval of Apron.Interval.t
and t = Apron.Coeff.union_5
val s_of_mpq : Mpq.t -> Apron.Coeff.t
val s_of_mpqf : Mpqf.t -> Apron.Coeff.t
val s_of_int : int -> Apron.Coeff.t
val s_of_frac : int -> int -> Apron.Coeff.t
val s_of_float : float -> Apron.Coeff.t
val s_of_mpfr : Mpfr.t -> Apron.Coeff.t
val i_of_scalar : Apron.Scalar.t -> Apron.Scalar.t -> Apron.Coeff.t
val i_of_mpq : Mpq.t -> Mpq.t -> Apron.Coeff.t
val i_of_mpqf : Mpqf.t -> Mpqf.t -> Apron.Coeff.t
val i_of_int : int -> int -> Apron.Coeff.t
val i_of_frac : int -> int -> int -> int -> Apron.Coeff.t
val i_of_float : float -> float -> Apron.Coeff.t
val i_of_mpfr : Mpfr.t -> Mpfr.t -> Apron.Coeff.t
val is_scalar : Apron.Coeff.t -> bool
val is_interval : Apron.Coeff.t -> bool
val cmp : Apron.Coeff.t -> Apron.Coeff.t -> int
val equal : Apron.Coeff.t -> Apron.Coeff.t -> bool
val is_zero : Apron.Coeff.t -> bool
val equal_int : Apron.Coeff.t -> int -> bool
val neg : Apron.Coeff.t -> Apron.Coeff.t
val reduce : Apron.Coeff.t -> Apron.Coeff.t
val print : Format.formatter -> Apron.Coeff.t -> unit
end
module Dim :
sig
type t = int
and change = { dim : int array; intdim : int; realdim : int; }
and change2 = {
add : Apron.Dim.change option;
remove : Apron.Dim.change option;
}
and perm = int array
and dimension = { intd : int; reald : int; }
val change_add_invert : Apron.Dim.change -> unit
val perm_compose : Apron.Dim.perm -> Apron.Dim.perm -> Apron.Dim.perm
val perm_invert : Apron.Dim.perm -> Apron.Dim.perm
end
module Linexpr0 :
sig
type t
external make : int option -> Apron.Linexpr0.t
= "camlidl_linexpr0_ap_linexpr0_make"
val of_list :
int option ->
(Apron.Coeff.t * Apron.Dim.t) list ->
Apron.Coeff.t option -> Apron.Linexpr0.t
val of_array :
int option ->
(Apron.Coeff.t * Apron.Dim.t) array ->
Apron.Coeff.t option -> Apron.Linexpr0.t
external minimize : Apron.Linexpr0.t -> unit
= "camlidl_linexpr0_ap_linexpr0_minimize"
external copy : Apron.Linexpr0.t -> Apron.Linexpr0.t
= "camlidl_linexpr0_ap_linexpr0_copy"
external compare : Apron.Linexpr0.t -> Apron.Linexpr0.t -> int
= "camlidl_linexpr0_ap_linexpr0_compare"
external hash : Apron.Linexpr0.t -> int
= "camlidl_linexpr0_ap_linexpr0_hash"
external get_size : Apron.Linexpr0.t -> int
= "camlidl_linexpr0_ap_linexpr0_get_size"
external get_cst : Apron.Linexpr0.t -> Apron.Coeff.t
= "camlidl_linexpr0_ap_linexpr0_get_cst"
external get_coeff : Apron.Linexpr0.t -> int -> Apron.Coeff.t
= "camlidl_linexpr0_ap_linexpr0_get_coeff"
val set_list :
Apron.Linexpr0.t ->
(Apron.Coeff.t * Apron.Dim.t) list -> Apron.Coeff.t option -> unit
val set_array :
Apron.Linexpr0.t ->
(Apron.Coeff.t * Apron.Dim.t) array -> Apron.Coeff.t option -> unit
external set_cst : Apron.Linexpr0.t -> Apron.Coeff.t -> unit
= "camlidl_linexpr0_ap_linexpr0_set_cst"
external set_coeff : Apron.Linexpr0.t -> int -> Apron.Coeff.t -> unit
= "camlidl_linexpr0_ap_linexpr0_set_coeff"
external iter :
(Apron.Coeff.t -> Apron.Dim.t -> unit) -> Apron.Linexpr0.t -> unit
= "camlidl_expr0_linexpr0_iter"
val print :
(Apron.Dim.t -> string) ->
Format.formatter -> Apron.Linexpr0.t -> unit
end
module Lincons0 :
sig
type t = {
mutable linexpr0 : Apron.Linexpr0.t;
mutable typ : Apron.Lincons0.typ;
}
and typ = EQ | SUPEQ | SUP | DISEQ | EQMOD of Apron.Scalar.t
val make : Apron.Linexpr0.t -> Apron.Lincons0.typ -> Apron.Lincons0.t
val copy : Apron.Lincons0.t -> Apron.Lincons0.t
val string_of_typ : Apron.Lincons0.typ -> string
val print :
(Apron.Dim.t -> string) ->
Format.formatter -> Apron.Lincons0.t -> unit
end
module Generator0 :
sig
type typ = LINE | RAY | VERTEX | LINEMOD | RAYMOD
and t = {
mutable linexpr0 : Apron.Linexpr0.t;
mutable typ : Apron.Generator0.typ;
}
val make :
Apron.Linexpr0.t -> Apron.Generator0.typ -> Apron.Generator0.t
val copy : Apron.Generator0.t -> Apron.Generator0.t
val string_of_typ : Apron.Generator0.typ -> string
val print :
(Apron.Dim.t -> string) ->
Format.formatter -> Apron.Generator0.t -> unit
end
module Texpr0 :
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
module Tcons0 :
sig
type t = {
mutable texpr0 : Apron.Texpr0.t;
mutable typ : Apron.Lincons0.typ;
}
type typ =
Apron.Lincons0.typ =
EQ
| SUPEQ
| SUP
| DISEQ
| EQMOD of Apron.Scalar.t
val make : Apron.Texpr0.t -> Apron.Tcons0.typ -> Apron.Tcons0.t
val copy : Apron.Tcons0.t -> Apron.Tcons0.t
val string_of_typ : Apron.Tcons0.typ -> string
val print :
(Apron.Dim.t -> string) -> Format.formatter -> Apron.Tcons0.t -> unit
end
module Manager :
sig
type funid =
Funid_unknown
| Funid_copy
| Funid_free
| Funid_asize
| Funid_minimize
| Funid_canonicalize
| Funid_hash
| Funid_approximate
| Funid_fprint
| Funid_fprintdiff
| Funid_fdump
| Funid_serialize_raw
| Funid_deserialize_raw
| Funid_bottom
| Funid_top
| Funid_of_box
| Funid_dimension
| Funid_is_bottom
| Funid_is_top
| Funid_is_leq
| Funid_is_eq
| Funid_is_dimension_unconstrained
| Funid_sat_interval
| Funid_sat_lincons
| Funid_sat_tcons
| Funid_bound_dimension
| Funid_bound_linexpr
| Funid_bound_texpr
| Funid_to_box
| Funid_to_lincons_array
| Funid_to_tcons_array
| Funid_to_generator_array
| Funid_meet
| Funid_meet_array
| Funid_meet_lincons_array
| Funid_meet_tcons_array
| Funid_join
| Funid_join_array
| Funid_add_ray_array
| Funid_assign_linexpr_array
| Funid_substitute_linexpr_array
| Funid_assign_texpr_array
| Funid_substitute_texpr_array
| Funid_add_dimensions
| Funid_remove_dimensions
| Funid_permute_dimensions
| Funid_forget_array
| Funid_expand
| Funid_fold
| Funid_widening
| Funid_closure
| Funid_change_environment
| Funid_rename_array
and funopt = {
algorithm : int;
timeout : int;
max_object_size : int;
flag_exact_wanted : bool;
flag_best_wanted : bool;
}
and exc =
Exc_none
| Exc_timeout
| Exc_out_of_space
| Exc_overflow
| Exc_invalid_argument
| Exc_not_implemented
and exclog = {
exn : Apron.Manager.exc;
funid : Apron.Manager.funid;
msg : string;
}
and 'a t
external get_library : 'a Apron.Manager.t -> string
= "camlidl_manager_ap_manager_get_library"
external get_version : 'a Apron.Manager.t -> string
= "camlidl_manager_ap_manager_get_version"
external funopt_make : unit -> Apron.Manager.funopt
= "camlidl_manager_ap_funopt_make"
external get_funopt :
'a Apron.Manager.t -> Apron.Manager.funid -> Apron.Manager.funopt
= "camlidl_manager_ap_manager_get_funopt"
external set_funopt :
'a Apron.Manager.t ->
Apron.Manager.funid -> Apron.Manager.funopt -> unit
= "camlidl_manager_ap_manager_set_funopt"
external get_flag_exact : 'a Apron.Manager.t -> bool
= "camlidl_manager_ap_manager_get_flag_exact"
external get_flag_best : 'a Apron.Manager.t -> bool
= "camlidl_manager_ap_manager_get_flag_best"
exception Error of Apron.Manager.exclog
val string_of_funid : Apron.Manager.funid -> string
val string_of_exc : Apron.Manager.exc -> string
val print_funid : Format.formatter -> Apron.Manager.funid -> unit
val print_funopt : Format.formatter -> Apron.Manager.funopt -> unit
val print_exc : Format.formatter -> Apron.Manager.exc -> unit
val print_exclog : Format.formatter -> Apron.Manager.exclog -> unit
external set_deserialize : 'a Apron.Manager.t -> unit
= "camlidl_manager_ap_manager_set_deserialize"
external get_deserialize : unit -> 'a Apron.Manager.t
= "camlidl_manager_ap_manager_get_deserialize"
end
module Abstract0 :
sig
type 'a t
external set_gc : int -> unit = "camlidl_abstract0_ap_abstract0_set_gc"
external copy :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_copy"
external size : 'a Apron.Manager.t -> 'a Apron.Abstract0.t -> int
= "camlidl_abstract0_ap_abstract0_size"
external minimize : 'a Apron.Manager.t -> 'a Apron.Abstract0.t -> unit
= "camlidl_abstract0_ap_abstract0_minimize"
external canonicalize :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> unit
= "camlidl_abstract0_ap_abstract0_canonicalize"
external hash : 'a Apron.Manager.t -> 'a Apron.Abstract0.t -> int
= "camlidl_abstract0_ap_abstract0_hash"
external approximate :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> int -> unit
= "camlidl_abstract0_ap_abstract0_approximate"
external fdump : 'a Apron.Manager.t -> 'a Apron.Abstract0.t -> unit
= "camlidl_abstract0_ap_abstract0_fdump"
val print :
(int -> string) -> Format.formatter -> 'a Apron.Abstract0.t -> unit
external bottom :
'a Apron.Manager.t -> int -> int -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_bottom"
external top : 'a Apron.Manager.t -> int -> int -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_top"
external of_box :
'a Apron.Manager.t ->
int -> int -> Apron.Interval.t array -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_of_box"
external dimension :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> Apron.Dim.dimension
= "camlidl_abstract0_ap_abstract0_dimension"
external manager : 'a Apron.Abstract0.t -> 'a Apron.Manager.t
= "camlidl_abstract0_ap_abstract0_manager"
external is_bottom : 'a Apron.Manager.t -> 'a Apron.Abstract0.t -> bool
= "camlidl_abstract0_ap_abstract0_is_bottom"
external is_top : 'a Apron.Manager.t -> 'a Apron.Abstract0.t -> bool
= "camlidl_abstract0_ap_abstract0_is_top"
external is_leq :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> bool
= "camlidl_abstract0_ap_abstract0_is_leq"
external is_eq :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> bool
= "camlidl_abstract0_ap_abstract0_is_eq"
external sat_lincons :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Lincons0.t -> bool
= "camlidl_abstract0_ap_abstract0_sat_lincons"
external sat_tcons :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> Apron.Tcons0.t -> bool
= "camlidl_abstract0_ap_abstract0_sat_tcons"
external sat_interval :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.t -> Apron.Interval.t -> bool
= "camlidl_abstract0_ap_abstract0_sat_interval"
external is_dimension_unconstrained :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> Apron.Dim.t -> bool
= "camlidl_abstract0_ap_abstract0_is_dimension_unconstrained"
external bound_dimension :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.t -> Apron.Interval.t
= "camlidl_abstract0_ap_abstract0_bound_dimension"
external bound_linexpr :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Linexpr0.t -> Apron.Interval.t
= "camlidl_abstract0_ap_abstract0_bound_linexpr"
external bound_texpr :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Texpr0.t -> Apron.Interval.t
= "camlidl_abstract0_ap_abstract0_bound_texpr"
external to_box :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> Apron.Interval.t array
= "camlidl_abstract0_ap_abstract0_to_box"
external to_lincons_array :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> Apron.Lincons0.t array
= "camlidl_abstract0_ap_abstract0_to_lincons_array"
external to_tcons_array :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> Apron.Tcons0.t array
= "camlidl_abstract0_ap_abstract0_to_tcons_array"
external to_generator_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Generator0.t array
= "camlidl_abstract0_ap_abstract0_to_generator_array"
external meet :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_meet"
external meet_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t array -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_meet_array"
external meet_lincons_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Lincons0.t array -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_meet_lincons_array"
external meet_tcons_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Tcons0.t array -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_meet_tcons_array"
external join :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_join"
external join_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t array -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_join_array"
external add_ray_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Generator0.t array -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_add_ray_array"
external meet_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> unit
= "camlidl_abstract0_ap_abstract0_meet_with"
external meet_lincons_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Lincons0.t array -> unit
= "camlidl_abstract0_ap_abstract0_meet_lincons_array_with"
external meet_tcons_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Tcons0.t array -> unit
= "camlidl_abstract0_ap_abstract0_meet_tcons_array_with"
external join_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> unit
= "camlidl_abstract0_ap_abstract0_join_with"
external add_ray_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Generator0.t array -> unit
= "camlidl_abstract0_ap_abstract0_add_ray_array_with"
external assign_linexpr_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array ->
Apron.Linexpr0.t array ->
'a Apron.Abstract0.t option -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_assign_linexpr_array"
external substitute_linexpr_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array ->
Apron.Linexpr0.t array ->
'a Apron.Abstract0.t option -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_substitute_linexpr_array"
external assign_texpr_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array ->
Apron.Texpr0.t array ->
'a Apron.Abstract0.t option -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_assign_texpr_array"
external substitute_texpr_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array ->
Apron.Texpr0.t array ->
'a Apron.Abstract0.t option -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_substitute_texpr_array"
external assign_linexpr_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array ->
Apron.Linexpr0.t array -> 'a Apron.Abstract0.t option -> unit
= "camlidl_abstract0_ap_abstract0_assign_linexpr_array_with"
external substitute_linexpr_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array ->
Apron.Linexpr0.t array -> 'a Apron.Abstract0.t option -> unit
= "camlidl_abstract0_ap_abstract0_substitute_linexpr_array_with"
external assign_texpr_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array ->
Apron.Texpr0.t array -> 'a Apron.Abstract0.t option -> unit
= "camlidl_abstract0_ap_abstract0_assign_texpr_array_with"
external substitute_texpr_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array ->
Apron.Texpr0.t array -> 'a Apron.Abstract0.t option -> unit
= "camlidl_abstract0_ap_abstract0_substitute_texpr_array_with"
external forget_array :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t array -> bool -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_forget_array"
external forget_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.t array -> bool -> unit
= "camlidl_abstract0_ap_abstract0_forget_array_with"
external add_dimensions :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.change -> bool -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_add_dimensions"
external remove_dimensions :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.change -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_remove_dimensions"
external apply_dimchange2 :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.change2 -> bool -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_apply_dimchange2"
external permute_dimensions :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.perm -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_permute_dimensions"
external add_dimensions_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.change -> bool -> unit
= "camlidl_abstract0_ap_abstract0_add_dimensions_with"
external remove_dimensions_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.change -> unit
= "camlidl_abstract0_ap_abstract0_remove_dimensions_with"
external apply_dimchange2_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.change2 -> bool -> unit
= "camlidl_abstract0_ap_abstract0_apply_dimchange2_with"
external permute_dimensions_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.perm option -> unit
= "camlidl_abstract0_ap_abstract0_permute_dimensions_with"
external expand :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.t -> int -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_expand"
external fold :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.t array -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_fold"
external expand_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.t -> int -> unit
= "camlidl_abstract0_ap_abstract0_expand_with"
external fold_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> Apron.Dim.t array -> unit
= "camlidl_abstract0_ap_abstract0_fold_with"
external widening :
'a Apron.Manager.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_widening"
external widening_threshold :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
'a Apron.Abstract0.t ->
Apron.Lincons0.t array -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_widening_threshold"
external closure :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> 'a Apron.Abstract0.t
= "camlidl_abstract0_ap_abstract0_closure"
external closure_with :
'a Apron.Manager.t -> 'a Apron.Abstract0.t -> unit
= "camlidl_abstract0_ap_abstract0_closure_with"
val of_lincons_array :
'a Apron.Manager.t ->
int -> int -> Apron.Lincons0.t array -> 'a Apron.Abstract0.t
val of_tcons_array :
'a Apron.Manager.t ->
int -> int -> Apron.Tcons0.t array -> 'a Apron.Abstract0.t
val assign_linexpr :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t ->
Apron.Linexpr0.t ->
'a Apron.Abstract0.t option -> 'a Apron.Abstract0.t
val substitute_linexpr :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t ->
Apron.Linexpr0.t ->
'a Apron.Abstract0.t option -> 'a Apron.Abstract0.t
val assign_texpr :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t ->
Apron.Texpr0.t -> 'a Apron.Abstract0.t option -> 'a Apron.Abstract0.t
val substitute_texpr :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t ->
Apron.Texpr0.t -> 'a Apron.Abstract0.t option -> 'a Apron.Abstract0.t
val assign_linexpr_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t ->
Apron.Linexpr0.t -> 'a Apron.Abstract0.t option -> unit
val substitute_linexpr_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t ->
Apron.Linexpr0.t -> 'a Apron.Abstract0.t option -> unit
val assign_texpr_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t -> Apron.Texpr0.t -> 'a Apron.Abstract0.t option -> unit
val substitute_texpr_with :
'a Apron.Manager.t ->
'a Apron.Abstract0.t ->
Apron.Dim.t -> Apron.Texpr0.t -> 'a Apron.Abstract0.t option -> unit
val print_array :
?first:(unit, Format.formatter, unit) Pervasives.format ->
?sep:(unit, Format.formatter, unit) Pervasives.format ->
?last:(unit, Format.formatter, unit) Pervasives.format ->
(Format.formatter -> 'a -> unit) ->
Format.formatter -> 'a array -> unit
end
module Var :
sig
type t
external of_string : string -> Apron.Var.t
= "camlidl_var_ap_var_of_string"
external compare : Apron.Var.t -> Apron.Var.t -> int
= "camlidl_var_ap_var_compare"
external to_string : Apron.Var.t -> string
= "camlidl_var_ap_var_to_string"
external hash : Apron.Var.t -> int = "camlidl_var_ap_var_hash"
val print : Format.formatter -> Apron.Var.t -> unit
external set_var_operations : unit -> unit
= "camlidl_apron_set_var_operations"
end
module Environment :
sig
type typvar = INT | REAL
and t
external make :
Apron.Var.t array -> Apron.Var.t array -> Apron.Environment.t
= "camlidl_environment_ap_environment_make"
external add :
Apron.Environment.t ->
Apron.Var.t array -> Apron.Var.t array -> Apron.Environment.t
= "camlidl_environment_ap_environment_add"
external remove :
Apron.Environment.t -> Apron.Var.t array -> Apron.Environment.t
= "camlidl_environment_ap_environment_remove"
external rename :
Apron.Environment.t ->
Apron.Var.t array -> Apron.Var.t array -> Apron.Environment.t
= "camlidl_environment_ap_environment_rename"
external rename_perm :
Apron.Environment.t ->
Apron.Var.t array ->
Apron.Var.t array -> Apron.Environment.t * Apron.Dim.perm
= "camlidl_environment_ap_environment_rename_perm"
external lce :
Apron.Environment.t -> Apron.Environment.t -> Apron.Environment.t
= "camlidl_environment_ap_environment_lce"
external lce_change :
Apron.Environment.t ->
Apron.Environment.t ->
Apron.Environment.t * Apron.Dim.change option *
Apron.Dim.change option
= "camlidl_environment_ap_environment_lce_change"
external dimchange :
Apron.Environment.t -> Apron.Environment.t -> Apron.Dim.change
= "camlidl_environment_ap_environment_dimchange"
external dimchange2 :
Apron.Environment.t -> Apron.Environment.t -> Apron.Dim.change2
= "camlidl_environment_ap_environment_dimchange2"
external equal : Apron.Environment.t -> Apron.Environment.t -> bool
= "camlidl_environment_ap_environment_equal"
external compare : Apron.Environment.t -> Apron.Environment.t -> int
= "camlidl_environment_ap_environment_compare"
external hash : Apron.Environment.t -> int
= "camlidl_environment_ap_environment_hash"
external dimension : Apron.Environment.t -> Apron.Dim.dimension
= "camlidl_environment_ap_environment_dimension"
external size : Apron.Environment.t -> int
= "camlidl_environment_ap_environment_size"
external mem_var : Apron.Environment.t -> Apron.Var.t -> bool
= "camlidl_environment_ap_environment_mem_var"
external typ_of_var :
Apron.Environment.t -> Apron.Var.t -> Apron.Environment.typvar
= "camlidl_environment_ap_environment_typ_of_var"
external vars :
Apron.Environment.t -> Apron.Var.t array * Apron.Var.t array
= "camlidl_environment_ap_environment_vars"
external var_of_dim : Apron.Environment.t -> Apron.Dim.t -> Apron.Var.t
= "camlidl_environment_ap_environment_var_of_dim"
external dim_of_var : Apron.Environment.t -> Apron.Var.t -> Apron.Dim.t
= "camlidl_environment_ap_environment_dim_of_var"
val print :
?first:(unit, Format.formatter, unit) Pervasives.format ->
?sep:(unit, Format.formatter, unit) Pervasives.format ->
?last:(unit, Format.formatter, unit) Pervasives.format ->
Format.formatter -> Apron.Environment.t -> unit
end
module Linexpr1 :
sig
type t = {
mutable linexpr0 : Apron.Linexpr0.t;
mutable env : Apron.Environment.t;
}
val make : ?sparse:bool -> Apron.Environment.t -> Apron.Linexpr1.t
val minimize : Apron.Linexpr1.t -> unit
val copy : Apron.Linexpr1.t -> Apron.Linexpr1.t
val print : Format.formatter -> Apron.Linexpr1.t -> unit
val set_list :
Apron.Linexpr1.t ->
(Apron.Coeff.t * Apron.Var.t) list -> Apron.Coeff.t option -> unit
val set_array :
Apron.Linexpr1.t ->
(Apron.Coeff.t * Apron.Var.t) array -> Apron.Coeff.t option -> unit
val iter :
(Apron.Coeff.t -> Apron.Var.t -> unit) -> Apron.Linexpr1.t -> unit
val get_cst : Apron.Linexpr1.t -> Apron.Coeff.t
val set_cst : Apron.Linexpr1.t -> Apron.Coeff.t -> unit
external get_coeff : Apron.Linexpr1.t -> Apron.Var.t -> Apron.Coeff.t
= "camlidl_linexpr1_ap_linexpr1_get_coeff"
external set_coeff :
Apron.Linexpr1.t -> Apron.Var.t -> Apron.Coeff.t -> unit
= "camlidl_linexpr1_ap_linexpr1_set_coeff"
external extend_environment :
Apron.Linexpr1.t -> Apron.Environment.t -> Apron.Linexpr1.t
= "camlidl_linexpr1_ap_linexpr1_extend_environment"
external extend_environment_with :
Apron.Linexpr1.t -> Apron.Environment.t -> unit
= "camlidl_linexpr1_ap_linexpr1_extend_environment_with"
external is_integer : Apron.Linexpr1.t -> bool
= "camlidl_linexpr1_ap_linexpr1_is_integer"
external is_real : Apron.Linexpr1.t -> bool
= "camlidl_linexpr1_ap_linexpr1_is_real"
val get_linexpr0 : Apron.Linexpr1.t -> Apron.Linexpr0.t
val get_env : Apron.Linexpr1.t -> Apron.Environment.t
end
module Lincons1 :
sig
type t = {
mutable lincons0 : Apron.Lincons0.t;
mutable env : Apron.Environment.t;
}
and earray = {
mutable lincons0_array : Apron.Lincons0.t array;
mutable array_env : Apron.Environment.t;
}
type typ =
Apron.Lincons0.typ =
EQ
| SUPEQ
| SUP
| DISEQ
| EQMOD of Apron.Scalar.t
val make : Apron.Linexpr1.t -> Apron.Lincons1.typ -> Apron.Lincons1.t
val copy : Apron.Lincons1.t -> Apron.Lincons1.t
val string_of_typ : Apron.Lincons1.typ -> string
val print : Format.formatter -> Apron.Lincons1.t -> unit
val get_typ : Apron.Lincons1.t -> Apron.Lincons1.typ
val iter :
(Apron.Coeff.t -> Apron.Var.t -> unit) -> Apron.Lincons1.t -> unit
val get_cst : Apron.Lincons1.t -> Apron.Coeff.t
val set_typ : Apron.Lincons1.t -> Apron.Lincons1.typ -> unit
val set_list :
Apron.Lincons1.t ->
(Apron.Coeff.t * Apron.Var.t) list -> Apron.Coeff.t option -> unit
val set_array :
Apron.Lincons1.t ->
(Apron.Coeff.t * Apron.Var.t) array -> Apron.Coeff.t option -> unit
val set_cst : Apron.Lincons1.t -> Apron.Coeff.t -> unit
external get_coeff : Apron.Lincons1.t -> Apron.Var.t -> Apron.Coeff.t
= "camlidl_lincons1_ap_lincons1_get_coeff"
external set_coeff :
Apron.Lincons1.t -> Apron.Var.t -> Apron.Coeff.t -> unit
= "camlidl_lincons1_ap_lincons1_set_coeff"
external make_unsat : Apron.Environment.t -> Apron.Lincons1.t
= "camlidl_lincons1_ap_lincons1_make_unsat"
external is_unsat : Apron.Lincons1.t -> bool
= "camlidl_lincons1_ap_lincons1_is_unsat"
external extend_environment :
Apron.Lincons1.t -> Apron.Environment.t -> Apron.Lincons1.t
= "camlidl_lincons1_ap_lincons1_extend_environment"
external extend_environment_with :
Apron.Lincons1.t -> Apron.Environment.t -> unit
= "camlidl_lincons1_ap_lincons1_extend_environment_with"
val get_env : Apron.Lincons1.t -> Apron.Environment.t
val get_linexpr1 : Apron.Lincons1.t -> Apron.Linexpr1.t
val get_lincons0 : Apron.Lincons1.t -> Apron.Lincons0.t
val array_make : Apron.Environment.t -> int -> Apron.Lincons1.earray
val array_print :
?first:(unit, Format.formatter, unit) Pervasives.format ->
?sep:(unit, Format.formatter, unit) Pervasives.format ->
?last:(unit, Format.formatter, unit) Pervasives.format ->
Format.formatter -> Apron.Lincons1.earray -> unit
val array_length : Apron.Lincons1.earray -> int
val array_get_env : Apron.Lincons1.earray -> Apron.Environment.t
val array_get : Apron.Lincons1.earray -> int -> Apron.Lincons1.t
val array_set :
Apron.Lincons1.earray -> int -> Apron.Lincons1.t -> unit
external array_extend_environment :
Apron.Lincons1.earray -> Apron.Environment.t -> Apron.Lincons1.earray
= "camlidl_lincons1_ap_lincons1_array_extend_environment"
external array_extend_environment_with :
Apron.Lincons1.earray -> Apron.Environment.t -> unit
= "camlidl_lincons1_ap_lincons1_array_extend_environment_with"
end
module Generator1 :
sig
type t = {
mutable generator0 : Apron.Generator0.t;
mutable env : Apron.Environment.t;
}
and earray = {
mutable generator0_array : Apron.Generator0.t array;
mutable array_env : Apron.Environment.t;
}
type typ =
Apron.Generator0.typ =
LINE
| RAY
| VERTEX
| LINEMOD
| RAYMOD
val make :
Apron.Linexpr1.t -> Apron.Generator0.typ -> Apron.Generator1.t
val copy : Apron.Generator1.t -> Apron.Generator1.t
val print : Format.formatter -> Apron.Generator1.t -> unit
val get_typ : Apron.Generator1.t -> Apron.Generator0.typ
val iter :
(Apron.Coeff.t -> Apron.Var.t -> unit) -> Apron.Generator1.t -> unit
val set_typ : Apron.Generator1.t -> Apron.Generator0.typ -> unit
val set_list :
Apron.Generator1.t -> (Apron.Coeff.t * Apron.Var.t) list -> unit
val set_array :
Apron.Generator1.t -> (Apron.Coeff.t * Apron.Var.t) array -> unit
external get_coeff : Apron.Generator1.t -> Apron.Var.t -> Apron.Coeff.t
= "camlidl_generator1_ap_generator1_get_coeff"
external set_coeff :
Apron.Generator1.t -> Apron.Var.t -> Apron.Coeff.t -> unit
= "camlidl_generator1_ap_generator1_set_coeff"
external extend_environment :
Apron.Generator1.t -> Apron.Environment.t -> Apron.Generator1.t
= "camlidl_generator1_ap_generator1_extend_environment"
external extend_environment_with :
Apron.Generator1.t -> Apron.Environment.t -> unit
= "camlidl_generator1_ap_generator1_extend_environment_with"
val array_make : Apron.Environment.t -> int -> Apron.Generator1.earray
val array_print :
?first:(unit, Format.formatter, unit) Pervasives.format ->
?sep:(unit, Format.formatter, unit) Pervasives.format ->
?last:(unit, Format.formatter, unit) Pervasives.format ->
Format.formatter -> Apron.Generator1.earray -> unit
val array_length : Apron.Generator1.earray -> int
val array_get : Apron.Generator1.earray -> int -> Apron.Generator1.t
val array_set :
Apron.Generator1.earray -> int -> Apron.Generator1.t -> unit
external array_extend_environment :
Apron.Generator1.earray ->
Apron.Environment.t -> Apron.Generator1.earray
= "camlidl_generator1_ap_generator1_array_extend_environment"
external array_extend_environment_with :
Apron.Generator1.earray -> Apron.Environment.t -> unit
= "camlidl_generator1_ap_generator1_array_extend_environment_with"
val get_env : Apron.Generator1.t -> Apron.Environment.t
val get_linexpr1 : Apron.Generator1.t -> Apron.Linexpr1.t
val get_generator0 : Apron.Generator1.t -> Apron.Generator0.t
end
module Texpr1 :
sig
type t = {
mutable texpr0 : Apron.Texpr0.t;
mutable env : Apron.Environment.t;
}
type unop = Apron.Texpr0.unop = Neg | Cast | Sqrt
type binop = Apron.Texpr0.binop = Add | Sub | Mul | Div | Mod | Pow
type typ =
Apron.Texpr0.typ =
Real
| Int
| Single
| Double
| Extended
| Quad
type round = Apron.Texpr0.round = Near | Zero | Up | Down | Rnd
type expr =
Cst of Apron.Coeff.t
| Var of Apron.Var.t
| Unop of Apron.Texpr1.unop * Apron.Texpr1.expr * Apron.Texpr1.typ *
Apron.Texpr1.round
| Binop of Apron.Texpr1.binop * Apron.Texpr1.expr *
Apron.Texpr1.expr * Apron.Texpr1.typ * Apron.Texpr1.round
val of_expr :
Apron.Environment.t -> Apron.Texpr1.expr -> Apron.Texpr1.t
val copy : Apron.Texpr1.t -> Apron.Texpr1.t
val of_linexpr : Apron.Linexpr1.t -> Apron.Texpr1.t
val to_expr : Apron.Texpr1.t -> Apron.Texpr1.expr
external cst : Apron.Environment.t -> Apron.Coeff.t -> Apron.Texpr1.t
= "camlidl_texpr1_ap_texpr1_cst"
val var : Apron.Environment.t -> Apron.Var.t -> Apron.Texpr1.t
external unop :
Apron.Texpr0.unop ->
Apron.Texpr1.t ->
Apron.Texpr0.typ -> Apron.Texpr0.round -> Apron.Texpr1.t
= "camlidl_texpr1_ap_texpr1_unop"
external binop :
Apron.Texpr0.binop ->
Apron.Texpr1.t ->
Apron.Texpr1.t ->
Apron.Texpr0.typ -> Apron.Texpr0.round -> Apron.Texpr1.t
= "camlidl_texpr1_ap_texpr1_binop"
val is_interval_cst : Apron.Texpr1.t -> bool
val is_interval_linear : Apron.Texpr1.t -> bool
val is_interval_polynomial : Apron.Texpr1.t -> bool
val is_interval_polyfrac : Apron.Texpr1.t -> bool
val is_scalar : Apron.Texpr1.t -> bool
external extend_environment :
Apron.Texpr1.t -> Apron.Environment.t -> Apron.Texpr1.t
= "camlidl_texpr1_ap_texpr1_extend_environment"
external extend_environment_with :
Apron.Texpr1.t -> Apron.Environment.t -> unit
= "camlidl_texpr1_ap_texpr1_extend_environment_with"
val get_texpr0 : Apron.Texpr1.t -> Apron.Texpr0.t
val get_env : Apron.Texpr1.t -> Apron.Environment.t
val string_of_unop : Apron.Texpr1.unop -> string
val string_of_binop : Apron.Texpr1.binop -> string
val string_of_typ : Apron.Texpr1.typ -> string
val string_of_round : Apron.Texpr1.round -> string
val print_unop : Format.formatter -> Apron.Texpr1.unop -> unit
val print_binop : Format.formatter -> Apron.Texpr1.binop -> unit
val print_typ : Format.formatter -> Apron.Texpr1.typ -> unit
val print_round : Format.formatter -> Apron.Texpr1.round -> unit
val print_expr : Format.formatter -> Apron.Texpr1.expr -> unit
val print : Format.formatter -> Apron.Texpr1.t -> unit
end
module Tcons1 :
sig
type t = {
mutable tcons0 : Apron.Tcons0.t;
mutable env : Apron.Environment.t;
}
and earray = {
mutable tcons0_array : Apron.Tcons0.t array;
mutable array_env : Apron.Environment.t;
}
type typ =
Apron.Lincons0.typ =
EQ
| SUPEQ
| SUP
| DISEQ
| EQMOD of Apron.Scalar.t
val make : Apron.Texpr1.t -> Apron.Tcons1.typ -> Apron.Tcons1.t
val copy : Apron.Tcons1.t -> Apron.Tcons1.t
val string_of_typ : Apron.Tcons1.typ -> string
val print : Format.formatter -> Apron.Tcons1.t -> unit
val get_typ : Apron.Tcons1.t -> Apron.Tcons1.typ
val set_typ : Apron.Tcons1.t -> Apron.Tcons1.typ -> unit
external extend_environment :
Apron.Tcons1.t -> Apron.Environment.t -> Apron.Tcons1.t
= "camlidl_tcons1_ap_tcons1_extend_environment"
external extend_environment_with :
Apron.Tcons1.t -> Apron.Environment.t -> unit
= "camlidl_tcons1_ap_tcons1_extend_environment_with"
val get_env : Apron.Tcons1.t -> Apron.Environment.t
val get_texpr1 : Apron.Tcons1.t -> Apron.Texpr1.t
val get_tcons0 : Apron.Tcons1.t -> Apron.Tcons0.t
val array_make : Apron.Environment.t -> int -> Apron.Tcons1.earray
val array_print :
?first:(unit, Format.formatter, unit) Pervasives.format ->
?sep:(unit, Format.formatter, unit) Pervasives.format ->
?last:(unit, Format.formatter, unit) Pervasives.format ->
Format.formatter -> Apron.Tcons1.earray -> unit
val array_length : Apron.Tcons1.earray -> int
val array_get_env : Apron.Tcons1.earray -> Apron.Environment.t
val array_get : Apron.Tcons1.earray -> int -> Apron.Tcons1.t
val array_set : Apron.Tcons1.earray -> int -> Apron.Tcons1.t -> unit
external array_extend_environment :
Apron.Tcons1.earray -> Apron.Environment.t -> Apron.Tcons1.earray
= "camlidl_tcons1_ap_tcons1_array_extend_environment"
external array_extend_environment_with :
Apron.Tcons1.earray -> Apron.Environment.t -> unit
= "camlidl_tcons1_ap_tcons1_array_extend_environment_with"
end
module Abstract1 :
sig
type 'a t = {
mutable abstract0 : 'a Apron.Abstract0.t;
mutable env : Apron.Environment.t;
}
type box1 = {
mutable interval_array : Apron.Interval.t array;
mutable box1_env : Apron.Environment.t;
}
val copy :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> 'a Apron.Abstract1.t
val size : 'a Apron.Manager.t -> 'a Apron.Abstract1.t -> int
val minimize : 'a Apron.Manager.t -> 'a Apron.Abstract1.t -> unit
val canonicalize : 'a Apron.Manager.t -> 'a Apron.Abstract1.t -> unit
val hash : 'a Apron.Manager.t -> 'a Apron.Abstract1.t -> int
val approximate :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> int -> unit
external fdump : 'a Apron.Manager.t -> 'a Apron.Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_fdump"
val print : Format.formatter -> 'a Apron.Abstract1.t -> unit
external bottom :
'a Apron.Manager.t -> Apron.Environment.t -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_bottom"
external top :
'a Apron.Manager.t -> Apron.Environment.t -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_top"
external of_box :
'a Apron.Manager.t ->
Apron.Environment.t ->
Apron.Var.t array -> Apron.Interval.t array -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_of_box"
val manager : 'a Apron.Abstract1.t -> 'a Apron.Manager.t
val env : 'a Apron.Abstract1.t -> Apron.Environment.t
val abstract0 : 'a Apron.Abstract1.t -> 'a Apron.Abstract0.t
val is_bottom : 'a Apron.Manager.t -> 'a Apron.Abstract1.t -> bool
val is_top : 'a Apron.Manager.t -> 'a Apron.Abstract1.t -> bool
external is_leq :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> bool
= "camlidl_abstract1_ap_abstract1_is_leq"
external is_eq :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> bool
= "camlidl_abstract1_ap_abstract1_is_eq"
external sat_lincons :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Lincons1.t -> bool
= "camlidl_abstract1_ap_abstract1_sat_lincons"
external sat_tcons :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> Apron.Tcons1.t -> bool
= "camlidl_abstract1_ap_abstract1_sat_tcons"
external sat_interval :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Var.t -> Apron.Interval.t -> bool
= "camlidl_abstract1_ap_abstract1_sat_interval"
external is_variable_unconstrained :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> Apron.Var.t -> bool
= "camlidl_abstract1_ap_abstract1_is_variable_unconstrained"
external bound_variable :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Var.t -> Apron.Interval.t
= "camlidl_abstract1_ap_abstract1_bound_variable"
external bound_linexpr :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Linexpr1.t -> Apron.Interval.t
= "camlidl_abstract1_ap_abstract1_bound_linexpr"
external bound_texpr :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Texpr1.t -> Apron.Interval.t
= "camlidl_abstract1_ap_abstract1_bound_texpr"
val to_box :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> Apron.Abstract1.box1
val to_lincons_array :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> Apron.Lincons1.earray
val to_tcons_array :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> Apron.Tcons1.earray
val to_generator_array :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> Apron.Generator1.earray
external meet :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_meet"
external meet_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t array -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_meet_array"
external meet_lincons_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Lincons1.earray -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_meet_lincons_array"
external meet_tcons_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Tcons1.earray -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_meet_tcons_array"
external join :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_join"
external join_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t array -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_join_array"
external add_ray_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Generator1.earray -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_add_ray_array"
external meet_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_meet_with"
external meet_lincons_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Lincons1.earray -> unit
= "camlidl_abstract1_ap_abstract1_meet_lincons_array_with"
external meet_tcons_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Tcons1.earray -> unit
= "camlidl_abstract1_ap_abstract1_meet_tcons_array_with"
external join_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_join_with"
external add_ray_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Generator1.earray -> unit
= "camlidl_abstract1_ap_abstract1_add_ray_array_with"
external assign_linexpr_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array ->
Apron.Linexpr1.t array ->
'a Apron.Abstract1.t option -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_assign_linexpr_array"
external substitute_linexpr_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array ->
Apron.Linexpr1.t array ->
'a Apron.Abstract1.t option -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_substitute_linexpr_array"
external assign_texpr_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array ->
Apron.Texpr1.t array ->
'a Apron.Abstract1.t option -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_assign_texpr_array"
external substitute_texpr_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array ->
Apron.Texpr1.t array ->
'a Apron.Abstract1.t option -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_substitute_texpr_array"
external assign_linexpr_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array ->
Apron.Linexpr1.t array -> 'a Apron.Abstract1.t option -> unit
= "camlidl_abstract1_ap_abstract1_assign_linexpr_array_with"
external substitute_linexpr_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array ->
Apron.Linexpr1.t array -> 'a Apron.Abstract1.t option -> unit
= "camlidl_abstract1_ap_abstract1_substitute_linexpr_array_with"
external assign_texpr_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array ->
Apron.Texpr1.t array -> 'a Apron.Abstract1.t option -> unit
= "camlidl_abstract1_ap_abstract1_assign_texpr_array_with"
external substitute_texpr_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array ->
Apron.Texpr1.t array -> 'a Apron.Abstract1.t option -> unit
= "camlidl_abstract1_ap_abstract1_substitute_texpr_array_with"
external forget_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array -> bool -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_forget_array"
external forget_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Var.t array -> bool -> unit
= "camlidl_abstract1_ap_abstract1_forget_array_with"
external change_environment :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Environment.t -> bool -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_change_environment"
external minimize_environment :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_minimize_environment"
external rename_array :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array -> Apron.Var.t array -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_rename_array"
external change_environment_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Environment.t -> bool -> unit
= "camlidl_abstract1_ap_abstract1_change_environment_with"
external minimize_environment_with :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_minimize_environment_with"
external rename_array_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t array -> Apron.Var.t array -> unit
= "camlidl_abstract1_ap_abstract1_rename_array_with"
external expand :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t -> Apron.Var.t array -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_expand"
external fold :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Var.t array -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_fold"
external expand_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Var.t -> Apron.Var.t array -> unit
= "camlidl_abstract1_ap_abstract1_expand_with"
external fold_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> Apron.Var.t array -> unit
= "camlidl_abstract1_ap_abstract1_fold_with"
external widening :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_widening"
external widening_threshold :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
'a Apron.Abstract1.t -> Apron.Lincons1.earray -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_widening_threshold"
external closure :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_closure"
external closure_with :
'a Apron.Manager.t -> 'a Apron.Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_closure_with"
val of_lincons_array :
'a Apron.Manager.t ->
Apron.Environment.t -> Apron.Lincons1.earray -> 'a Apron.Abstract1.t
val of_tcons_array :
'a Apron.Manager.t ->
Apron.Environment.t -> Apron.Tcons1.earray -> 'a Apron.Abstract1.t
val assign_linexpr :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t ->
Apron.Linexpr1.t ->
'a Apron.Abstract1.t option -> 'a Apron.Abstract1.t
val substitute_linexpr :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t ->
Apron.Linexpr1.t ->
'a Apron.Abstract1.t option -> 'a Apron.Abstract1.t
val assign_texpr :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t ->
Apron.Texpr1.t -> 'a Apron.Abstract1.t option -> 'a Apron.Abstract1.t
val substitute_texpr :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t ->
Apron.Texpr1.t -> 'a Apron.Abstract1.t option -> 'a Apron.Abstract1.t
val assign_linexpr_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t ->
Apron.Linexpr1.t -> 'a Apron.Abstract1.t option -> unit
val substitute_linexpr_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t ->
Apron.Linexpr1.t -> 'a Apron.Abstract1.t option -> unit
val assign_texpr_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t -> Apron.Texpr1.t -> 'a Apron.Abstract1.t option -> unit
val substitute_texpr_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t ->
Apron.Var.t -> Apron.Texpr1.t -> 'a Apron.Abstract1.t option -> unit
external unify :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> 'a Apron.Abstract1.t
= "camlidl_abstract1_ap_abstract1_unify"
external unify_with :
'a Apron.Manager.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_unify_with"
end
module Policy :
sig
type 'a man
and 'a t
external manager_get_manager :
'a Apron.Policy.man -> 'a Apron.Manager.t
= "camlidl_policy_ap_policy_manager_get_manager"
external manager : 'a Apron.Policy.t -> 'a Apron.Policy.man
= "camlidl_policy_ap_policy_manager"
external copy :
'a Apron.Policy.man -> 'a Apron.Policy.t -> 'a Apron.Policy.t
= "camlidl_policy_ap_policy_copy"
external fdump : 'a Apron.Policy.man -> 'a Apron.Policy.t -> unit
= "camlidl_policy_ap_policy_fdump"
external to_string : 'a Apron.Policy.man -> 'a Apron.Policy.t -> string
= "camlidl_policy_ap_policy_to_string"
external dimension : 'a Apron.Policy.man -> 'a Apron.Policy.t -> int
= "camlidl_policy_ap_policy_dimension"
external equal :
'a Apron.Policy.man -> 'a Apron.Policy.t -> 'a Apron.Policy.t -> bool
= "camlidl_policy_ap_policy_equal"
module Abstract0 :
sig
external meet_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract0.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t
= "camlidl_policy_ap_abstract0_policy_meet_apply"
external meet_array_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract0.t array -> 'a Apron.Abstract0.t
= "camlidl_policy_ap_abstract0_policy_meet_array_apply"
external meet_lincons_array_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract0.t ->
Apron.Lincons0.t array -> 'a Apron.Abstract0.t
= "camlidl_policy_ap_abstract0_policy_meet_lincons_array_apply"
external meet_tcons_array_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract0.t ->
Apron.Tcons0.t array -> 'a Apron.Abstract0.t
= "camlidl_policy_ap_abstract0_policy_meet_tcons_array_apply"
external meet_with_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> unit
= "camlidl_policy_ap_abstract0_policy_meet_with_apply"
external meet_lincons_array_with_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract0.t -> Apron.Lincons0.t array -> unit
= "camlidl_policy_ap_abstract0_policy_meet_lincons_array_with_apply"
external meet_tcons_array_with_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract0.t -> Apron.Tcons0.t array -> unit
= "camlidl_policy_ap_abstract0_policy_meet_tcons_array_with_apply"
external meet_improve :
'a Apron.Policy.man ->
'a Apron.Policy.t option ->
'a Apron.Abstract0.t -> 'a Apron.Abstract0.t -> 'a Apron.Policy.t
= "camlidl_policy_ap_abstract0_policy_meet_improve"
external meet_array_improve :
'a Apron.Policy.man ->
'a Apron.Policy.t option ->
'a Apron.Abstract0.t array -> 'a Apron.Policy.t
= "camlidl_policy_ap_abstract0_policy_meet_array_improve"
external meet_lincons_array_improve :
'a Apron.Policy.man ->
'a Apron.Policy.t option ->
'a Apron.Abstract0.t ->
Apron.Lincons0.t array -> 'a Apron.Policy.t
= "camlidl_policy_ap_abstract0_policy_meet_lincons_array_improve"
external meet_tcons_array_improve :
'a Apron.Policy.man ->
'a Apron.Policy.t option ->
'a Apron.Abstract0.t -> Apron.Tcons0.t array -> 'a Apron.Policy.t
= "camlidl_policy_ap_abstract0_policy_meet_tcons_array_improve"
end
module Abstract1 :
sig
external meet_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract1.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t
= "camlidl_policy_ap_abstract1_policy_meet_apply"
external meet_array_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract1.t array -> 'a Apron.Abstract1.t
= "camlidl_policy_ap_abstract1_policy_meet_array_apply"
external meet_lincons_array_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract1.t ->
Apron.Lincons1.earray -> 'a Apron.Abstract1.t
= "camlidl_policy_ap_abstract1_policy_meet_lincons_array_apply"
external meet_tcons_array_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract1.t ->
Apron.Tcons1.earray -> 'a Apron.Abstract1.t
= "camlidl_policy_ap_abstract1_policy_meet_tcons_array_apply"
external meet_with_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> unit
= "camlidl_policy_ap_abstract1_policy_meet_with_apply"
external meet_lincons_array_with_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract1.t -> Apron.Lincons1.earray -> unit
= "camlidl_policy_ap_abstract1_policy_meet_lincons_array_with_apply"
external meet_tcons_array_with_apply :
'a Apron.Policy.man ->
'a Apron.Policy.t ->
'a Apron.Abstract1.t -> Apron.Tcons1.earray -> unit
= "camlidl_policy_ap_abstract1_policy_meet_tcons_array_with_apply"
external meet_improve :
'a Apron.Policy.man ->
'a Apron.Policy.t option ->
'a Apron.Abstract1.t -> 'a Apron.Abstract1.t -> 'a Apron.Policy.t
= "camlidl_policy_ap_abstract1_policy_meet_improve"
external meet_array_improve :
'a Apron.Policy.man ->
'a Apron.Policy.t option ->
'a Apron.Abstract1.t array -> 'a Apron.Policy.t
= "camlidl_policy_ap_abstract1_policy_meet_array_improve"
external meet_lincons_array_improve :
'a Apron.Policy.man ->
'a Apron.Policy.t option ->
'a Apron.Abstract1.t ->
Apron.Lincons1.earray -> 'a Apron.Policy.t
= "camlidl_policy_ap_abstract1_policy_meet_lincons_array_improve"
external meet_tcons_array_improve :
'a Apron.Policy.man ->
'a Apron.Policy.t option ->
'a Apron.Abstract1.t -> Apron.Tcons1.earray -> 'a Apron.Policy.t
= "camlidl_policy_ap_abstract1_policy_meet_tcons_array_improve"
end
end
module Disjunction :
sig
type 'a t
external manager_alloc :
'a Apron.Manager.t -> 'a Apron.Disjunction.t Apron.Manager.t
= "camlidl_disjunction_ap_disjunction_manager_alloc"
external manager_decompose :
'a Apron.Disjunction.t Apron.Manager.t -> 'a Apron.Manager.t
= "camlidl_disjunction_ap_disjunction_manager_decompose"
external to_lincons0_set :
'a Apron.Disjunction.t Apron.Manager.t ->
'a Apron.Disjunction.t Apron.Abstract0.t -> Apron.Lincons0.t array
= "camlidl_disjunction_ap_disjunction_to_lincons0_set"
val to_lincons1_set :
'a Apron.Disjunction.t Apron.Manager.t ->
'a Apron.Disjunction.t Apron.Abstract1.t -> Apron.Lincons1.earray
external _decompose :
'a Apron.Disjunction.t Apron.Manager.t ->
'a Apron.Disjunction.t Apron.Abstract0.t ->
'a Apron.Abstract0.t array * int
= "camlidl_disjunction_ap_disjunction__decompose"
val decompose :
'a Apron.Disjunction.t Apron.Manager.t ->
'a Apron.Disjunction.t Apron.Abstract0.t ->
'a Apron.Abstract0.t array
external compose :
'a Apron.Disjunction.t Apron.Manager.t ->
'a Apron.Abstract0.t array ->
'a Apron.Disjunction.t Apron.Abstract0.t
= "camlidl_disjunction_ap_disjunction_compose"
val manager_is_disjunction : 'a Apron.Manager.t -> bool
val manager_of_disjunction :
'a Apron.Disjunction.t Apron.Manager.t -> 'b Apron.Manager.t
val manager_to_disjunction :
'a Apron.Manager.t -> 'b Apron.Disjunction.t Apron.Manager.t
module Abstract0 :
sig
val is_disjunction : 'a Apron.Abstract0.t -> bool
val of_disjunction :
'a Apron.Disjunction.t Apron.Abstract0.t -> 'b Apron.Abstract0.t
val to_disjunction :
'a Apron.Abstract0.t -> 'b Apron.Disjunction.t Apron.Abstract0.t
end
module Abstract1 :
sig
val is_disjunction : 'a Apron.Abstract1.t -> bool
val of_disjunction :
'a Apron.Disjunction.t Apron.Abstract1.t -> 'b Apron.Abstract1.t
val to_disjunction :
'a Apron.Abstract1.t -> 'b Apron.Disjunction.t Apron.Abstract1.t
end
end
module Apron_parser :
sig
type token =
TK_EOF
| TK_VERTEX
| TK_RAY
| TK_LINE
| TK_RAYMOD
| TK_LINEMOD
| TK_SUPEG
| TK_INFEG
| TK_SUP
| TK_INF
| TK_EG
| TK_DISEG
| TK_MOD
| TK_POW of (Apron.Texpr1.typ * Apron.Texpr1.round)
| TK_LBRACKET
| TK_RBRACKET
| TK_SEMICOLON
| TK_LPAR
| TK_RPAR
| TK_MUL of (Apron.Texpr1.typ * Apron.Texpr1.round)
| TK_ADD of (Apron.Texpr1.typ * Apron.Texpr1.round)
| TK_SUB of (Apron.Texpr1.typ * Apron.Texpr1.round)
| TK_DIV of (Apron.Texpr1.typ * Apron.Texpr1.round)
| TK_MODULO of (Apron.Texpr1.typ * Apron.Texpr1.round)
| TK_CAST of (Apron.Texpr1.typ * Apron.Texpr1.round)
| TK_SQRT of (Apron.Texpr1.typ * Apron.Texpr1.round)
| TK_MPQF of Mpqf.t
| TK_FLOAT of float
| TK_VAR of string
val lincons :
(Lexing.lexbuf -> Apron.Apron_parser.token) ->
Lexing.lexbuf -> Apron.Lincons0.typ * (string * Apron.Coeff.t) list
val generator :
(Lexing.lexbuf -> Apron.Apron_parser.token) ->
Lexing.lexbuf -> Apron.Generator0.typ * (string * Apron.Coeff.t) list
val linexpr :
(Lexing.lexbuf -> Apron.Apron_parser.token) ->
Lexing.lexbuf -> (string * Apron.Coeff.t) list
val tcons :
(Lexing.lexbuf -> Apron.Apron_parser.token) ->
Lexing.lexbuf -> Apron.Tcons0.typ * Apron.Texpr1.expr
val texpr :
(Lexing.lexbuf -> Apron.Apron_parser.token) ->
Lexing.lexbuf -> Apron.Texpr1.expr
end
module Apron_lexer :
sig
exception Error of int * int
val lex : Lexing.lexbuf -> Apron.Apron_parser.token
end
module Parser :
sig
exception Error of string
val linexpr1_of_lexbuf :
Apron.Environment.t -> Lexing.lexbuf -> Apron.Linexpr1.t
val lincons1_of_lexbuf :
Apron.Environment.t -> Lexing.lexbuf -> Apron.Lincons1.t
val generator1_of_lexbuf :
Apron.Environment.t -> Lexing.lexbuf -> Apron.Generator1.t
val texpr1expr_of_lexbuf : Lexing.lexbuf -> Apron.Texpr1.expr
val texpr1_of_lexbuf :
Apron.Environment.t -> Lexing.lexbuf -> Apron.Texpr1.t
val tcons1_of_lexbuf :
Apron.Environment.t -> Lexing.lexbuf -> Apron.Tcons1.t
val linexpr1_of_string :
Apron.Environment.t -> string -> Apron.Linexpr1.t
val lincons1_of_string :
Apron.Environment.t -> string -> Apron.Lincons1.t
val generator1_of_string :
Apron.Environment.t -> string -> Apron.Generator1.t
val texpr1expr_of_string : string -> Apron.Texpr1.expr
val texpr1_of_string : Apron.Environment.t -> string -> Apron.Texpr1.t
val tcons1_of_string : Apron.Environment.t -> string -> Apron.Tcons1.t
val lincons1_of_lstring :
Apron.Environment.t -> string list -> Apron.Lincons1.earray
val generator1_of_lstring :
Apron.Environment.t -> string list -> Apron.Generator1.earray
val tcons1_of_lstring :
Apron.Environment.t -> string list -> Apron.Tcons1.earray
val of_lstring :
'a Apron.Manager.t ->
Apron.Environment.t -> string list -> 'a Apron.Abstract1.t
end
end