]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/rt_computation/cnuw.ma
update in ground_2, static_2, basic_2, apps_2, alpha_1
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / rt_computation / cnuw.ma
index 72a8e9ac35a042a5d1b02b3921dec6598c235905..a02ea47dfaf53b0a36d0f2abb8b15cffabbe65fa 100644 (file)
@@ -19,94 +19,39 @@ include "basic_2/rt_computation/cpms.ma".
 (* NORMAL TERMS FOR T-UNUNBOUND WHD RT-TRANSITION ***************************)
 
 definition cnuw (h) (G) (L): predicate term ≝
-           Î»T1. â\88\80n,T2. â¦\83G,Lâ¦\84 ⊢ T1 ➡*[n,h] T2 → T1 ≅ T2.
+           Î»T1. â\88\80n,T2. â\9dªG,Lâ\9d« ⊢ T1 ➡*[n,h] T2 → T1 ≅ T2.
 
 interpretation
   "normality for t-unbound weak head context-sensitive parallel rt-transition (term)"
   'PRedITNormal h G L T = (cnuw h G L T).
 
-lemma cpm_inv_lref1_ctop (n) (h) (G):
-      ∀X2,i. ⦃G,⋆⦄ ⊢ #i ➡[n,h] X2 → ∧∧ X2 = #i & n = 0.
-#n #h #G #X2 * [| #i ] #H
-[ elim (cpm_inv_zero1 … H) -H *
-  [ #H1 #H2 destruct /2 width=1 by conj/
-  | #Y #X1 #X2 #_ #_ #H destruct
-  | #m #Y #X1 #X2 #_ #_ #H destruct
-  ]
-| elim (cpm_inv_lref1 … H) -H *
-  [ #H1 #H2 destruct /2 width=1 by conj/
-  | #Z #Y #X0 #_ #_ #H destruct
-  ]
-]
-qed.
-
-lemma cpm_inv_zero1_unit (n) (h) (I) (K) (G):
-      ∀X2. ⦃G,K.ⓤ{I}⦄ ⊢ #0 ➡[n,h] X2 → ∧∧ X2 = #0 & n = 0.
-#n #h #I #G #K #X2 #H
-elim (cpm_inv_zero1 … H) -H *
-[ #H1 #H2 destruct /2 width=1 by conj/
-| #Y #X1 #X2 #_ #_ #H destruct
-| #m #Y #X1 #X2 #_ #_ #H destruct
-]
-qed.
-
-lemma cpms_inv_lref1_ctop (n) (h) (G):
-      ∀X2,i. ⦃G,⋆⦄ ⊢ #i ➡*[n,h] X2 → ∧∧ X2 = #i & n = 0.
-#n #h #G #X2 #i #H @(cpms_ind_dx … H) -X2
-[ /2 width=1 by conj/
-| #n1 #n2 #X #X2 #_ * #HX #Hn1 #HX2 destruct
-  elim (cpm_inv_lref1_ctop … HX2) -HX2 #H1 #H2 destruct
-  /2 width=1 by conj/
-]
-qed-.
-
-lemma cpms_inv_zero1_unit (n) (h) (I) (K) (G):
-      ∀X2. ⦃G,K.ⓤ{I}⦄ ⊢ #0 ➡*[n,h] X2 → ∧∧ X2 = #0 & n = 0.
-#n #h #I #G #K #X2 #H @(cpms_ind_dx … H) -X2
-[ /2 width=1 by conj/
-| #n1 #n2 #X #X2 #_ * #HX #Hn1 #HX2 destruct
-  elim (cpm_inv_zero1_unit … HX2) -HX2 #H1 #H2 destruct
-  /2 width=1 by conj/
-]
-qed-.
-
-lemma cpms_inv_gref1 (n) (h) (G) (L):
-      ∀X2,l. ⦃G,L⦄ ⊢ §l ➡*[n,h] X2 → ∧∧ X2 = §l & n = 0.
-#n #h #G #L #X2 #l #H @(cpms_ind_dx … H) -X2
-[ /2 width=1 by conj/
-| #n1 #n2 #X #X2 #_ * #HX #Hn1 #HX2 destruct
-  elim (cpm_inv_gref1 … HX2) -HX2 #H1 #H2 destruct
-  /2 width=1 by conj/
-]
-qed-.
-
 (* Basic properties *********************************************************)
 
