]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/dynamic/cnv_cpm_teqx_conf.ma
milestone update in basic_2
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / dynamic / cnv_cpm_teqx_conf.ma
index f894128ac85e885eb5d4a35d21699856f62fc504..546223ed6506d24aca24228a1d2d83a9e649c277 100644 (file)
 (*                                                                        *)
 (**************************************************************************)
 
-include "ground_2/xoa/ex_4_1_props.ma".
+include "ground/xoa/ex_4_1_props.ma".
+include "basic_2/rt_computation/fpbg_fqus.ma".
 include "basic_2/dynamic/cnv_cpm_teqx.ma".
 
 (* CONTEXT-SENSITIVE NATIVE VALIDITY FOR TERMS ******************************)
 
 definition IH_cnv_cpm_teqx_conf_lpr (h) (a): relation3 genv lenv term ≝
-           Î»G,L0,T0. â¦\83G,L0â¦\84 ⊢ T0 ![h,a] →
-           â\88\80n1,T1. â¦\83G,L0â¦\84 â\8a¢ T0 â\9e¡[n1,h] T1 â\86\92 T0 â\89\9b T1 →
-           â\88\80n2,T2. â¦\83G,L0â¦\84 â\8a¢ T0 â\9e¡[n2,h] T2 â\86\92 T0 â\89\9b T2 →
-           â\88\80L1. â¦\83G,L0â¦\84 â\8a¢ â\9e¡[h] L1 â\86\92 â\88\80L2. â¦\83G,L0â¦\84 â\8a¢ â\9e¡[h] L2 →
-           â\88\83â\88\83T. â¦\83G,L1â¦\84 â\8a¢ T1 â\9e¡[n2-n1,h] T & T1 â\89\9b T & â¦\83G,L2â¦\84 â\8a¢ T2 â\9e¡[n1-n2,h] T & T2 â\89\9b T.
+           Î»G,L0,T0. â\9dªG,L0â\9d« ⊢ T0 ![h,a] →
+           â\88\80n1,T1. â\9dªG,L0â\9d« â\8a¢ T0 â\9e¡[h,n1] T1 â\86\92 T0 â\89\85 T1 →
+           â\88\80n2,T2. â\9dªG,L0â\9d« â\8a¢ T0 â\9e¡[h,n2] T2 â\86\92 T0 â\89\85 T2 →
+           â\88\80L1. â\9dªG,L0â\9d« â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9dªG,L0â\9d« â\8a¢ â\9e¡[h,0] L2 →
+           â\88\83â\88\83T. â\9dªG,L1â\9d« â\8a¢ T1 â\9e¡[h,n2-n1] T & T1 â\89\85 T & â\9dªG,L2â\9d« â\8a¢ T2 â\9e¡[h,n1-n2] T & T2 â\89\85 T.
 
 (* Diamond propery with restricted rt-transition for terms ******************)
 
 fact cnv_cpm_teqx_conf_lpr_atom_atom_aux (h) (G0) (L1) (L2) (I):
-     â\88\83â\88\83T. â¦\83G0,L1â¦\84 â\8a¢ â\93ª{I} â\9e¡[h] T & â\93ª{I} â\89\9b T & â¦\83G0,L2â¦\84 â\8a¢ â\93ª{I} â\9e¡[h] T & â\93ª{I} â\89\9b T.
+     â\88\83â\88\83T. â\9dªG0,L1â\9d« â\8a¢ â\93ª[I] â\9e¡[h,0] T & â\93ª[I] â\89\85 T & â\9dªG0,L2â\9d« â\8a¢ â\93ª[I] â\9e¡[h,0] T & â\93ª[I] â\89\85 T.
 #h #G0 #L1 #L2 #I
 /2 width=5 by ex4_intro/
 qed-.
 
 fact cnv_cpm_teqx_conf_lpr_atom_ess_aux (h) (G0) (L1) (L2) (s):
