From: Ferruccio Guidi Date: Wed, 6 Jul 2022 12:23:57 +0000 (+0200) Subject: partial commit in delayed_updating X-Git-Tag: make_still_working~50 X-Git-Url: http://matita.cs.unibo.it/gitweb/?p=helm.git;a=commitdiff_plain;h=306205b6853874cf485152222593b57249c6e7fa partial commit in delayed_updating + reversing paths in component "syntax" + some renaming --- diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/bdd_term.ma b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/bdd_term.ma index 9f8238432..1eb11fc03 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/bdd_term.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/bdd_term.ma @@ -24,8 +24,8 @@ include "ground/xoa/ex_5_3.ma". (* BY-DEPTH DELAYED (BDD) TERM **********************************************) inductive bdd: 𝒫❨prototerm❩ ≝ -| bdd_oref: ∀n. bdd (⧣n) -| bdd_iref: ∀t,n. bdd t → bdd (𝛕n.t) +| bdd_oref: ∀k. bdd (⧣k) +| bdd_iref: ∀t,k. bdd t → bdd (𝛕k.t) | bdd_abst: ∀t. bdd t → bdd (𝛌.t) | bdd_appl: ∀u,t. bdd u → bdd t → bdd (@u.t) | bdd_conv: ∀t1,t2. t1 ⇔ t2 → bdd t1 → bdd t2 diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/label.ma b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/label.ma index 98e63f06b..6a607559c 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/label.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/label.ma @@ -35,7 +35,7 @@ inductive label: Type[0] ≝ interpretation "variable reference by depth (label)" - 'NodeLabelD p = (label_d p). + 'NodeLabelD k = (label_d k). interpretation "mark (label)" diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path.ma b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path.ma index 2d8abe304..39ac9c46c 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path.ma @@ -21,7 +21,8 @@ include "delayed_updating/syntax/label.ma". (* PATH *********************************************************************) -(* Note: a path is a list of labels *) +(* Note: a path is a list of labels *) +(* Note: constructed from the leaf (right end) to the root (left end) *) definition path ≝ list label. interpretation @@ -29,13 +30,13 @@ interpretation 'ElementE = (list_empty label). interpretation - "left cons (paths)" - 'BlackHalfCircleRight l p = (list_lcons label l p). + "right cons (paths)" + 'BlackHalfCircleLeft p l = (list_lcons label l p). interpretation "append (paths)" - 'BlackCircle l1 l2 = (list_append label l1 l2). + 'BlackCircle p q = (list_append label q p). interpretation - "right cons (paths)" - 'BlackHalfCircleLeft p l = (list_append label p (list_lcons label l (list_empty label))). + "left cons (paths)" + 'BlackHalfCircleRight l p = (list_append label p (list_lcons label l (list_empty label))). 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 474bbcbda..eff4eb16b 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_depth.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_depth.ma @@ -40,53 +40,58 @@ interpretation lemma depth_empty: 𝟎 = ♭𝐞. // qed. -lemma depth_d_sn (q) (n): ♭q = ♭(𝗱n◗q). +lemma depth_d_dx (p) (k): + ♭p = ♭(p◖𝗱k). // qed. -lemma depth_m_sn (q): ♭q = ♭(𝗺◗q). +lemma depth_m_dx (p): + ♭p = ♭(p◖𝗺). // qed. -lemma depth_L_sn (q): ↑♭q = ♭(𝗟◗q). +lemma depth_L_dx (p): + ↑♭p = ♭(p◖𝗟). // qed. -lemma depth_A_sn (q): ♭q = ♭(𝗔◗q). +lemma depth_A_dx (p): + ♭p = ♭(p◖𝗔). // qed. -lemma depth_S_sn (q): ♭q = ♭(𝗦◗q). +lemma depth_S_dx (p): + ♭p = ♭(p◖𝗦). // qed. (* Main constructions *******************************************************) -theorem depth_append (p1) (p2): - (♭p2)+(♭p1) = ♭(p1●p2). -#p1 elim p1 -p1 // -* [ #n ] #p1 #IH #p2