SL.Termval nil : tval is_nil : t -> boolval is_heap_term : t -> boolval as_heap_term : t -> MemoryModel.Field.t * tval is_smt_term : t -> boolval mk_heap_term : MemoryModel.Field.t -> t -> tval of_var : Variable.t -> tval mem_var : Variable.t -> t -> boolval free_vars : t -> Variable.t listval is_ground : ground:Variable.t list -> t -> boolval is_ground' : forbidden:Variable.t list -> t -> boolTrue if the term does not contatin any of provided variables.
TODO: logic_sig?
include Datatype_sig.COMPARABLE with type t := tinclude Datatype_sig.COMPARISON with type t := tinclude Datatype_sig.PRINTABLE with type t := tinclude Datatype_sig.SHOW with type t := tval show : t -> stringString representation of type t
val pp : Stdlib.Format.formatter -> t -> unitOutput to formatter
val print : ?prefix:string -> t -> unitOutput to stdout.
val show_option : t option -> stringval print_option : ?prefix:string -> t option -> unitval dump : string -> t -> unitDump to file given by filename
val show_list : ?separator:string -> t list -> stringval pp_list : Stdlib.Format.formatter -> t list -> unitval print_list : ?separator:string -> ?prefix:string -> t list -> unitinclude Datatype_sig.COLLECTIONS with type t := tmodule Set : Datatype_sig.SET with type elt = tSet over type t
Monomorphic list over type t
module Map : Datatype_sig.MAP with type key = tPolymorphic map from t to 'a
module MonoMap
(Data : Datatype_sig.SHOW) :
Datatype_sig.MONO_MAP with type key = t and type data = Data.tMonomorphic map from t to Data.t
val hash : t -> inttype view = | Var of Variable.t| HeapTerm of MemoryModel.Field.t * t| SmtTerm of SMT.t| IfEqual of t list * t * t| BlockBegin of t| BlockEnd of tval as_var : t -> Variable.t