-     â\88\83â\88\83T. â¦\83G0,L1â¦\84 â\8a¢ â\8b\86s â\9e¡[1,h] T & â\8b\86s â\89\9b T & â¦\83G0,L2â¦\84 â\8a¢ â\8b\86(⫯[h]s) â\9e¡[h] T & â\8b\86(⫯[h]s) â\89\9b T.
+     â\88\83â\88\83T. â\9dªG0,L1â\9d« â\8a¢ â\8b\86s â\9e¡[h,1] T & â\8b\86s â\89\85 T & â\9dªG0,L2â\9d« â\8a¢ â\8b\86(⫯[h]s) â\9e¡[h,0] T & â\8b\86(⫯[h]s) â\89\85 T.
 #h #G0 #L1 #L2 #s
-/3 width=5 by teqx_sort, ex4_intro/
+/3 width=5 by teqg_sort, ex4_intro/
 qed-.
 
 fact cnv_cpm_teqx_conf_lpr_bind_bind_aux (h) (a) (p) (I) (G0) (L0) (V0) (T0):
-     (â\88\80G,L,T. â¦\83G0,L0,â\93\91{p,I}V0.T0â¦\84 â¬\82+ â¦\83G,L,Tâ¦\84 → IH_cnv_cpm_teqx_conf_lpr h a G L T) →
-     â¦\83G0,L0â¦\84 â\8a¢ â\93\91{p,I}V0.T0 ![h,a] →
-     â\88\80n1,T1. â¦\83G0,L0.â\93\91{I}V0â¦\84 â\8a¢ T0 â\9e¡[n1,h] T1 â\86\92 T0 â\89\9b T1 →
-     â\88\80n2,T2. â¦\83G0,L0.â\93\91{I}V0â¦\84 â\8a¢ T0 â\9e¡[n2,h] T2 â\86\92 T0 â\89\9b T2 →
-     â\88\80L1. â¦\83G0,L0â¦\84 â\8a¢ â\9e¡[h] L1 â\86\92 â\88\80L2. â¦\83G0,L0â¦\84 â\8a¢ â\9e¡[h] L2 →
-     â\88\83â\88\83T. â¦\83G0,L1â¦\84 â\8a¢ â\93\91{p,I}V0.T1 â\9e¡[n2-n1,h] T & â\93\91{p,I}V0.T1 â\89\9b T & â¦\83G0,L2â¦\84 â\8a¢ â\93\91{p,I}V0.T2 â\9e¡[n1-n2,h] T & â\93\91{p,I}V0.T2 â\89\9b T.
+     (â\88\80G,L,T. â\9dªG0,L0,â\93\91[p,I]V0.T0â\9d« â¬\82+ â\9dªG,L,Tâ\9d« → IH_cnv_cpm_teqx_conf_lpr h a G L T) →
+     â\9dªG0,L0â\9d« â\8a¢ â\93\91[p,I]V0.T0 ![h,a] →
+     â\88\80n1,T1. â\9dªG0,L0.â\93\91[I]V0â\9d« â\8a¢ T0 â\9e¡[h,n1] T1 â\86\92 T0 â\89\85 T1 →
+     â\88\80n2,T2. â\9dªG0,L0.â\93\91[I]V0â\9d« â\8a¢ T0 â\9e¡[h,n2] T2 â\86\92 T0 â\89\85 T2 →
+     â\88\80L1. â\9dªG0,L0â\9d« â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9dªG0,L0â\9d« â\8a¢ â\9e¡[h,0] L2 →
+     â\88\83â\88\83T. â\9dªG0,L1â\9d« â\8a¢ â\93\91[p,I]V0.T1 â\9e¡[h,n2-n1] T & â\93\91[p,I]V0.T1 â\89\85 T & â\9dªG0,L2â\9d« â\8a¢ â\93\91[p,I]V0.T2 â\9e¡[h,n1-n2] T & â\93\91[p,I]V0.T2 â\89\85 T.
 #h #a #p #I #G0 #L0 #V0 #T0 #IH #H0
 #n1 #T1 #H1T01 #H2T01 #n2 #T2 #H1T02 #H2T02
 #L1 #HL01 #L2 #HL02
 elim (cnv_inv_bind … H0) -H0 #_ #HT0
