sig
  val index : Sigs.s_lval -> Lang.F.term -> Sigs.s_lval
  val field : Sigs.s_lval -> Cil_types.fieldinfo -> Sigs.s_lval
  val equal : Sigs.s_lval -> Sigs.s_lval -> bool
  type 'a model
  type state
  val create : (module Sigs.Model with type Sigma.t = 'a) -> 'Mstate.model
  val state : 'Mstate.model -> '-> Mstate.state
  val lookup : Mstate.state -> Lang.F.term -> Sigs.mval
  val apply : (Lang.F.term -> Lang.F.term) -> Mstate.state -> Mstate.state
  val iter : (Sigs.mval -> Lang.F.term -> unit) -> Mstate.state -> unit
  val updates :
    Mstate.state Sigs.sequence -> Lang.F.Vars.t -> Sigs.update Bag.t
end