Skip to content
Snippets Groups Projects
Commit 5ff19766 authored by Hai Dang's avatar Hai Dang Committed by Ralf Jung
Browse files

Add swap lemmas for exist and forall

parent e491cf47
No related branches found
No related tags found
No related merge requests found
......@@ -249,6 +249,25 @@ Proof.
- rewrite -(exist_intro ()). done.
Qed.
Lemma exist_exist {A B} (Ψ : A B PROP) :
( x y, Ψ x y) ⊣⊢ ( y x, Ψ x y).
Proof.
apply (anti_symm ());
do 2 (apply exist_elim=>?); rewrite -2!exist_intro; eauto.
Qed.
Lemma forall_forall {A B} (Ψ : A B PROP) :
( x y, Ψ x y) ⊣⊢ ( y x, Ψ x y).
Proof.
apply (anti_symm ());
do 2 (apply forall_intro=>?); rewrite 2!forall_elim; eauto.
Qed.
Lemma exist_forall {A B} (Ψ : A B PROP) :
( x, y, Ψ x y) ( y, x, Ψ x y).
Proof.
apply forall_intro=>?. apply exist_elim=>?.
rewrite -exist_intro forall_elim ; eauto.
Qed.
Lemma impl_curry P Q R : (P Q R) ⊣⊢ (P Q R).
Proof.
apply (anti_symm _).
......
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