-elim (IH … H1T01 H2T01 … H1T02 H2T02 (L1.ⓑ{I}V0) … (L2.ⓑ{I}V0)) [|*: /2 width=1 by lpr_bind_refl_dx/ ]
+elim (IH … H1T01 H2T01 … H1T02 H2T02 (L1.ⓑ[I]V0) … (L2.ⓑ[I]V0)) [|*: /2 width=1 by lpr_bind_refl_dx/ ]
 #T #H1T1 #H2T1 #H1T2 #H2T2 -L0 -T0
 /3 width=7 by cpm_bind, teqx_pair, ex4_intro/
 qed-.
 
 fact cnv_cpm_teqx_conf_lpr_appl_appl_aux (h) (a) (G0) (L0) (V0) (T0):
-     (â\88\80G,L,T. â¦\83G0,L0,â\93\90V0.T0â¦\84 â¬\82+ â¦\83G,L,Tâ¦\84 → IH_cnv_cpm_teqx_conf_lpr h a G L T) →
-     â¦\83G0,L0â¦\84 ⊢ ⓐV0.T0 ![h,a] →
-     â\88\80n1,T1. â¦\83G0,L0â¦\84 â\8a¢ T0 â\9e¡[n1,h] T1 â\86\92 T0 â\89\9b T1 →
-     â\88\80n2,T2. â¦\83G0,L0â¦\84 â\8a¢ T0 â\9e¡[n2,h] T2 â\86\92 T0 â\89\9b T2 →
-     â\88\80L1. â¦\83G0,L0â¦\84 â\8a¢ â\9e¡[h] L1 â\86\92 â\88\80L2. â¦\83G0,L0â¦\84 â\8a¢ â\9e¡[h] L2 →
-     â\88\83â\88\83T. â¦\83G0,L1â¦\84 â\8a¢ â\93\90V0.T1 â\9e¡[n2-n1,h] T & â\93\90V0.T1 â\89\9b T & â¦\83G0,L2â¦\84 â\8a¢ â\93\90V0.T2 â\9e¡[n1-n2,h] T & â\93\90V0.T2 â\89\9b T.
+     (â\88\80G,L,T. â\9dªG0,L0,â\93\90V0.T0â\9d« â¬\82+ â\9dªG,L,Tâ\9d« → IH_cnv_cpm_teqx_conf_lpr h a G L T) →
+     â\9dªG0,L0â\9d« ⊢ ⓐV0.T0 ![h,a] →
+     â\88\80n1,T1. â\9dªG0,L0â\9d« â\8a¢ T0 â\9e¡[h,n1] T1 â\86\92 T0 â\89\85 T1 →
+     â\88\80n2,T2. â\9dªG0,L0â\9d« â\8a¢ T0 â\9e¡[h,n2] T2 â\86\92 T0 â\89\85 T2 →
+     â\88\80L1. â\9dªG0,L0â\9d« â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9dªG0,L0â\9d« â\8a¢ â\9e¡[h,0] L2 →
+     â\88\83â\88\83T. â\9dªG0,L1â\9d« â\8a¢ â\93\90V0.T1 â\9e¡[h,n2-n1] T & â\93\90V0.T1 â\89\85 T & â\9dªG0,L2â\9d« â\8a¢ â\93\90V0.T2 â\9e¡[h,n1-n2] T & â\93\90V0.T2 â\89\85 T.
 #h #a #G0 #L0 #V0 #T0 #IH #H0
 #n1 #T1 #H1T01 #H2T01 #n2 #T2 #H1T02 #H2T02
 #L1 #HL01 #L2 #HL02
