X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbasic_2%2Fdynamic%2Fcnv.ma;h=4db46f940e869d38441aabd560487f600b884555;hb=6b4da5fa47d474dcf2f203ec7f5ed36938739c9b;hp=bde05a33cabcc6d4ee858568f74563abdaeb164d;hpb=9aa2722ff4aa7868ffd14e5a820cd6dc79e2c8a6;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/basic_2/dynamic/cnv.ma b/matita/matita/contribs/lambdadelta/basic_2/dynamic/cnv.ma index bde05a33c..4db46f940 100644 --- a/matita/matita/contribs/lambdadelta/basic_2/dynamic/cnv.ma +++ b/matita/matita/contribs/lambdadelta/basic_2/dynamic/cnv.ma @@ -13,6 +13,8 @@ (**************************************************************************) include "basic_2/notation/relations/exclaim_5.ma". +include "basic_2/notation/relations/exclaim_4.ma". +include "basic_2/notation/relations/exclaimstar_4.ma". include "basic_2/rt_computation/cpms.ma". (* CONTEXT-SENSITIVE NATIVE VALIDITY FOR TERMS ******************************) @@ -33,6 +35,12 @@ inductive cnv (a) (h): relation3 genv lenv term ≝ interpretation "context-sensitive native validity (term)" 'Exclaim a h G L T = (cnv a h G L T). +interpretation "context-sensitive restricted native validity (term)" + 'Exclaim h G L T = (cnv true h G L T). + +interpretation "context-sensitive extended native validity (term)" + 'ExclaimStar h G L T = (cnv false h G L T). + (* Basic inversion lemmas ***************************************************) fact cnv_inv_zero_aux (a) (h): ∀G,L,X. ⦃G, L⦄ ⊢ X ![a, h] → X = #0 → @@ -151,7 +159,14 @@ lemma cnv_fwd_flat (a) (h) (I) (G) (L): ] -H /2 width=1 by conj/ qed-. -(* Basic_2A1: removed theorems 6: - snv_fwd_da snv_fwd_lstas snv_cast_scpes +lemma cnv_fwd_pair_sn (a) (h) (I) (G) (L): + ∀V,T. ⦃G,L⦄ ⊢ ②{I}V.T ![a,h] → ⦃G,L⦄ ⊢ V ![a,h]. +#a #h * [ #p ] #I #G #L #V #T #H +[ elim (cnv_inv_bind … H) -H #HV #_ +| elim (cnv_fwd_flat … H) -H #HV #_ +] // +qed-. + +(* Basic_2A1: removed theorems 3: shnv_cast shnv_inv_cast snv_shnv_cast *)