Commit 35ba9ba1 by Robbert Krebbers

### Some test cases/uses for stronger framing in disjunctions.

parent 2fb90ca6
 ... ... @@ -47,8 +47,8 @@ Section proofs. Proof. iIntros "#HPQ". rewrite /na_inv. iDestruct 1 as (i ?) "#Hinv". iExists i. iSplit; first done. iApply (inv_iff with "[] Hinv"). iNext. iAlways. iSplit; (iIntros "[[? Ho]|?]"; [iLeft; iFrame "Ho"; by iApply "HPQ"|by iRight]). iNext; iAlways. iSplit; iIntros "[[? Ho]|\$]"; iLeft; iFrame "Ho"; by iApply "HPQ". Qed. Lemma na_alloc : (|==> ∃ p, na_own p ⊤)%I. ... ...
 ... ... @@ -104,6 +104,12 @@ Lemma test_iFrame_pure (x y z : M) : ✓ x → ⌜y ≡ z⌝ -∗ (✓ x ∧ ✓ x ∧ y ≡ z : uPred M). 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. Proof. iIntros "HP HQ". ... ...
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment