X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fdelayed_updating%2Fsyntax%2Fpath_depth.ma;h=a769327f65b218f655530102b435ca614b60eb22;hb=9e31ac1f3f868349154b0ce2e550e2476aaf6a30;hp=1634678af36ecc77d57b90df7e0b6dddeb4fbab0;hpb=80ecd5486c6013f6c297173f41432fd1d93814ef;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_depth.ma b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_depth.ma index 1634678af..a769327f6 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_depth.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_depth.ma @@ -13,8 +13,8 @@ (**************************************************************************) include "delayed_updating/syntax/path.ma". -include "ground/arith/nat_succ.ma". -include "ground/notation/functions/verticalbars_1.ma". +include "delayed_updating/notation/functions/flat_1.ma". +include "ground/arith/nat_plus.ma". (* DEPTH FOR PATH ***********************************************************) @@ -23,7 +23,7 @@ match p with [ list_empty ⇒ 𝟎 | list_lcons l q ⇒ match l with - [ label_d _ ⇒ depth q + [ label_d k ⇒ depth q | label_m ⇒ depth q | label_L ⇒ ↑(depth q) | label_A ⇒ depth q @@ -33,24 +33,65 @@ match p with interpretation "depth (path)" - 'VerticalBars p = (depth p). + 'Flat p = (depth p). (* Basic constructions ******************************************************) -lemma depth_empty: 𝟎 = ❘𝐞❘. +lemma depth_empty: 𝟎 = ♭𝐞. // qed. -lemma depth_d (q) (n): ❘q❘ = ❘𝗱n◗q❘. +lemma depth_d_dx (p) (k): + ♭p = ♭(p◖𝗱k). // qed. -lemma depth_m (q): ❘q❘ = ❘𝗺◗q❘. +lemma depth_m_dx (p): + ♭p = ♭(p◖𝗺). // qed. -lemma depth_L (q): ↑❘q❘ = ❘𝗟◗q❘. +lemma depth_L_dx (p): + ↑♭p = ♭(p◖𝗟). // qed. -lemma depth_A (q): ❘q❘ = ❘𝗔◗q❘. +lemma depth_A_dx (p): + ♭p = ♭(p◖𝗔). // qed. -lemma depth_S (q): ❘q❘ = ❘𝗦◗q❘. +lemma depth_S_dx (p): + ♭p = ♭(p◖𝗦). +// qed. + +(* Main constructions *******************************************************) + +theorem depth_append (p) (q): + (♭p)+(♭q) = ♭(p●q). +#p #q elim q -q // +* [ #k ] #q #IH