]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/dynamic/cnv_cpm_teqx_trans.ma
update in ground_2, static_2, basic_2, apps_2, alpha_1
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / dynamic / cnv_cpm_teqx_trans.ma
index 1736148f785dc3a89dec6ad2a269d4c3e612dce4..2ff1bbb6d236e010240a14a1145f038c922c061c 100644 (file)
@@ -18,16 +18,16 @@ include "basic_2/dynamic/cnv_cpm_teqx.ma".
 (* CONTEXT-SENSITIVE NATIVE VALIDITY FOR TERMS ******************************)
 
 definition IH_cnv_cpm_teqx_cpm_trans (h) (a): relation3 genv lenv term ≝
-           Î»G,L,T1. â¦\83G,Lâ¦\84 ⊢ T1 ![h,a] →
-           â\88\80n1,T. â¦\83G,Lâ¦\84 ⊢ T1 ➡[n1,h] T → T1 ≛ T →
-           â\88\80n2,T2. â¦\83G,Lâ¦\84 ⊢ T ➡[n2,h] T2 →
-           â\88\83â\88\83T0. â¦\83G,Lâ¦\84 â\8a¢ T1 â\9e¡[n2,h] T0 & â¦\83G,Lâ¦\84 ⊢ T0 ➡[n1,h] T2 & T0 ≛ T2.
+           Î»G,L,T1. â\9dªG,Lâ\9d« ⊢ T1 ![h,a] →
+           â\88\80n1,T. â\9dªG,Lâ\9d« ⊢ T1 ➡[n1,h] T → T1 ≛ T →
+           â\88\80n2,T2. â\9dªG,Lâ\9d« ⊢ T ➡[n2,h] T2 →
+           â\88\83â\88\83T0. â\9dªG,Lâ\9d« â\8a¢ T1 â\9e¡[n2,h] T0 & â\9dªG,Lâ\9d« ⊢ T0 ➡[n1,h] T2 & T0 ≛ T2.
 
 (* Transitive properties restricted rt-transition for terms *****************)
 
 fact cnv_cpm_teqx_cpm_trans_sub (h) (a) (G0) (L0) (T0):
-     (â\88\80G,L,T. â¦\83G0,L0,T0â¦\84 >[h] â¦\83G,L,Tâ¦\84 → IH_cnv_cpm_trans_lpr h a G L T) →
-     (â\88\80G,L,T. â¦\83G0,L0,T0â¦\84 â¬\82+ â¦\83G,L,Tâ¦\84 → IH_cnv_cpm_teqx_cpm_trans h a G L T) →
+     (â\88\80G,L,T. â\9dªG0,L0,T0â\9d« >[h] â\9dªG,L,Tâ\9d« → IH_cnv_cpm_trans_lpr h a G L T) →
+     (â\88\80G,L,T. â\9dªG0,L0,T0â\9d« â¬\82+ â\9dªG,L,Tâ\9d« → IH_cnv_cpm_teqx_cpm_trans h a G L T) →
      ∀G,L,T1. G0 = G → L0 = L → T0 = T1 → IH_cnv_cpm_teqx_cpm_trans h a G L T1.
 #h #a #G0 #L0 #T0 #IH2 #IH1 #G #L * [| * [| * ]]
 [ #I #_ #_ #_ #_ #n1 #X1 #H1X #H2X #n2 #X2 #HX2 destruct -G0 -L0 -T0
@@ -42,8 +42,8 @@ fact cnv_cpm_teqx_cpm_trans_sub (h) (a) (G0) (L0) (T0):
   elim (cpm_inv_bind1 … HX2) -HX2 *
   [ #V2 #T2 #HV12 #HT2 #H destruct
     elim (IH1 … H0T1 … H1T1 H2T1 … HT2) -T -IH1 [| // ] #T0 #HT10 #H1T02 #H2T02
-    lapply (IH2 … H0T1 … HT10 (L.ⓑ{I}V1) ?) -IH2 -H0T1 [3:|*: /2 width=1 by fqup_fpbg/ ] #HT0
-    lapply (cpm_teqx_free … HT0 … H1T02 H2T02 G (L.ⓑ{I}V2)) -H1T02 #H1T02
+    lapply (IH2 … H0T1 … HT10 (L.ⓑ[I]V1) ?) -IH2 -H0T1 [3:|*: /2 width=1 by fqup_fpbg/ ] #HT0
+    lapply (cpm_teqx_free … HT0 … H1T02 H2T02 G (L.ⓑ[I]V2)) -H1T02 #H1T02
     /3 width=6 by cpm_bind, teqx_pair, ex3_intro/
   | #T2 #HT2 #HTX2 #H1 #H2 destruct -IH2
     elim (teqx_inv_lifts_dx … H2T1 … HT2) -H2T1 #XT #HXT1 #H2XT2
@@ -89,7 +89,7 @@ fact cnv_cpm_teqx_cpm_trans_sub (h) (a) (G0) (L0) (T0):
 qed-.
 
 fact cnv_cpm_teqx_cpm_trans_aux (h) (a) (G0) (L0) (T0):
-     (â\88\80G,L,T. â¦\83G0,L0,T0â¦\84 >[h] â¦\83G,L,Tâ¦\84 → IH_cnv_cpm_trans_lpr h a G L T) →
+     (â\88\80G,L,T. â\9dªG0,L0,T0â\9d« >[h] â\9dªG,L,Tâ\9d« → IH_cnv_cpm_trans_lpr h a G L T) →
      IH_cnv_cpm_teqx_cpm_trans h a G0 L0 T0.
 #h #a #G0 #L0 #T0
 @(fqup_wf_ind (Ⓣ) … G0 L0 T0) -G0 -L0 -T0 #G0 #L0 #T0 #IH #IH0