@@ -71,14 +72,14 @@ elim (IH … H1T01 H2T01 … H1T02 H2T02 … HL01 … HL02) [|*: /2 width=1 by f
 qed-.
 
 fact cnv_cpm_teqx_conf_lpr_cast_cast_aux (h) (a) (G0) (L0) (V0) (T0):
-     (â\88\80G,L,T. â¦\83G0,L0,â\93\9dV0.T0â¦\84 â¬\82+ â¦\83G,L,Tâ¦\84 → IH_cnv_cpm_teqx_conf_lpr h a G L T) →
-     â¦\83G0,L0â¦\84 ⊢ ⓝV0.T0 ![h,a] →
-     â\88\80n1,V1. â¦\83G0,L0â¦\84 â\8a¢ V0 â\9e¡[n1,h] V1 â\86\92 V0 â\89\9b V1 →
-     â\88\80n2,V2. â¦\83G0,L0â¦\84 â\8a¢ V0 â\9e¡[n2,h] V2 â\86\92 V0 â\89\9b V2 →
-     â\88\80T1. â¦\83G0,L0â¦\84 â\8a¢ T0 â\9e¡[n1,h] T1 â\86\92 T0 â\89\9b T1 →
-     â\88\80T2. â¦\83G0,L0â¦\84 â\8a¢ T0 â\9e¡[n2,h] T2 â\86\92 T0 â\89\9b T2 →
-     â\88\80L1. â¦\83G0,L0â¦\84 â\8a¢ â\9e¡[h] L1 â\86\92 â\88\80L2. â¦\83G0,L0â¦\84 â\8a¢ â\9e¡[h] L2 →
-     â\88\83â\88\83T. â¦\83G0,L1â¦\84 â\8a¢ â\93\9dV1.T1 â\9e¡[n2-n1,h] T & â\93\9dV1.T1 â\89\9b T & â¦\83G0,L2â¦\84 â\8a¢ â\93\9dV2.T2 â\9e¡[n1-n2,h] T & â\93\9dV2.T2 â\89\9b T.
+     (â\88\80G,L,T. â\9dªG0,L0,â\93\9dV0.T0â\9d« â¬\82+ â\9dªG,L,Tâ\9d« → IH_cnv_cpm_teqx_conf_lpr h a G L T) →
+     â\9dªG0,L0â\9d« ⊢ ⓝV0.T0 ![h,a] →
+     â\88\80n1,V1. â\9dªG0,L0â\9d« â\8a¢ V0 â\9e¡[h,n1] V1 â\86\92 V0 â\89\85 V1 →
+     â\88\80n2,V2. â\9dªG0,L0â\9d« â\8a¢ V0 â\9e¡[h,n2] V2 â\86\92 V0 â\89\85 V2 →
+     â\88\80T1. â\9dªG0,L0â\9d« â\8a¢ T0 â\9e¡[h,n1] T1 â\86\92 T0 â\89\85 T1 →
+     â\88\80T2. â\9dªG0,L0â\9d« â\8a¢ T0 â\9e¡[h,n2] T2 â\86\92 T0 â\89\85 T2 →
+     â\88\80L1. â\9dªG0,L0â\9d« â\8a¢ â\9e¡[h,0] L1 â\86\92 â\88\80L2. â\9dªG0,L0â\9d« â\8a¢ â\9e¡[h,0] L2 →
+     â\88\83â\88\83T. â\9dªG0,L1â\9d« â\8a¢ â\93\9dV1.T1 â\9e¡[h,n2-n1] T & â\93\9dV1.T1 â\89\85 T & â\9dªG0,L2â\9d« â\8a¢ â\93\9dV2.T2 â\9e¡[h,n1-n2] T & â\93\9dV2.T2 â\89\85 T.
 #h #a #G0 #L0 #V0 #T0 #IH #H0
 #n1 #V1 #H1V01 #H2V01 #n2 #V2 #H1V02 #H2V02 #T1 #H1T01 #H2T01 #T2 #H1T02 #H2T02
 #L1 #HL01 #L2 #HL02
@@ -90,7 +91,7 @@ elim (IH … H1T01 H2T01 … H1T02 H2T02 … HL01 … HL02) [|*: /2 width=1 by f
 qed-.
 
 fact cnv_cpm_teqx_conf_lpr_aux (h) (a) (G0) (L0) (T0):
-     (â\88\80G,L,T. â¦\83G0,L0,T0â¦\84 â¬\82+ â¦\83G,L,Tâ¦\84 → IH_cnv_cpm_teqx_conf_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_conf_lpr h a G L T) →
      ∀G,L,T. G0 = G → L0 = L → T0 = T → IH_cnv_cpm_teqx_conf_lpr h a G L T.
 #h #a #G0 #L0 #T0 #IH1 #G #L * [| * [| * ]]
 [ #I #HG0 #HL0 #HT0 #HT #n1 #X1 #H1X1 #H2X1 #n2 #X2 #H1X2 #H2X2 #L1 #HL1 #L2 #HL2 destruct