X-Git-Url: http://matita.cs.unibo.it/gitweb/?p=helm.git;a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fdelayed_updating%2Fsyntax%2Fprototerm_constructors.ma;h=8bffdb64ae0555df03894b6793f712f21b92e81a;hp=5bb66e16ab112f1ab94db7db70cba521bc150131;hb=797a607af83f82102033270087722a7e59ddcd17;hpb=b0c6bbd5db69489a5ebd1b36de6685fa6de441b3 diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/prototerm_constructors.ma b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/prototerm_constructors.ma index 5bb66e16a..8bffdb64a 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/prototerm_constructors.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/prototerm_constructors.ma @@ -16,6 +16,7 @@ include "delayed_updating/syntax/prototerm.ma". include "delayed_updating/notation/functions/m_hook_1.ma". include "delayed_updating/notation/functions/hash_1.ma". include "delayed_updating/notation/functions/tau_2.ma". +include "delayed_updating/notation/functions/tau_3.ma". include "delayed_updating/notation/functions/lamda_1.ma". include "delayed_updating/notation/functions/at_2.ma". @@ -47,6 +48,10 @@ interpretation "inner variable reference by depth (prototerm)" 'Tau k t = (prototerm_node_1_2 (label_d k) label_m t). +interpretation + "inner variable reference by depth with offset (prototerm)" + 'Tau k d t = (prototerm_node_1_2 (label_d2 k d) label_m t). + interpretation "name-free functional abstraction (prototerm)" 'Lamda t = (prototerm_node_1 label_L t). @@ -61,6 +66,10 @@ lemma in_comp_iref (t) (q) (k): q ϵ t → 𝗱k◗𝗺◗q ϵ 𝛕k.t. /2 width=3 by ex2_intro/ qed. +lemma in_comp_iref2 (t) (q) (k) (d): + q ϵ t → 𝗱❨k,d❩◗𝗺◗q ϵ 𝛕❨k,d❩.t. +/2 width=3 by ex2_intro/ qed. + (* Basic inversions *********************************************************) lemma in_comp_inv_iref (t) (p) (k): @@ -70,6 +79,13 @@ lemma in_comp_inv_iref (t) (p) (k): /2 width=3 by ex2_intro/ qed-. +lemma in_comp_inv_iref2 (t) (p) (k) (d): + p ϵ 𝛕❨k,d❩.t → + ∃∃q. 𝗱❨k,d❩◗𝗺◗q = p & q ϵ t. +#t #p #k #d * #q #Hq #Hp +/2 width=3 by ex2_intro/ +qed-. + (* COMMENT lemma prototerm_in_root_inv_lcons_oref: ∀p,l,n. l◗p ϵ ▵#n →