sig   type t   type value   type origin   type loc   val empty : Eval.Valuation.t   val find :     Eval.Valuation.t ->     Cil_types.exp ->     (Eval.Valuation.value, Eval.Valuation.origin) Eval.record_val Eval.or_top   val add :     Eval.Valuation.t ->     Cil_types.exp ->     (Eval.Valuation.value, Eval.Valuation.origin) Eval.record_val ->     Eval.Valuation.t   val fold :     (Cil_types.exp ->      (Eval.Valuation.value, Eval.Valuation.origin) Eval.record_val ->      '-> 'a) ->     Eval.Valuation.t -> '-> 'a   val find_loc :     Eval.Valuation.t ->     Cil_types.lval -> Eval.Valuation.loc Eval.record_loc Eval.or_top   val remove : Eval.Valuation.t -> Cil_types.exp -> Eval.Valuation.t   val remove_loc : Eval.Valuation.t -> Cil_types.lval -> Eval.Valuation.t end