X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fground_2%2Frelocation%2Fnstream_after.ma;h=ca3ad7bc7c44535ed250d434ea40d6549336f835;hb=bd53c4e895203eb049e75434f638f26b5a161a2b;hp=4724aa8be738ff5188d13a38b15343457621bd81;hpb=397413c4196f84c81d61ba7dd79b54ab1c428ebb;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/ground_2/relocation/nstream_after.ma b/matita/matita/contribs/lambdadelta/ground_2/relocation/nstream_after.ma index 4724aa8be..ca3ad7bc7 100644 --- a/matita/matita/contribs/lambdadelta/ground_2/relocation/nstream_after.ma +++ b/matita/matita/contribs/lambdadelta/ground_2/relocation/nstream_after.ma @@ -18,7 +18,7 @@ include "ground_2/relocation/rtmap_after.ma". (* RELOCATION N-STREAM ******************************************************) corec definition compose: rtmap → rtmap → rtmap. -#f2 * #n1 #f1 @(seq … (f2@❴n1❵)) @(compose ? f1) -compose -f1 +#f2 * #n1 #f1 @(seq … (f2@❨n1❩)) @(compose ? f1) -compose -f1 @(⫰*[↑n1] f2) defined. @@ -27,8 +27,8 @@ interpretation "functional composition (nstream)" (* Basic properies on compose ***********************************************) -lemma compose_rew: ∀f2,f1,n1. f2@❴n1❵@(⫰*[↑n1]f2)∘f1 = f2∘(n1@f1). -#f2 #f1 #n1 <(stream_rew … (f2∘(n1@f1))) normalize // +lemma compose_rew: ∀f2,f1,n1. f2@❨n1❩⨮(⫰*[↑n1]f2)∘f1 = f2∘(n1⨮f1). +#f2 #f1 #n1 <(stream_rew … (f2∘(n1⨮f1))) normalize // qed. lemma compose_next: ∀f2,f1,f. f2∘f1 = f → (↑f2)∘f1 = ↑f. @@ -38,26 +38,26 @@ qed. (* Basic inversion lemmas on compose ****************************************) -lemma compose_inv_rew: ∀f2,f1,f,n1,n. f2∘(n1@f1) = n@f → - f2@❴n1❵ = n ∧ (⫰*[↑n1]f2)∘f1 = f. -#f2 #f1 #f #n1 #n <(stream_rew … (f2∘(n1@f1))) normalize +lemma compose_inv_rew: ∀f2,f1,f,n1,n. f2∘(n1⨮f1) = n⨮f → + f2@❨n1❩ = n ∧ (⫰*[↑n1]f2)∘f1 = f. +#f2 #f1 #f #n1 #n <(stream_rew … (f2∘(n1⨮f1))) normalize #H destruct /2 width=1 by conj/ qed-. -lemma compose_inv_O2: ∀f2,f1,f,n2,n. (n2@f2)∘(⫯f1) = n@f → +lemma compose_inv_O2: ∀f2,f1,f,n2,n. (n2⨮f2)∘(⫯f1) = n⨮f → n2 = n ∧ f2∘f1 = f. #f2 #f1 #f #n2 #n