sig
type ('a, 'b) man = 'b ApronDD.man
type 'a t = 'a ApronDD.t
val make_man :
?global:bool -> 'a Apron.Manager.t -> ('b, 'a) Mtbdddomain0.man
val size : ('a, 'b) Mtbdddomain0.man -> 'b Mtbdddomain0.t -> int
val print :
?print_apron:((int -> string) ->
Format.formatter -> 'a Apron.Abstract0.t -> unit) ->
'b Env.t -> Format.formatter -> 'a Mtbdddomain0.t -> unit
val bottom : ('a, 'b) Mtbdddomain0.man -> 'a Env.t -> 'b Mtbdddomain0.t
val top : ('a, 'b) Mtbdddomain0.man -> 'a Env.t -> 'b Mtbdddomain0.t
val of_apron :
('a, 'b) Mtbdddomain0.man ->
'a Env.t -> 'b Apron.Abstract0.t -> 'b Mtbdddomain0.t
val is_bottom : ('a, 'b) Mtbdddomain0.man -> 'b Mtbdddomain0.t -> bool
val is_top : ('a, 'b) Mtbdddomain0.man -> 'b Mtbdddomain0.t -> bool
val is_leq :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> bool
val is_eq :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> bool
val to_bddapron :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> ('a Expr0.Bool.t * 'b Apron.Abstract0.t) list
val meet :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> 'b Mtbdddomain0.t
val join :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> 'b Mtbdddomain0.t
val meet_condition :
('a, 'b) Mtbdddomain0.man ->
'a Env.t ->
'a Cond.t -> 'b Mtbdddomain0.t -> 'a Expr0.Bool.t -> 'b Mtbdddomain0.t
val assign_lexpr :
?relational:bool ->
?nodependency:bool ->
('a, 'b) Mtbdddomain0.man ->
'a Env.t ->
'a Cond.t ->
'b Mtbdddomain0.t ->
'a list ->
'a Expr0.t list -> 'b Mtbdddomain0.t option -> 'b Mtbdddomain0.t
val substitute_lexpr :
('a, 'b) Mtbdddomain0.man ->
'a Env.t ->
'a Cond.t ->
'b Mtbdddomain0.t ->
'a list ->
'a Expr0.t list -> 'b Mtbdddomain0.t option -> 'b Mtbdddomain0.t
val forget_list :
('a, 'b) Mtbdddomain0.man ->
'a Env.t -> 'b Mtbdddomain0.t -> 'a list -> 'b Mtbdddomain0.t
val widening :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> 'b Mtbdddomain0.t
val apply_change :
bottom:'a Mtbdddomain0.t ->
('b, 'a) Mtbdddomain0.man ->
'a Mtbdddomain0.t -> Env.change -> 'a Mtbdddomain0.t
val apply_permutation :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t ->
int array option * Apron.Dim.perm option -> 'b Mtbdddomain0.t
module O :
sig
val meet_idcondb :
('a, 'b) Mtbdddomain0.man ->
('a, [> 'a Env.typ ] as 'c, [> 'a Env.typdef ] as 'd, 'e) Env.O.t ->
('a, ('a, 'c, 'd, 'e) Env.O.t) Cond.O.t ->
'b Mtbdddomain0.t -> int * bool -> 'b Mtbdddomain0.t
val size : ('a, 'b) Mtbdddomain0.man -> 'b Mtbdddomain0.t -> int
val print :
?print_apron:((int -> string) ->
Format.formatter -> 'a Apron.Abstract0.t -> unit) ->
('b, [> 'b Env.typ ], [> 'b Env.typdef ], 'c) Env.O.t ->
Format.formatter -> 'a Mtbdddomain0.t -> unit
val bottom :
('a, 'b) Mtbdddomain0.man ->
('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'c) Env.O.t ->
'b Mtbdddomain0.t
val top :
('a, 'b) Mtbdddomain0.man ->
('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'c) Env.O.t ->
'b Mtbdddomain0.t
val of_apron :
('a, 'b) Mtbdddomain0.man ->
('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'c) Env.O.t ->
'b Apron.Abstract0.t -> 'b Mtbdddomain0.t
val is_bottom : ('a, 'b) Mtbdddomain0.man -> 'b Mtbdddomain0.t -> bool
val is_top : ('a, 'b) Mtbdddomain0.man -> 'b Mtbdddomain0.t -> bool
val is_leq :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> bool
val is_eq :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> bool
val to_bddapron :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> ('a Expr0.Bool.t * 'b Apron.Abstract0.t) list
val meet :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> 'b Mtbdddomain0.t
val join :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> 'b Mtbdddomain0.t
val meet_condition :
('a, 'b) Mtbdddomain0.man ->
('a, [> 'a Env.typ ] as 'c, [> 'a Env.typdef ] as 'd, 'e) Env.O.t ->
('a, ('a, 'c, 'd, 'e) Env.O.t) Cond.O.t ->
'b Mtbdddomain0.t -> 'a Expr0.Bool.t -> 'b Mtbdddomain0.t
val assign_lexpr :
?relational:bool ->
?nodependency:bool ->
('a, 'b) Mtbdddomain0.man ->
('a, [> 'a Env.typ ] as 'c, [> 'a Env.typdef ] as 'd, 'e) Env.O.t ->
('a, ('a, 'c, 'd, 'e) Env.O.t) Cond.O.t ->
'b Mtbdddomain0.t ->
'a list ->
'a Expr0.t list -> 'b Mtbdddomain0.t option -> 'b Mtbdddomain0.t
val substitute_lexpr :
('a, 'b) Mtbdddomain0.man ->
('a, [> 'a Env.typ ] as 'c, [> 'a Env.typdef ] as 'd, 'e) Env.O.t ->
('a, ('a, 'c, 'd, 'e) Env.O.t) Cond.O.t ->
'b Mtbdddomain0.t ->
'a list ->
'a Expr0.t list -> 'b Mtbdddomain0.t option -> 'b Mtbdddomain0.t
val forget_list :
('a, 'b) Mtbdddomain0.man ->
('a, [> 'a Env.typ ], [> 'a Env.typdef ], 'c) Env.O.t ->
'b Mtbdddomain0.t -> 'a list -> 'b Mtbdddomain0.t
val widening :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t -> 'b Mtbdddomain0.t -> 'b Mtbdddomain0.t
val apply_change :
bottom:'a Mtbdddomain0.t ->
('b, 'a) Mtbdddomain0.man ->
'a Mtbdddomain0.t -> Env.change -> 'a Mtbdddomain0.t
val apply_permutation :
('a, 'b) Mtbdddomain0.man ->
'b Mtbdddomain0.t ->
int array option * Apron.Dim.perm option -> 'b Mtbdddomain0.t
end
end