Hint Rewrite split_first_PROP using not_conj_notation : norm1.

Lemma semax_frame_perm:
forall (Qframe : list localdef)
(Rframe : list mpred)
(Espec : OracleKind) {cs: compspecs}
(Delta : tycontext)
(P : list Prop) (Q : list localdef) (c : statement)
(R : list mpred)
(Q1 : list localdef) (R1 : list mpred)
(P2 : list Prop) (Q2 : list localdef)
(R2 : list mpred),
closed_wrt_modvars c (LOCALx Qframe (SEPx Rframe)) ->
Permutation (Qframe ++ Q1) Q ->
Permutation (Rframe ++ R1)  R ->
semax Delta (PROPx P (LOCALx Q1 (SEPx R1))) c
(normal_ret_assert (PROPx P2 (LOCALx Q2 (SEPx R2)))) ->
semax Delta (PROPx P (LOCALx Q (SEPx R))) c
(normal_ret_assert
(PROPx P2 (LOCALx (Q2 ++ Qframe) (SEPx (R2 ++ Rframe))))).