proposition: Lemma pointer_range_overlap_BV_sizeof: forall {cs: composite_env} p1 p2 t1 t2, pointer_range_overlap p1 (BV_sizeof t1) p2 (BV_sizeof t2) -> pointer_range_overlap p1 (sizeof t1) p2 (sizeof t2).
proof: Proof. intros. pose proof pointer_range_overlap_non_zero _ _ _ _ H. unfold BV_sizeof in H0. destruct (access_mode t1) eqn:?H, (access_mode t2) eqn:?H; try lia. erewrite !BV_sizeof_sizeof in H by eauto. eauto. Qed.
imports: VST.msl.seplog VST.msl.log_normalize CertiGraph.msl_ext.seplog CertiGraph.msl_ext.log_normalize VST.veric.base VST.veric.rmaps VST.veric.rmaps_lemmas VST.veric.compcert_rmaps VST.veric.slice VST.veric.res_predicates VST.veric.tycontext VST.veric.expr VST.veric.address_conflict VST.veric.seplog VST.veric.mapsto_memory_block VST.msl.msl_standard VST.msl.alg_seplog CertiGraph.msl_ext.alg_seplog CertiGraph.veric_ext.res_predicates