X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbasic_2%2Frt_computation%2Frsx_fqup.ma;h=da358ed85ab68280759a2d72866817cc6ec09a56;hb=b118146b97959e6a6dde18fdd014b8e1e676a2d1;hp=b41e150feb62b90220434212ee30883aa7c8d0e7;hpb=a454837a256907d2f83d42ced7be847e10361ea9;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/basic_2/rt_computation/rsx_fqup.ma b/matita/matita/contribs/lambdadelta/basic_2/rt_computation/rsx_fqup.ma index b41e150fe..da358ed85 100644 --- a/matita/matita/contribs/lambdadelta/basic_2/rt_computation/rsx_fqup.ma +++ b/matita/matita/contribs/lambdadelta/basic_2/rt_computation/rsx_fqup.ma @@ -12,19 +12,19 @@ (* *) (**************************************************************************) -include "static_2/static/rdeq_fqup.ma". +include "static_2/static/reqg_fqup.ma". include "basic_2/rt_computation/rsx.ma". -(* STRONGLY NORMALIZING REFERRED LOCAL ENV.S FOR UNBOUND RT-TRANSITION ******) +(* STRONGLY NORMALIZING REFERRED LOCAL ENVS FOR EXTENDED RT-TRANSITION ******) (* Advanced properties ******************************************************) (* Basic_2A1: uses: lsx_atom *) -lemma lfsx_atom (h) (G) (T): G ⊢ ⬈*[h,T] 𝐒⦃⋆⦄. -#h #G #T +lemma lfsx_atom (G) (T): G ⊢ ⬈*𝐒[T] ⋆. +#G #T @rsx_intro #Y #H #HnT lapply (lpx_inv_atom_sn … H) -H #H destruct -elim HnT -HnT // +elim HnT -HnT /2 width=1 by rex_refl/ qed. (* Advanced forward lemmas **************************************************) @@ -32,19 +32,19 @@ qed. (* Basic_2A1: uses: lsx_fwd_bind_dx *) (* Note: the exclusion binder (ⓧ) makes this more elegant and much simpler *) (* Note: the old proof without the exclusion binder requires lreq *) -lemma rsx_fwd_bind_dx_void (h) (G): - ∀p,I,L,V,T. G ⊢ ⬈*[h,ⓑ{p,I}V.T] 𝐒⦃L⦄ → G ⊢ ⬈*[h,T] 𝐒⦃L.ⓧ⦄. -#h #G #p #I #L #V #T #H +lemma rsx_fwd_bind_dx_void (G): + ∀p,I,L,V,T. G ⊢ ⬈*𝐒[ⓑ[p,I]V.T] L → G ⊢ ⬈*𝐒[T] L.ⓧ. +#G #p #I #L #V #T #H @(rsx_ind … H) -L #L1 #_ #IH @rsx_intro #Y #H #HT elim (lpx_inv_unit_sn … H) -H #L2 #HL12 #H destruct -/4 width=4 by rdeq_fwd_bind_dx_void/ +/4 width=4 by reqg_fwd_bind_dx_void/ qed-. (* Advanced inversion lemmas ************************************************) (* Basic_2A1: uses: lsx_inv_bind *) -lemma rsx_inv_bind_void (h) (G): - ∀p,I,L,V,T. G ⊢ ⬈*[h,ⓑ{p,I}V.T] 𝐒⦃L⦄ → - ∧∧ G ⊢ ⬈*[h,V] 𝐒⦃L⦄ & G ⊢ ⬈*[h,T] 𝐒⦃L.ⓧ⦄. +lemma rsx_inv_bind_void (G): + ∀p,I,L,V,T. G ⊢ ⬈*𝐒[ⓑ[p,I]V.T] L → + ∧∧ G ⊢ ⬈*𝐒[V] L & G ⊢ ⬈*𝐒[T] L.ⓧ. /3 width=4 by rsx_fwd_pair_sn, rsx_fwd_bind_dx_void, conj/ qed-.