diff --git a/theories/base_logic/derived.v b/theories/base_logic/derived.v
index 11772f13cc2eeb9022bba7ff36d1053a2553eee8..a72988e00cb4791bb8a5d619970a5b743ea7d244 100644
--- a/theories/base_logic/derived.v
+++ b/theories/base_logic/derived.v
@@ -438,11 +438,7 @@ Global Instance False_sep : RightAbsorb (⊣⊢) False%I (@uPred_sep M).
 Proof. intros P; apply (anti_symm _); auto. Qed.
 
 Lemma entails_equiv_and P Q : (P ⊣⊢ Q ∧ P) ↔ (P ⊢ Q).
-Proof.
-  split; first by intros ->; apply uPred.and_elim_l. intros PQ.
-  apply uPred.equiv_spec; split;
-   [by apply uPred.and_intro|apply uPred.and_elim_r].
-Qed.
+Proof. split. by intros ->; auto. intros; apply (anti_symm _); auto. Qed.
 Lemma sep_and_l P Q R : P ∗ (Q ∧ R) ⊢ (P ∗ Q) ∧ (P ∗ R).
 Proof. auto. Qed.
 Lemma sep_and_r P Q R : (P ∧ Q) ∗ R ⊢ (P ∗ R) ∧ (Q ∗ R).