Module GobApron.Environment

A few code elements for environment changes from functions as remove_vars etc. have been moved to sharedFunctions as they are needed in a similar way inside affineEqualityDomain. A module that includes various methods used by variable handling operations such as add_vars, remove_vars etc. in apronDomain and affineEqualityDomain.

type typvar = Apron.Environment.typvar =
  1. | INT
  2. | REAL
and t = Apron.Environment.t
val make : Apron.Var.t array -> Apron.Var.t array -> t
val add : t -> Apron.Var.t array -> Apron.Var.t array -> t
val remove : t -> Apron.Var.t array -> t
val rename : t -> Apron.Var.t array -> Apron.Var.t array -> t
val rename_perm : t -> Apron.Var.t array -> Apron.Var.t array -> t * Apron.Dim.perm
val lce : t -> t -> t
val lce_change : t -> t -> t * Apron.Dim.change option * Apron.Dim.change option
val dimchange : t -> t -> Apron.Dim.change
val dimchange2 : t -> t -> Apron.Dim.change2
val equal : t -> t -> bool
val compare : t -> t -> int
val hash : t -> int
val dimension : t -> Apron.Dim.dimension
val size : t -> int
val mem_var : t -> Apron.Var.t -> bool
val typ_of_var : t -> Apron.Var.t -> typvar
val vars : t -> Apron.Var.t array * Apron.Var.t array
val var_of_dim : t -> Apron.Dim.t -> Apron.Var.t
val dim_of_var : t -> Apron.Var.t -> Apron.Dim.t
val print : ?first:(unit, Stdlib.Format.formatter, unit) Stdlib.format -> ?sep:(unit, Stdlib.Format.formatter, unit) Stdlib.format -> ?last:(unit, Stdlib.Format.formatter, unit) Stdlib.format -> Stdlib.Format.formatter -> t -> unit
val ivars_only : {Environment}3.t -> Apron.Var.t list
val add_vars : {Environment}3.t -> Apron.Var.t list -> {Environment}3.t
val remove_vars : {Environment}3.t -> Apron.Var.t list -> {Environment}3.t
val remove_filter : {Environment}3.t -> (Apron.Var.t -> bool) -> {Environment}3.t
val keep_vars : {Environment}3.t -> Apron.Var.t list -> {Environment}3.t
val keep_filter : {Environment}3.t -> (Apron.Var.t -> bool) -> {Environment}3.t