-lemma cnuw_sort (h) (G) (L): â\88\80s. â¦\83G,Lâ¦\84 ⊢ ➡𝐍𝐖*[h] ⋆s.
+lemma cnuw_sort (h) (G) (L): â\88\80s. â\9dªG,Lâ\9d« ⊢ ➡𝐍𝐖*[h] ⋆s.
 #h #G #L #s1 #n #X #H
 lapply (cpms_inv_sort1 … H) -H #H destruct //
 qed.
 
-lemma cnuw_ctop (h) (G): â\88\80i. â¦\83G,â\8b\86â¦\84 ⊢ ➡𝐍𝐖*[h] #i.
+lemma cnuw_ctop (h) (G): â\88\80i. â\9dªG,â\8b\86â\9d« ⊢ ➡𝐍𝐖*[h] #i.
 #h #G #i #n #X #H
 elim (cpms_inv_lref1_ctop … H) -H #H #_ destruct //
 qed.
 
-lemma cnuw_zero_unit (h) (G) (L): â\88\80I. â¦\83G,L.â\93¤{I}â¦\84 ⊢ ➡𝐍𝐖*[h] #0.
+lemma cnuw_zero_unit (h) (G) (L): â\88\80I. â\9dªG,L.â\93¤[I]â\9d« ⊢ ➡𝐍𝐖*[h] #0.
 #h #G #L #I #n #X #H
 elim (cpms_inv_zero1_unit … H) -H #H #_ destruct //
 qed.
 
-lemma cnuw_gref (h) (G) (L): â\88\80l. â¦\83G,Lâ¦\84 ⊢ ➡𝐍𝐖*[h] §l.
+lemma cnuw_gref (h) (G) (L): â\88\80l. â\9dªG,Lâ\9d« ⊢ ➡𝐍𝐖*[h] §l.
 #h #G #L #l1 #n #X #H
 elim (cpms_inv_gref1 … H) -H #H #_ destruct //
 qed.
 
 (* Basic_inversion lemmas ***************************************************)
 
-lemma cnuw_inv_zero_pair (h) (I) (G) (L): â\88\80V. â¦\83G,L.â\93\91{I}Vâ¦\84 ⊢ ➡𝐍𝐖*[h] #0 → ⊥.
+lemma cnuw_inv_zero_pair (h) (I) (G) (L): â\88\80V. â\9dªG,L.â\93\91[I]Vâ\9d« ⊢ ➡𝐍𝐖*[h] #0 → ⊥.
 #h * #G #L #V #H
-elim (lifts_total V (ð\9d\90\94â\9d´1â\9dµ)) #W #HVW
+elim (lifts_total V (ð\9d\90\94â\9d¨1â\9d©)) #W #HVW
 [ lapply (H 0 W ?) [ /3 width=3 by cpm_cpms, cpm_delta/ ]
 | lapply (H 1 W ?) [ /3 width=3 by cpm_cpms, cpm_ell/ ]
 ] -H #HW
@@ -115,16 +60,16 @@ lapply (tweq_inv_lref_sn … HW) -HW #H destruct
 qed-.
 
 lemma cnuw_inv_cast (h) (G) (L):
-      â\88\80V,T. â¦\83G,Lâ¦\84 ⊢ ➡𝐍𝐖*[h] ⓝV.T → ⊥.
+      â\88\80V,T. â\9dªG,Lâ\9d« ⊢ ➡𝐍𝐖*[h] ⓝV.T → ⊥.
 #h #G #L #V #T #H
 lapply (H 0 T ?) [ /3 width=1 by cpm_cpms, cpm_eps/ ] -H #H
-/2 width=3 by tweq_inv_cast_sn_XY_Y/
+/2 width=3 by tweq_inv_cast_xy_y/
 qed-.
 
 (* Basic forward lemmas *****************************************************)
 
 lemma cnuw_fwd_appl (h) (G) (L):
-      â\88\80V,T. â¦\83G,Lâ¦\84 â\8a¢ â\9e¡ð\9d\90\8dð\9d\90\96*[h] â\93\90V.T â\86\92 â¦\83G,Lâ¦\84 ⊢ ➡𝐍𝐖*[h] T.
+      â\88\80V,T. â\9dªG,Lâ\9d« â\8a¢ â\9e¡ð\9d\90\8dð\9d\90\96*[h] â\93\90V.T â\86\92 â\9dªG,Lâ\9d« ⊢ ➡𝐍𝐖*[h] T.
 #h #G #L #V #T1 #HT1 #n #T2 #HT12
 lapply (HT1 n (ⓐV.T2) ?) -HT1
 /2 width=3 by cpms_appl_dx, tweq_inv_appl_bi/