MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  fullsubc Structured version   Visualization version   GIF version

Theorem fullsubc 17864
Description: The full subcategory generated by a subset of objects is the category with these objects and the same morphisms as the original. The result is always a subcategory (and it is full, meaning that all morphisms of the original category between objects in the subcategory is also in the subcategory), see definition 4.1(2) of [Adamek] p. 48. (Contributed by Mario Carneiro, 4-Jan-2017.)
Hypotheses
Ref Expression
fullsubc.b 𝐵 = (Base‘𝐶)
fullsubc.h 𝐻 = (Homf𝐶)
fullsubc.c (𝜑𝐶 ∈ Cat)
fullsubc.s (𝜑𝑆𝐵)
Assertion
Ref Expression
fullsubc (𝜑 → (𝐻 ↾ (𝑆 × 𝑆)) ∈ (Subcat‘𝐶))

Proof of Theorem fullsubc
Dummy variables 𝑓 𝑔 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fullsubc.h . . . . 5 𝐻 = (Homf𝐶)
2 fullsubc.b . . . . 5 𝐵 = (Base‘𝐶)
31, 2homffn 17701 . . . 4 𝐻 Fn (𝐵 × 𝐵)
42fvexi 6907 . . . 4 𝐵 ∈ V
5 sscres 17834 . . . 4 ((𝐻 Fn (𝐵 × 𝐵) ∧ 𝐵 ∈ V) → (𝐻 ↾ (𝑆 × 𝑆)) ⊆cat 𝐻)
63, 4, 5mp2an 690 . . 3 (𝐻 ↾ (𝑆 × 𝑆)) ⊆cat 𝐻
76a1i 11 . 2 (𝜑 → (𝐻 ↾ (𝑆 × 𝑆)) ⊆cat 𝐻)
8 eqid 2726 . . . . . 6 (Hom ‘𝐶) = (Hom ‘𝐶)
9 eqid 2726 . . . . . 6 (Id‘𝐶) = (Id‘𝐶)
10 fullsubc.c . . . . . . 7 (𝜑𝐶 ∈ Cat)
1110adantr 479 . . . . . 6 ((𝜑𝑥𝑆) → 𝐶 ∈ Cat)
12 fullsubc.s . . . . . . 7 (𝜑𝑆𝐵)
1312sselda 3978 . . . . . 6 ((𝜑𝑥𝑆) → 𝑥𝐵)
142, 8, 9, 11, 13catidcl 17690 . . . . 5 ((𝜑𝑥𝑆) → ((Id‘𝐶)‘𝑥) ∈ (𝑥(Hom ‘𝐶)𝑥))
15 simpr 483 . . . . . . 7 ((𝜑𝑥𝑆) → 𝑥𝑆)
1615, 15ovresd 7585 . . . . . 6 ((𝜑𝑥𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) = (𝑥𝐻𝑥))
171, 2, 8, 13, 13homfval 17700 . . . . . 6 ((𝜑𝑥𝑆) → (𝑥𝐻𝑥) = (𝑥(Hom ‘𝐶)𝑥))
1816, 17eqtrd 2766 . . . . 5 ((𝜑𝑥𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) = (𝑥(Hom ‘𝐶)𝑥))
1914, 18eleqtrrd 2829 . . . 4 ((𝜑𝑥𝑆) → ((Id‘𝐶)‘𝑥) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥))
20 eqid 2726 . . . . . . . . . 10 (comp‘𝐶) = (comp‘𝐶)
2111ad3antrrr 728 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝐶 ∈ Cat)
2213ad3antrrr 728 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑥𝐵)
2312adantr 479 . . . . . . . . . . . . 13 ((𝜑𝑥𝑆) → 𝑆𝐵)
2423sselda 3978 . . . . . . . . . . . 12 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑦𝐵)
2524adantr 479 . . . . . . . . . . 11 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → 𝑦𝐵)
2625adantr 479 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑦𝐵)
2723adantr 479 . . . . . . . . . . . 12 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑆𝐵)
2827sselda 3978 . . . . . . . . . . 11 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → 𝑧𝐵)
2928adantr 479 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑧𝐵)
30 simprl 769 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦))
31 simprr 771 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))
322, 8, 20, 21, 22, 26, 29, 30, 31catcocl 17693 . . . . . . . . 9 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(Hom ‘𝐶)𝑧))
3315ad3antrrr 728 . . . . . . . . . . 11 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑥𝑆)
34 simplr 767 . . . . . . . . . . 11 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑧𝑆)
3533, 34ovresd 7585 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧) = (𝑥𝐻𝑧))
361, 2, 8, 22, 29homfval 17700 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑥𝐻𝑧) = (𝑥(Hom ‘𝐶)𝑧))
3735, 36eqtrd 2766 . . . . . . . . 9 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧) = (𝑥(Hom ‘𝐶)𝑧))
3832, 37eleqtrrd 2829 . . . . . . . 8 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
3938ralrimivva 3191 . . . . . . 7 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → ∀𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦)∀𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
40 simplr 767 . . . . . . . . . . 11 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑥𝑆)
41 simpr 483 . . . . . . . . . . 11 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑦𝑆)
4240, 41ovresd 7585 . . . . . . . . . 10 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦) = (𝑥𝐻𝑦))
4313adantr 479 . . . . . . . . . . 11 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑥𝐵)
441, 2, 8, 43, 24homfval 17700 . . . . . . . . . 10 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → (𝑥𝐻𝑦) = (𝑥(Hom ‘𝐶)𝑦))
4542, 44eqtrd 2766 . . . . . . . . 9 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦) = (𝑥(Hom ‘𝐶)𝑦))
4645adantr 479 . . . . . . . 8 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦) = (𝑥(Hom ‘𝐶)𝑦))
47 simplr 767 . . . . . . . . . . 11 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → 𝑦𝑆)
48 simpr 483 . . . . . . . . . . 11 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → 𝑧𝑆)
4947, 48ovresd 7585 . . . . . . . . . 10 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧) = (𝑦𝐻𝑧))
501, 2, 8, 25, 28homfval 17700 . . . . . . . . . 10 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (𝑦𝐻𝑧) = (𝑦(Hom ‘𝐶)𝑧))
5149, 50eqtrd 2766 . . . . . . . . 9 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧) = (𝑦(Hom ‘𝐶)𝑧))
5251raleqdv 3315 . . . . . . . 8 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧) ↔ ∀𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))
5346, 52raleqbidv 3330 . . . . . . 7 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (∀𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧) ↔ ∀𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦)∀𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))
5439, 53mpbird 256 . . . . . 6 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → ∀𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
5554ralrimiva 3136 . . . . 5 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → ∀𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
5655ralrimiva 3136 . . . 4 ((𝜑𝑥𝑆) → ∀𝑦𝑆𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
5719, 56jca 510 . . 3 ((𝜑𝑥𝑆) → (((Id‘𝐶)‘𝑥) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) ∧ ∀𝑦𝑆𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))
5857ralrimiva 3136 . 2 (𝜑 → ∀𝑥𝑆 (((Id‘𝐶)‘𝑥) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) ∧ ∀𝑦𝑆𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))
59 xpss12 5689 . . . . 5 ((𝑆𝐵𝑆𝐵) → (𝑆 × 𝑆) ⊆ (𝐵 × 𝐵))
6012, 12, 59syl2anc 582 . . . 4 (𝜑 → (𝑆 × 𝑆) ⊆ (𝐵 × 𝐵))
61 fnssres 6676 . . . 4 ((𝐻 Fn (𝐵 × 𝐵) ∧ (𝑆 × 𝑆) ⊆ (𝐵 × 𝐵)) → (𝐻 ↾ (𝑆 × 𝑆)) Fn (𝑆 × 𝑆))
623, 60, 61sylancr 585 . . 3 (𝜑 → (𝐻 ↾ (𝑆 × 𝑆)) Fn (𝑆 × 𝑆))
631, 9, 20, 10, 62issubc2 17850 . 2 (𝜑 → ((𝐻 ↾ (𝑆 × 𝑆)) ∈ (Subcat‘𝐶) ↔ ((𝐻 ↾ (𝑆 × 𝑆)) ⊆cat 𝐻 ∧ ∀𝑥𝑆 (((Id‘𝐶)‘𝑥) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) ∧ ∀𝑦𝑆𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))))
647, 58, 63mpbir2and 711 1 (𝜑 → (𝐻 ↾ (𝑆 × 𝑆)) ∈ (Subcat‘𝐶))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 394   = wceq 1534  wcel 2099  wral 3051  Vcvv 3462  wss 3946  cop 4629   class class class wbr 5145   × cxp 5672  cres 5676   Fn wfn 6541  cfv 6546  (class class class)co 7416  Basecbs 17208  Hom chom 17272  compcco 17273  Catccat 17672  Idccid 17673  Homf chomf 17674  cat cssc 17818  Subcatcsubc 17820
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1790  ax-4 1804  ax-5 1906  ax-6 1964  ax-7 2004  ax-8 2101  ax-9 2109  ax-10 2130  ax-11 2147  ax-12 2167  ax-ext 2697  ax-rep 5282  ax-sep 5296  ax-nul 5303  ax-pow 5361  ax-pr 5425  ax-un 7738
This theorem depends on definitions:  df-bi 206  df-an 395  df-or 846  df-3an 1086  df-tru 1537  df-fal 1547  df-ex 1775  df-nf 1779  df-sb 2061  df-mo 2529  df-eu 2558  df-clab 2704  df-cleq 2718  df-clel 2803  df-nfc 2878  df-ne 2931  df-ral 3052  df-rex 3061  df-rmo 3364  df-reu 3365  df-rab 3420  df-v 3464  df-sbc 3776  df-csb 3892  df-dif 3949  df-un 3951  df-in 3953  df-ss 3963  df-nul 4323  df-if 4524  df-pw 4599  df-sn 4624  df-pr 4626  df-op 4630  df-uni 4906  df-iun 4995  df-br 5146  df-opab 5208  df-mpt 5229  df-id 5572  df-xp 5680  df-rel 5681  df-cnv 5682  df-co 5683  df-dm 5684  df-rn 5685  df-res 5686  df-ima 5687  df-iota 6498  df-fun 6548  df-fn 6549  df-f 6550  df-f1 6551  df-fo 6552  df-f1o 6553  df-fv 6554  df-riota 7372  df-ov 7419  df-oprab 7420  df-mpo 7421  df-1st 7995  df-2nd 7996  df-pm 8850  df-ixp 8919  df-cat 17676  df-cid 17677  df-homf 17678  df-ssc 17821  df-subc 17823
This theorem is referenced by:  resscat  17866  funcres2c  17918  ressffth  17955  funcsetcres2  18110
  Copyright terms: Public domain W3C validator