From 6615248b339b3e0970f16bb5de0b1a929bf3157b Mon Sep 17 00:00:00 2001 From: Robbert Krebbers <mail@robbertkrebbers.nl> Date: Wed, 15 Jun 2016 14:35:02 +0200 Subject: [PATCH] Make iDestructing of existentials go through always. --- proofmode/coq_tactics.v | 3 +++ 1 file changed, 3 insertions(+) diff --git a/proofmode/coq_tactics.v b/proofmode/coq_tactics.v index 3e3d103fe..2b9436e89 100644 --- a/proofmode/coq_tactics.v +++ b/proofmode/coq_tactics.v @@ -939,6 +939,9 @@ Proof. done. Qed. Global Instance exist_destruct_later {A} P (Φ : A → uPred M) : ExistDestruct P Φ → Inhabited A → ExistDestruct (▷ P) (λ a, ▷ (Φ a))%I. Proof. rewrite /ExistDestruct=> HP ?. by rewrite HP later_exist. Qed. +Global Instance exist_destruct_always {A} P (Φ : A → uPred M) : + ExistDestruct P Φ → ExistDestruct (□ P) (λ a, □ (Φ a))%I. +Proof. rewrite /ExistDestruct=> HP. by rewrite HP always_exist. Qed. Lemma tac_exist_destruct {A} Δ i p j P (Φ : A → uPred M) Q : envs_lookup i Δ = Some (p, P) → ExistDestruct P Φ → -- GitLab