Skip to content
Snippets Groups Projects
Commit 6615248b authored by Robbert Krebbers's avatar Robbert Krebbers
Browse files

Make iDestructing of existentials go through always.

parent 1f3636b0
No related branches found
No related tags found
No related merge requests found
...@@ -939,6 +939,9 @@ Proof. done. Qed. ...@@ -939,6 +939,9 @@ Proof. done. Qed.
Global Instance exist_destruct_later {A} P (Φ : A uPred M) : Global Instance exist_destruct_later {A} P (Φ : A uPred M) :
ExistDestruct P Φ Inhabited A ExistDestruct ( P) (λ a, (Φ a))%I. ExistDestruct P Φ Inhabited A ExistDestruct ( P) (λ a, (Φ a))%I.
Proof. rewrite /ExistDestruct=> HP ?. by rewrite HP later_exist. Qed. 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 : Lemma tac_exist_destruct {A} Δ i p j P (Φ : A uPred M) Q :
envs_lookup i Δ = Some (p, P) ExistDestruct P Φ envs_lookup i Δ = Some (p, P) ExistDestruct P Φ
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment