Module TypedSTerm.Subst
type t= (term, term) Var.Subst.t
val empty : tval mem : t -> term Var.t -> boolval add : t -> term Var.t -> term -> tAdd new binding to substitution Fails if the variable is bound already
val find : t -> term Var.t -> term optionval find_exn : t -> term Var.t -> term- raises Not_found
if the variable is not present
val rename_var : rename_binders:bool -> t -> term Var.t -> t * term Var.tval merge : t -> t -> tval eval : ?rename_binders:bool -> t -> term -> termval eval_nonrec : t -> term -> termEvaluate under substitution, but consider the substitution as not idempotent