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

Prove `(|==> ∀ x, Φ x) ⊣⊢ (∀ x, |==> Φ x)` for plain `Φ`.

parent 44dc86c8
No related branches found
No related tags found
No related merge requests found
...@@ -156,8 +156,21 @@ Section bupd_derived_sbi. ...@@ -156,8 +156,21 @@ Section bupd_derived_sbi.
by rewrite -bupd_intro -or_intro_l. by rewrite -bupd_intro -or_intro_l.
Qed. Qed.
Lemma bupd_plain P `{BiBUpdPlainly PROP, !Plain P} : (|==> P) P. Section bupd_plainly.
Proof. by rewrite {1}(plain P) bupd_plainly. Qed. Context `{BiBUpdPlainly PROP}.
Lemma bupd_plain P `{!Plain P} : (|==> P) P.
Proof. by rewrite {1}(plain P) bupd_plainly. Qed.
Lemma bupd_forall {A} (Φ : A PROP) `{ x, Plain (Φ x)} :
(|==> x, Φ x) ⊣⊢ ( x, |==> Φ x).
Proof.
apply (anti_symm _).
- apply forall_intro=> x. by rewrite (forall_elim x).
- rewrite -bupd_intro. apply forall_intro=> x.
by rewrite (forall_elim x) bupd_plain.
Qed.
End bupd_plainly.
End bupd_derived_sbi. End bupd_derived_sbi.
Section fupd_derived. Section fupd_derived.
......
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