sig
  val model_name : string
  type t_data
  type t_exp = Toprop.T_data_mem.t_data Fol.d_term
  type t_pred = Toprop.T_data_mem.t_data Fol.d_pred
  val prop_in_data :
    (Toprop.T_data_mem.t_exp -> Toprop.T_data_mem.t_exp) ->
    Toprop.T_data_mem.t_data -> Toprop.T_data_mem.t_exp
  val eq_data : Toprop.T_data_mem.t_data -> Toprop.T_data_mem.t_data -> bool
  val pp_data : Format.formatter -> Toprop.T_data_mem.t_data -> unit
  val mk_cvar_addr : Cil_types.varinfo -> Toprop.T_data_mem.t_exp
  val mk_lvar_addr : Cil_types.logic_var -> Toprop.T_data_mem.t_exp
  val mk_cvar : Cil_types.varinfo -> Toprop.T_data_mem.t_exp
  val mk_lvar : Cil_types.logic_var -> Toprop.T_data_mem.t_exp
  val mk_field_access :
    Toprop.T_data_mem.t_exp -> Cil_types.fieldinfo -> Toprop.T_data_mem.t_exp
  val mk_index_access :
    Toprop.T_data_mem.t_exp ->
    Cil_types.logic_type ->
    Toprop.T_data_mem.t_exp -> Toprop.T_data_mem.t_exp
  val mk_field_shift :
    Toprop.T_data_mem.t_exp -> Cil_types.fieldinfo -> Toprop.T_data_mem.t_exp
  val mk_index_shift :
    Toprop.T_data_mem.t_exp ->
    Cil_types.logic_type ->
    Toprop.T_data_mem.t_exp -> Toprop.T_data_mem.t_exp
  val mk_shift_pointer :
    Toprop.T_data_mem.t_exp ->
    Cil_types.logic_type ->
    Toprop.T_data_mem.t_exp -> Toprop.T_data_mem.t_exp
  val mk_access_pointer :
    Toprop.T_data_mem.t_exp ->
    Cil_types.logic_type -> Toprop.T_data_mem.t_exp
  val mk_field_update :
    Toprop.T_data_mem.t_exp ->
    Cil_types.fieldinfo -> Toprop.T_data_mem.t_exp -> Toprop.T_data_mem.t_exp
  val mk_index_update :
    Toprop.T_data_mem.t_exp ->
    Toprop.T_data_mem.t_exp ->
    Toprop.T_data_mem.t_exp -> Toprop.T_data_mem.t_exp
  val expr_cast :
    Cil_types.typ -> Toprop.T_data_mem.t_exp -> Toprop.T_data_mem.t_exp
end