(* Lemma by_value_data_at_: forall sh t p, type_is_by_value t = true -> data_at_ sh t p = !! field_compatible t nil p && mapsto_ sh t p. *)
(************************************************  Transformation between data_at and data_at_rec. This is used in transformation between field_at and data_at.  ************************************************)

Lemma lower_sepcon_val':
forall (P Q: val->mpred) v,
((P*Q) v) = (P v * Q v).