Instance EqDec_ident: EqDec ident := ident_eq.Instance EqDec_byte: EqDec byte := Byte.eq_dec.(*Moved to base.v so that this file does not need to Import Clightdefs ad Ctypes
  Instance EqDec_type: EqDec type := type_eq.*)
Instance EqDec_int: EqDec int := Int.eq_dec.Instance EqDec_int64: EqDec int64 := Int64.eq_dec.Instance EqDec_float: EqDec float := Float.eq_dec.Instance EqDec_float32: EqDec float32 := Float32.eq_dec.Instance EqDex_ptr : EqDec ptrofs := Ptrofs.eq_dec.(*NEW*)

Instance EqDec_memval: EqDec memval.Instance EqDec_val: EqDec val.Instance EqDec_quantity: EqDec quantity.Definition access_at (m: mem) (loc: address) (k: perm_kind): option permission :=
   PMap.get (fst loc) (Mem.mem_access m) (snd loc) k.

Theorem alloc_access_same: forall m1 lo hi m2 b, Mem.alloc m1 lo hi = (m2, b) -> forall ofs k, lo <= ofs < hi -> access_at m2 (b,ofs) k = Some Freeable.