X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fdelayed_updating%2Fsyntax%2Fpath_proper.ma;h=ff6a53c3932c4a01eac32c3e58993ab8fadb9174;hb=ccbaf3fd118c7c6425b3572a057ccc2941b7762e;hp=fca2eb91aae63a0d4f1b69d459df52cc54b98e05;hpb=13584a37bbcde10e03c8a488f5b93e1e042da0a6;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_proper.ma b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_proper.ma index fca2eb91a..ff6a53c39 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_proper.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/syntax/path_proper.ma @@ -30,15 +30,33 @@ interpretation (* Basic constructions ******************************************************) lemma ppc_lcons (l) (q): l◗q ϵ 𝐏. -#l #p #H destruct +#l #q #H0 destruct +qed. + +lemma ppc_rcons (l) (q): q◖l ϵ 𝐏. +#l #q #H +elim (eq_inv_list_empty_rcons ??? H) qed. (* Basic inversions ********************************************************) +lemma ppc_inv_empty: + (𝐞) ϵ 𝐏 → ⊥. +#H0 @H0 -H0 // +qed-. + lemma ppc_inv_lcons (p): p ϵ 𝐏 → ∃∃l,q. l◗q = p. * -[ #H elim H -H // +[ #H0 elim (ppc_inv_empty … H0) | #l #q #_ /2 width=3 by ex1_2_intro/ ] qed-. + +lemma ppc_inv_rcons (p): + p ϵ 𝐏 → ∃∃q,l. q◖l = p. +#p @(list_ind_rcons … p) -p +[ #H0 elim (ppc_inv_empty … H0) +| #q #l #_ #_ /2 width=3 by ex1_2_intro/ +] +qed-.