X-Git-Url: http://matita.cs.unibo.it/gitweb/?p=helm.git;a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fdelayed_updating%2Fsyntax%2Fpath_structure.ma;h=95c728682db4058cc10f4caca52bb357be601634;hp=3b91954fd83ca4a90115038959bdd2dc718f778d;hb=797a607af83f82102033270087722a7e59ddcd17;hpb=b0c6bbd5db69489a5ebd1b36de6685fa6de441b3 diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_structure.ma b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_structure.ma index 3b91954fd..95c728682 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_structure.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_structure.ma @@ -23,11 +23,12 @@ match p with [ list_empty ⇒ 𝐞 | list_lcons l q ⇒ match l with - [ label_d k ⇒ structure q - | label_m ⇒ structure q - | label_L ⇒ (structure q)◖𝗟 - | label_A ⇒ (structure q)◖𝗔 - | label_S ⇒ (structure q)◖𝗦 + [ label_d k ⇒ structure q + | label_d2 k d ⇒ structure q + | label_m ⇒ structure q + | label_L ⇒ (structure q)◖𝗟 + | label_A ⇒ (structure q)◖𝗔 + | label_S ⇒ (structure q)◖𝗦 ] ]. @@ -45,6 +46,10 @@ lemma structure_d_dx (p) (k): ⊗p = ⊗(p◖𝗱k). // qed. +lemma structure_d2_dx (p) (k) (d): + ⊗p = ⊗(p◖𝗱❨k,d❩). +// qed. + lemma structure_m_dx (p): ⊗p = ⊗(p◖𝗺). // qed. @@ -65,20 +70,27 @@ lemma structure_S_dx (p): theorem structure_idem (p): ⊗p = ⊗⊗p. -#p elim p -p [| * [ #k ] #p #IH ] // +#p elim p -p // +* [ #k | #k #d ] #p #IH // qed. theorem structure_append (p) (q): ⊗p●⊗q = ⊗(p●q). -#p #q elim q -q [| * [ #k ] #q #IH ] -[||*: list_cons_comm #H0 +elim (eq_inv_append_structure … H0) -H0 #r1 #r2 +list_cons_comm #H0