Module Archetype.Printer_model_tools

exception Anomaly of string
type error_desc =
| UnsupportedTerm of string
| UnsupportedValue of string
| TODO of string
val pp_error_desc : Ppx_deriving_runtime.Format.formatter -> error_desc -> Ppx_deriving_runtime.unit
val show_error_desc : error_desc -> Ppx_deriving_runtime.string
val emit_error : error_desc -> 'a
type env = {
f : Model.function__ option;
update_preds : (Ident.ident * Model.assignment_operator * Model.mterm) list list;
select_preds : Model.mterm list;
sum_preds : Model.mterm list;
removeif_preds : Model.mterm list;
consts : (Ident.ident * Model.mterm) list;
}
val pp_env : Ppx_deriving_runtime.Format.formatter -> env -> Ppx_deriving_runtime.unit
val show_env : env -> Ppx_deriving_runtime.string
val mk_env : ?⁠f:Model.function__ -> ?⁠update_preds:(Ident.ident * Model.assignment_operator * Model.mterm) list list -> ?⁠select_preds:Model.mterm list -> ?⁠sum_preds:Model.mterm list -> ?⁠removeif_preds:Model.mterm list -> ?⁠consts:(Ident.ident * Model.mterm) list -> unit -> env
val cmp_update : (Ident.ident * Model.assignment_operator * Model.mterm) list -> (Ident.ident * Model.assignment_operator * Model.mterm) list -> bool
val compute_env : Model.lident Model.model_gen -> env
exception Found
val is_internal : (Ident.ident * Model.mterm) list -> Model.lident -> bool
val is_const : env -> Model.lident -> bool
val get_const_dv : env -> Model.lident -> Model.mterm
val get_preds_index : Model.mterm list -> Model.mterm -> int
val get_preds_index_gen : ('a -> 'b -> bool) -> 'a list -> 'b -> int