Local Open Scope logic.
destruct v; simpl; trivial. rewrite Z.add_0_r.
specialize (Ptrofs.unsigned_range i); intros. omega.
Qed.
unfold offset_in_range; intros.
destruct d; simpl in *; trivial.
split; try omega.
apply Z.add_nonneg_nonneg. apply (Ptrofs.unsigned_range i). omega.
Qed.

Lemma sizeof_Zlength_nonneg {A} {ge: composite_env} t (d:list A): 0 <= sizeof t * Zlength d.