From 538c84b5b1129b34c051c364fdd304f52714482c Mon Sep 17 00:00:00 2001 From: Ferruccio Guidi Date: Mon, 31 Jan 2022 22:50:04 +0100 Subject: [PATCH] update in ground + additions to subsets --- .../ground/lib/subset_ext_equivalence.ma | 10 ++++++++++ .../ground/lib/subset_ext_inclusion.ma | 19 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/matita/matita/contribs/lambdadelta/ground/lib/subset_ext_equivalence.ma b/matita/matita/contribs/lambdadelta/ground/lib/subset_ext_equivalence.ma index f20aca24f..28e4facc8 100644 --- a/matita/matita/contribs/lambdadelta/ground/lib/subset_ext_equivalence.ma +++ b/matita/matita/contribs/lambdadelta/ground/lib/subset_ext_equivalence.ma @@ -19,8 +19,18 @@ include "ground/lib/subset_equivalence.ma". (* Constructions with subset_equivalence ************************************) +lemma subset_equivalence_ext_f1_exteq (A1) (A0) (f1) (f2) (u): + f1 ⊜ f2 → subset_ext_f1 A1 A0 f1 u ⇔ subset_ext_f1 A1 A0 f2 u. +/3 width=3 by subset_inclusion_ext_f1_exteq, conj/ +qed. + lemma subset_equivalence_ext_f1_bi (A1) (A0) (f) (u1) (v1): u1 ⇔ v1 → subset_ext_f1 A1 A0 f u1 ⇔ subset_ext_f1 A1 A0 f v1. #A1 #A0 #f #u1 #v1 * #Huv1 #Hvu1 /3 width=3 by subset_inclusion_ext_f1_bi, conj/ qed. + +lemma subset_inclusion_ext_f1_compose (A0) (A1) (A2) (f1) (f2) (u): + subset_ext_f1 A1 A2 f2 (subset_ext_f1 A0 A1 f1 u) ⇔ subset_ext_f1 A0 A2 (f2∘f1) u. +/3 width=1 by subset_inclusion_ext_f1_compose_dx, subset_inclusion_ext_f1_compose_sn, conj/ +qed. diff --git a/matita/matita/contribs/lambdadelta/ground/lib/subset_ext_inclusion.ma b/matita/matita/contribs/lambdadelta/ground/lib/subset_ext_inclusion.ma index 7fd5fd418..f16fc373a 100644 --- a/matita/matita/contribs/lambdadelta/ground/lib/subset_ext_inclusion.ma +++ b/matita/matita/contribs/lambdadelta/ground/lib/subset_ext_inclusion.ma @@ -14,17 +14,36 @@ include "ground/lib/subset_inclusion.ma". include "ground/lib/subset_ext.ma". +include "ground/lib/exteq.ma". (* EXTENSIONS FOR SUBSETS ***************************************************) (* Constructions with subset_inclusion **************************************) +lemma subset_inclusion_ext_f1_exteq (A1) (A0) (f1) (f2) (u): + f1 ⊜ f2 → subset_ext_f1 A1 A0 f1 u ⊆ subset_ext_f1 A1 A0 f2 u. +#A1 #A0 #f1 #f2 #u #Hf #a0 * #a1 #Hau1 #H destruct +/2 width=1 by subset_in_ext_f1_dx/ +qed. + lemma subset_inclusion_ext_f1_bi (A1) (A0) (f) (u1) (v1): u1 ⊆ v1 → subset_ext_f1 A1 A0 f u1 ⊆ subset_ext_f1 A1 A0 f v1. #A1 #A0 #f #u1 #v1 #Huv1 #a0 * #a1 #Hau1 #H destruct /3 width=3 by subset_in_ext_f1_dx/ qed. +lemma subset_inclusion_ext_f1_compose_sn (A0) (A1) (A2) (f1) (f2) (u): + subset_ext_f1 A1 A2 f2 (subset_ext_f1 A0 A1 f1 u) ⊆ subset_ext_f1 A0 A2 (f2∘f1) u. +#A0 #A1 #A2 #f1 #f2 #u #a2 * #a1 * #a0 #Ha0 #H1 #H2 destruct +/2 width=1 by subset_in_ext_f1_dx/ +qed. + +lemma subset_inclusion_ext_f1_compose_dx (A0) (A1) (A2) (f1) (f2) (u): + subset_ext_f1 A0 A2 (f2∘f1) u ⊆ subset_ext_f1 A1 A2 f2 (subset_ext_f1 A0 A1 f1 u). +#A0 #A1 #A2 #f1 #f2 #u #a2 * #a0 #Ha0 #H0 destruct +/3 width=1 by subset_in_ext_f1_dx/ +qed. + lemma subset_inclusion_ext_p1_trans (A1) (Q) (u1) (v1): u1 ⊆ v1 → subset_ext_p1 A1 Q v1 → subset_ext_p1 A1 Q u1. #A1 #Q #u1 #v1 #Huv1 #Hv1 -- 2.39.2