Module Imandra_surface.Modular_region

type session_id = int
type id = int
type status =
| Unknown
| Feasible
| Infeasible
type t = private {
mreg_session : session_id;
mreg_id : id;
mreg_constraints : Term.t list;
mreg_invariant : Term.t;
mreg_args : Var.t list;
mreg_status : status;
}
val constraints : t -> Term.t list
val invariant : t -> Term.t
val args : t -> Var.t list
val status : t -> status
val update_constraints : f:(Term.t list -> Term.t list) -> t -> t
val update_invariant : f:(Term.t -> Term.t) -> t -> t
module Id_map : CCMap.S with type Id_map.key = id
val string_of_status : status -> string
val pp : t CCFormat.printer