X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fground%2Frelocation%2Fgr_tl_eq.ma;h=e5f9897c7b52a32be2b67e367fc8ec9f49d58abd;hb=8bbe582d87984526f40182c4409cbfd43108cb79;hp=d694de27097e1fa1dd6b5fd098e1a1d6c8b36027;hpb=55c768d7e45babb300b5010463ba3196a68f1bbe;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/ground/relocation/gr_tl_eq.ma b/matita/matita/contribs/lambdadelta/ground/relocation/gr_tl_eq.ma index d694de270..e5f9897c7 100644 --- a/matita/matita/contribs/lambdadelta/ground/relocation/gr_tl_eq.ma +++ b/matita/matita/contribs/lambdadelta/ground/relocation/gr_tl_eq.ma @@ -15,9 +15,9 @@ include "ground/relocation/gr_eq.ma". include "ground/relocation/gr_tl.ma". -(* TAIL FOR GENERIC RELOCATION MAPS ***********************************************************) +(* TAIL FOR GENERIC RELOCATION MAPS *****************************************) -(* Properties with gr_eq *) +(* Constructions with gr_eq *************************************************) (*** eq_refl *) corec lemma gr_eq_refl: reflexive … gr_eq. @@ -27,27 +27,27 @@ qed. (*** tl_eq_repl *) lemma gr_tl_eq_repl: - gr_eq_repl … (λf1,f2. ⫱f1 ≡ ⫱f2). + gr_eq_repl … (λf1,f2. ⫰f1 ≡ ⫰f2). #f1 #f2 * -f1 -f2 // qed. -(* Inversion lemmas with gr_eq ***************************************************) +(* Inversions with gr_eq ****************************************************) (*** eq_inv_gen *) lemma gr_eq_inv_gen (g1) (g2): g1 ≡ g2 → - ∨∨ ∧∧ ⫱g1 ≡ ⫱g2 & ⫯⫱g1 = g1 & ⫯⫱g2 = g2 - | ∧∧ ⫱g1 ≡ ⫱g2 & ↑⫱g1 = g1 & ↑⫱g2 = g2. + ∨∨ ∧∧ ⫰g1 ≡ ⫰g2 & ⫯⫰g1 = g1 & ⫯⫰g2 = g2 + | ∧∧ ⫰g1 ≡ ⫰g2 & ↑⫰g1 = g1 & ↑⫰g2 = g2. #g1 #g2 * -g1 -g2 #f1 #f2 #g1 #g2 #f * * /3 width=1 by and3_intro, or_introl, or_intror/ qed-. -(* Advanced Inversion lemmas with gr_eq *) +(* Advanced inversions with gr_eq *******************************************) (*** gr_eq_inv_px *) lemma gr_eq_inv_push_sn (g1) (g2): g1 ≡ g2 → ∀f1. ⫯f1 = g1 → - ∧∧ f1 ≡ ⫱g2 & ⫯⫱g2 = g2. + ∧∧ f1 ≡ ⫰g2 & ⫯⫰g2 = g2. #g1 #g2 #H #f1 #Hf1 elim (gr_eq_inv_gen … H) -H * #Hg #Hg1 #Hg2 destruct [ /2 width=1 by conj/ @@ -58,7 +58,7 @@ qed-. (*** gr_eq_inv_nx *) lemma gr_eq_inv_next_sn (g1) (g2): g1 ≡ g2 → ∀f1. ↑f1 = g1 → - ∧∧ f1 ≡ ⫱g2 & ↑⫱g2 = g2. + ∧∧ f1 ≡ ⫰g2 & ↑⫰g2 = g2. #g1 #g2 #H #f1 #Hf1 elim (gr_eq_inv_gen … H) -H * #Hg #Hg1 #Hg2 destruct [ elim (eq_inv_gr_push_next … Hg1) @@ -69,7 +69,7 @@ qed-. (*** gr_eq_inv_xp *) lemma gr_eq_inv_push_dx (g1) (g2): g1 ≡ g2 → ∀f2. ⫯f2 = g2 → - ∧∧ ⫱g1 ≡ f2 & ⫯⫱g1 = g1. + ∧∧ ⫰g1 ≡ f2 & ⫯⫰g1 = g1. #g1 #g2 #H #f2 #Hf2 elim (gr_eq_inv_gen … H) -H * #Hg #Hg1 #Hg2 destruct [ /2 width=1 by conj/ @@ -80,7 +80,7 @@ qed-. (*** gr_eq_inv_xn *) lemma gr_eq_inv_next_dx (g1) (g2): g1 ≡ g2 → ∀f2. ↑f2 = g2 → - ∧∧ ⫱g1 ≡ f2 & ↑⫱g1 = g1. + ∧∧ ⫰g1 ≡ f2 & ↑⫰g1 = g1. #g1 #g2 #H #f2 #Hf2 elim (gr_eq_inv_gen … H) -H * #Hg #Hg1 #Hg2 destruct [ elim (eq_inv_gr_push_next … Hg2)