Definition array_at_ (sh: Share.t) (t: type) (gfs: list gfield) (lo hi: Z) : val -> mpred :=
 array_at sh t gfs lo hi (list_repeat (Z.to_nat (hi-lo)) (default_val _)).

Lemma field_at__offset_zero: forall sh t gfs p, field_at_ sh t gfs p = field_at_ sh t gfs (offset_val 0 p).