Hint Rewrite @gather_prop5 using not_a_prop : gather_prop.
Hint Rewrite @sepcon_andp_prop @sepcon_andp_prop' : gather_prop.
(*Hint Rewrite <- sepcon_assoc : gather_prop.*)

(* Specifications: *)
Lemma go_lower_lem1:
forall (P1 P: Prop) (QR PQR: mpred),
(P1 -> prop P && QR |-- PQR) ->
(prop (P1 /\ P ) && QR |-- PQR).
Lemma go_lower_lem1':
forall (P1 P2 P: Prop) (QR PQR: mpred),
(prop (P1 /\ (P2 /\ P)) && QR |-- PQR) ->
(prop ((P1 /\ P2) /\ P ) && QR |-- PQR).