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

Some test cases/uses for stronger framing in disjunctions.

parent 2fb90ca6
No related branches found
No related tags found
No related merge requests found
...@@ -47,8 +47,8 @@ Section proofs. ...@@ -47,8 +47,8 @@ Section proofs.
Proof. Proof.
iIntros "#HPQ". rewrite /na_inv. iDestruct 1 as (i ?) "#Hinv". iIntros "#HPQ". rewrite /na_inv. iDestruct 1 as (i ?) "#Hinv".
iExists i. iSplit; first done. iApply (inv_iff with "[] Hinv"). iExists i. iSplit; first done. iApply (inv_iff with "[] Hinv").
iNext. iAlways. iSplit; (iIntros "[[? Ho]|?]"; iNext; iAlways.
[iLeft; iFrame "Ho"; by iApply "HPQ"|by iRight]). iSplit; iIntros "[[? Ho]|$]"; iLeft; iFrame "Ho"; by iApply "HPQ".
Qed. Qed.
Lemma na_alloc : (|==> p, na_own p )%I. Lemma na_alloc : (|==> p, na_own p )%I.
......
...@@ -104,6 +104,12 @@ Lemma test_iFrame_pure (x y z : M) : ...@@ -104,6 +104,12 @@ Lemma test_iFrame_pure (x y z : M) :
x y z -∗ ( x x y z : uPred M). x y z -∗ ( x x y z : uPred M).
Proof. iIntros (Hv) "Hxy". by iFrame (Hv Hv) "Hxy". Qed. Proof. iIntros (Hv) "Hxy". by iFrame (Hv Hv) "Hxy". Qed.
Lemma test_iFrame_disjunction_1 P1 P2 Q1 Q2 :
P1 -∗ Q2 -∗ P2 -∗ (P1 P2 False P2) (Q1 Q2).
Proof. iIntros "#HP1 HQ2 HP2". iFrame "HP1 HQ2 HP2". Qed.
Lemma test_iFrame_disjunction_2 P : P -∗ (True True) P.
Proof. iIntros "HP". iFrame "HP". auto. Qed.
Lemma test_iAssert_persistent P Q : P -∗ Q -∗ True. Lemma test_iAssert_persistent P Q : P -∗ Q -∗ True.
Proof. Proof.
iIntros "HP HQ". iIntros "HP HQ".
......
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