sig
type t = { mutable abstract0 : Abstract0.t; mutable env : Environment.t; }
type box1 = {
mutable interval_array : Interval.t array;
mutable box1_env : Environment.t;
}
val copy : Manager.t -> Abstract1.t -> Abstract1.t
val size : Manager.t -> Abstract1.t -> int
val minimize : Manager.t -> Abstract1.t -> unit
val canonicalize : Manager.t -> Abstract1.t -> unit
val approximate : Manager.t -> Abstract1.t -> 'a -> int -> unit
val is_minimal : Manager.t -> Abstract1.t -> Manager.tbool
val is_canonical : Manager.t -> Abstract1.t -> Manager.tbool
external fdump : Manager.t -> Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_fdump"
val print : Format.formatter -> Abstract1.t -> unit
external bottom : Manager.t -> Environment.t -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_bottom"
external top : Manager.t -> Environment.t -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_top"
external of_box :
Manager.t ->
Environment.t -> Var.t array -> Interval.t array -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_of_box"
external of_lincons_array :
Manager.t -> Environment.t -> Lincons1.earray -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_of_lincons_array"
val manager : Abstract1.t -> Manager.t
val env : Abstract1.t -> Environment.t
val abstract0 : Abstract1.t -> Abstract0.t
val is_bottom : Manager.t -> Abstract1.t -> Manager.tbool
val is_top : Manager.t -> Abstract1.t -> Manager.tbool
external is_leq : Manager.t -> Abstract1.t -> Abstract1.t -> Manager.tbool
= "camlidl_abstract1_ap_abstract1_is_leq"
external is_eq : Manager.t -> Abstract1.t -> Abstract1.t -> Manager.tbool
= "camlidl_abstract1_ap_abstract1_is_eq"
external sat_lincons :
Manager.t -> Abstract1.t -> Lincons1.t -> Manager.tbool
= "camlidl_abstract1_ap_abstract1_sat_lincons"
external sat_interval :
Manager.t -> Abstract1.t -> Var.t -> Interval.t -> Manager.tbool
= "camlidl_abstract1_ap_abstract1_sat_interval"
external is_variable_unconstrained :
Manager.t -> Abstract1.t -> Var.t -> Manager.tbool
= "camlidl_abstract1_ap_abstract1_is_variable_unconstrained"
external bound_variable : Manager.t -> Abstract1.t -> Var.t -> Interval.t
= "camlidl_abstract1_ap_abstract1_bound_variable"
external bound_linexpr :
Manager.t -> Abstract1.t -> Linexpr1.t -> Interval.t
= "camlidl_abstract1_ap_abstract1_bound_linexpr"
val to_box : Manager.t -> Abstract1.t -> Abstract1.box1
val to_lincons_array : Manager.t -> Abstract1.t -> Lincons1.earray
val to_generator_array : Manager.t -> Abstract1.t -> Generator1.earray
external meet : Manager.t -> Abstract1.t -> Abstract1.t -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_meet"
external meet_array : Manager.t -> Abstract1.t array -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_meet_array"
external meet_lincons_array :
Manager.t -> Abstract1.t -> Lincons1.earray -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_meet_lincons_array"
external join : Manager.t -> Abstract1.t -> Abstract1.t -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_join"
external join_array : Manager.t -> Abstract1.t array -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_join_array"
external add_ray_array :
Manager.t -> Abstract1.t -> Generator1.earray -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_add_ray_array"
external meet_with : Manager.t -> Abstract1.t -> Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_meet_with"
external meet_lincons_array_with :
Manager.t -> Abstract1.t -> Lincons1.earray -> unit
= "camlidl_abstract1_ap_abstract1_meet_lincons_array_with"
external join_with : Manager.t -> Abstract1.t -> Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_join_with"
external add_ray_array_with :
Manager.t -> Abstract1.t -> Generator1.earray -> unit
= "camlidl_abstract1_ap_abstract1_add_ray_array_with"
external assign_linexpr :
Manager.t ->
Abstract1.t -> Var.t -> Linexpr1.t -> Abstract1.t option -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_assign_linexpr"
external substitute_linexpr :
Manager.t ->
Abstract1.t -> Var.t -> Linexpr1.t -> Abstract1.t option -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_substitute_linexpr"
external assign_linexpr_array :
Manager.t ->
Abstract1.t ->
Var.t array -> Linexpr1.t array -> Abstract1.t option -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_assign_linexpr_array"
external substitute_linexpr_array :
Manager.t ->
Abstract1.t ->
Var.t array -> Linexpr1.t array -> Abstract1.t option -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_substitute_linexpr_array"
external assign_linexpr_with :
Manager.t ->
Abstract1.t -> Var.t -> Linexpr1.t -> Abstract1.t option -> unit
= "camlidl_abstract1_ap_abstract1_assign_linexpr_with"
external substitute_linexpr_with :
Manager.t ->
Abstract1.t -> Var.t -> Linexpr1.t -> Abstract1.t option -> unit
= "camlidl_abstract1_ap_abstract1_substitute_linexpr_with"
external assign_linexpr_array_with :
Manager.t ->
Abstract1.t ->
Var.t array -> Linexpr1.t array -> Abstract1.t option -> unit
= "camlidl_abstract1_ap_abstract1_assign_linexpr_array_with"
external substitute_linexpr_array_with :
Manager.t ->
Abstract1.t ->
Var.t array -> Linexpr1.t array -> Abstract1.t option -> unit
= "camlidl_abstract1_ap_abstract1_substitute_linexpr_array_with"
external forget_array :
Manager.t -> Abstract1.t -> Var.t array -> bool -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_forget_array"
external forget_array_with :
Manager.t -> Abstract1.t -> Var.t array -> bool -> unit
= "camlidl_abstract1_ap_abstract1_forget_array_with"
external change_environment :
Manager.t -> Abstract1.t -> Environment.t -> bool -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_change_environment"
external minimize_environment : Manager.t -> Abstract1.t -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_minimize_environment"
external rename_array :
Manager.t -> Abstract1.t -> Var.t array -> Var.t array -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_rename_array"
external change_environment_with :
Manager.t -> Abstract1.t -> Environment.t -> bool -> unit
= "camlidl_abstract1_ap_abstract1_change_environment_with"
external minimize_environment_with : Manager.t -> Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_minimize_environment_with"
external rename_array_with :
Manager.t -> Abstract1.t -> Var.t array -> Var.t array -> unit
= "camlidl_abstract1_ap_abstract1_rename_array_with"
external expand :
Manager.t -> Abstract1.t -> Var.t -> Var.t array -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_expand"
external fold : Manager.t -> Abstract1.t -> Var.t array -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_fold"
external expand_with :
Manager.t -> Abstract1.t -> Var.t -> Var.t array -> unit
= "camlidl_abstract1_ap_abstract1_expand_with"
external fold_with : Manager.t -> Abstract1.t -> Var.t array -> unit
= "camlidl_abstract1_ap_abstract1_fold_with"
external widening : Manager.t -> Abstract1.t -> Abstract1.t -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_widening"
external widening_threshold :
Manager.t -> Abstract1.t -> Abstract1.t -> Lincons1.earray -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_widening_threshold"
external closure : Manager.t -> Abstract1.t -> Abstract1.t
= "camlidl_abstract1_ap_abstract1_closure"
external closure_with : Manager.t -> Abstract1.t -> unit
= "camlidl_abstract1_ap_abstract1_closure_with"
end