X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambda_delta%2Fbasic_2%2Fcomputation%2Fcsn.ma;h=6b58893271fe1f020ff2061e402c68e1d8f56b1a;hb=fde3b3d2e6cc48f6c9880136b1a0d565e2c78c1f;hp=5552c6fb71d5a6dab2b526bc3e8c4a6b7e743776;hpb=bbac36729dab046d61019081c1523af06d876103;p=helm.git diff --git a/matita/matita/contribs/lambda_delta/basic_2/computation/csn.ma b/matita/matita/contribs/lambda_delta/basic_2/computation/csn.ma index 5552c6fb7..6b5889327 100644 --- a/matita/matita/contribs/lambda_delta/basic_2/computation/csn.ma +++ b/matita/matita/contribs/lambda_delta/basic_2/computation/csn.ma @@ -12,7 +12,6 @@ (* *) (**************************************************************************) -include "basic_2/reducibility/cpr.ma". include "basic_2/reducibility/cnf.ma". (* CONTEXT-SENSITIVE STRONGLY NORMALIZING TERMS *****************************) @@ -27,7 +26,7 @@ interpretation lemma csn_ind: ∀L. ∀R:predicate term. (∀T1. L ⊢ ⬇* T1 → - (∀T2. L ⊢ T1 ➡ T2 → (T1 = T2 → False) → R T2) → + (∀T2. L ⊢ T1 ➡ T2 → (T1 = T2 → ⊥) → R T2) → R T1 ) → ∀T. L ⊢ ⬇* T → R T. @@ -39,13 +38,11 @@ qed-. (* Basic_1: was: sn3_pr2_intro *) lemma csn_intro: ∀L,T1. - (∀T2. L ⊢ T1 ➡ T2 → (T1 = T2 → False) → L ⊢ ⬇* T2) → L ⊢ ⬇* T1. -#L #T1 #H -@(SN_intro … H) -qed. + (∀T2. L ⊢ T1 ➡ T2 → (T1 = T2 → ⊥) → L ⊢ ⬇* T2) → L ⊢ ⬇* T1. +/4 width=1/ qed. (* Basic_1: was: sn3_nf2 *) -lemma csn_cnf: ∀L,T. L ⊢ 𝐍[T] → L ⊢ ⬇* T. +lemma csn_cnf: ∀L,T. L ⊢ 𝐍⦃T⦄ → L ⊢ ⬇* T. /2 width=1/ qed. lemma csn_cpr_trans: ∀L,T1. L ⊢ ⬇* T1 → ∀T2. L ⊢ T1 ➡ T2 → L ⊢ ⬇* T2. @@ -57,7 +54,7 @@ elim (term_eq_dec T1 T2) #HT12 qed. (* Basic_1: was: sn3_cast *) -lemma csn_cast: ∀L,W. L ⊢ ⬇* W → ∀T. L ⊢ ⬇* T → L ⊢ ⬇* ⓣW. T. +lemma csn_cast: ∀L,W. L ⊢ ⬇* W → ∀T. L ⊢ ⬇* T → L ⊢ ⬇* ⓝW. T. #L #W #HW elim HW -W #W #_ #IHW #T #HT @(csn_ind … HT) -T #T #HT #IHT @csn_intro #X #H1 #H2 elim (cpr_inv_cast1 … H1) -H1 @@ -82,8 +79,9 @@ qed. lemma csn_fwd_flat_dx: ∀I,L,V,T. L ⊢ ⬇* ⓕ{I} V. T → L ⊢ ⬇* T. /2 width=5/ qed-. -(* Basic_1: removed theorems 9: - sn3_gen_cflat sn3_cflat - sn3_appl_cast sn3_appl_beta sn3_appl_lref sn3_appl_abbr - sn3_bind sn3_appl_bind sn3_appls_bind +(* Basic_1: removed theorems 14: + sn3_cdelta + sn3_gen_cflat sn3_cflat sn3_cpr3_trans sn3_shift sn3_change + sn3_appl_cast sn3_appl_beta sn3_appl_lref sn3_appl_abbr + sn3_appl_appls sn3_bind sn3_appl_bind sn3_appls_bind *)