From ac8d0dc0c6fb995736e0c10486d996bd023f3c32 Mon Sep 17 00:00:00 2001 From: Ferruccio Guidi Date: Mon, 10 Jan 2022 16:49:52 +0100 Subject: [PATCH] update in delayed_updating + proper condition for path + relation between lift and append proved --- .../delayed_updating/etc/path_proper.etc | 17 ++++++ .../substitution/lift_structure.ma | 59 +++++++++++-------- .../delayed_updating/syntax/path_proper.ma | 43 ++++++++++++++ 3 files changed, 94 insertions(+), 25 deletions(-) create mode 100644 matita/matita/contribs/lambdadelta/delayed_updating/etc/path_proper.etc create mode 100644 matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_proper.ma diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/etc/path_proper.etc b/matita/matita/contribs/lambdadelta/delayed_updating/etc/path_proper.etc new file mode 100644 index 000000000..d5287e52b --- /dev/null +++ b/matita/matita/contribs/lambdadelta/delayed_updating/etc/path_proper.etc @@ -0,0 +1,17 @@ +(* Constructions with path_append *******************************************) + +lemma ppc_append_sn (p2) (p1): Ꝕp2 → Ꝕ(p1●p2). +#p2 * /2 width=3 by ppc_lcons/ +qed. + +lemma ppc_append_dx (p1) (p2): Ꝕp1 → Ꝕ(p1●p2). +#p1 #p2 #Hp1 +elim (ppc_inv_lcons … Hp1) -Hp1 #l #q1 #H destruct +/2 width=3 by ppc_lcons/ +qed. + +(* Constructions with path_rcons ********************************************) + +lemma ppc_rcons (q) (l): Ꝕ(q◖l). +/2 width=1 by ppc_lcons, ppc_append_sn/ +qed. diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/substitution/lift_structure.ma b/matita/matita/contribs/lambdadelta/delayed_updating/substitution/lift_structure.ma index d18f72b52..961a5c435 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/substitution/lift_structure.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/substitution/lift_structure.ma @@ -12,48 +12,57 @@ (* *) (**************************************************************************) -include "delayed_updating/syntax/path_structure.ma". include "delayed_updating/substitution/lift_eq.ma". +include "delayed_updating/syntax/path_structure.ma". +include "delayed_updating/syntax/path_proper.ma". (* LIFT FOR PATH ***********************************************************) -(* Constructions with structure ********************************************) +(* Basic constructions with structure **************************************) + +lemma structure_lift (p) (f): + ⊗p = ⊗↑[f]p. +#p @(path_ind_lift … p) -p // #p #IH #f +