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

Theorem fullsubc 17757
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 17599 . . . 4 𝐻 Fn (𝐵 × 𝐵)
42fvexi 6836 . . . 4 𝐵 ∈ V
5 sscres 17730 . . . 4 ((𝐻 Fn (𝐵 × 𝐵) ∧ 𝐵 ∈ V) → (𝐻 ↾ (𝑆 × 𝑆)) ⊆cat 𝐻)
63, 4, 5mp2an 692 . . 3 (𝐻 ↾ (𝑆 × 𝑆)) ⊆cat 𝐻
76a1i 11 . 2 (𝜑 → (𝐻 ↾ (𝑆 × 𝑆)) ⊆cat 𝐻)
8 eqid 2731 . . . . . 6 (Hom ‘𝐶) = (Hom ‘𝐶)
9 eqid 2731 . . . . . 6 (Id‘𝐶) = (Id‘𝐶)
10 fullsubc.c . . . . . . 7 (𝜑𝐶 ∈ Cat)
1110adantr 480 . . . . . 6 ((𝜑𝑥𝑆) → 𝐶 ∈ Cat)
12 fullsubc.s . . . . . . 7 (𝜑𝑆𝐵)
1312sselda 3929 . . . . . 6 ((𝜑𝑥𝑆) → 𝑥𝐵)
142, 8, 9, 11, 13catidcl 17588 . . . . 5 ((𝜑𝑥𝑆) → ((Id‘𝐶)‘𝑥) ∈ (𝑥(Hom ‘𝐶)𝑥))
15 simpr 484 . . . . . . 7 ((𝜑𝑥𝑆) → 𝑥𝑆)
1615, 15ovresd 7513 . . . . . 6 ((𝜑𝑥𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) = (𝑥𝐻𝑥))
171, 2, 8, 13, 13homfval 17598 . . . . . 6 ((𝜑𝑥𝑆) → (𝑥𝐻𝑥) = (𝑥(Hom ‘𝐶)𝑥))
1816, 17eqtrd 2766 . . . . 5 ((𝜑𝑥𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) = (𝑥(Hom ‘𝐶)𝑥))
1914, 18eleqtrrd 2834 . . . 4 ((𝜑𝑥𝑆) → ((Id‘𝐶)‘𝑥) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥))
20 eqid 2731 . . . . . . . . . 10 (comp‘𝐶) = (comp‘𝐶)
2111ad3antrrr 730 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝐶 ∈ Cat)
2213ad3antrrr 730 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑥𝐵)
2312adantr 480 . . . . . . . . . . . . 13 ((𝜑𝑥𝑆) → 𝑆𝐵)
2423sselda 3929 . . . . . . . . . . . 12 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑦𝐵)
2524adantr 480 . . . . . . . . . . 11 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → 𝑦𝐵)
2625adantr 480 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑦𝐵)
2723adantr 480 . . . . . . . . . . . 12 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑆𝐵)
2827sselda 3929 . . . . . . . . . . 11 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → 𝑧𝐵)
2928adantr 480 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑧𝐵)
30 simprl 770 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦))
31 simprr 772 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))
322, 8, 20, 21, 22, 26, 29, 30, 31catcocl 17591 . . . . . . . . 9 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(Hom ‘𝐶)𝑧))
3315ad3antrrr 730 . . . . . . . . . . 11 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑥𝑆)
34 simplr 768 . . . . . . . . . . 11 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → 𝑧𝑆)
3533, 34ovresd 7513 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧) = (𝑥𝐻𝑧))
361, 2, 8, 22, 29homfval 17598 . . . . . . . . . 10 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑥𝐻𝑧) = (𝑥(Hom ‘𝐶)𝑧))
3735, 36eqtrd 2766 . . . . . . . . 9 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧) = (𝑥(Hom ‘𝐶)𝑧))
3832, 37eleqtrrd 2834 . . . . . . . 8 (((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) ∧ (𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧))) → (𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
3938ralrimivva 3175 . . . . . . 7 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → ∀𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦)∀𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
40 simplr 768 . . . . . . . . . . 11 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑥𝑆)
41 simpr 484 . . . . . . . . . . 11 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑦𝑆)
4240, 41ovresd 7513 . . . . . . . . . 10 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦) = (𝑥𝐻𝑦))
4313adantr 480 . . . . . . . . . . 11 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → 𝑥𝐵)
441, 2, 8, 43, 24homfval 17598 . . . . . . . . . 10 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → (𝑥𝐻𝑦) = (𝑥(Hom ‘𝐶)𝑦))
4542, 44eqtrd 2766 . . . . . . . . 9 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦) = (𝑥(Hom ‘𝐶)𝑦))
4645adantr 480 . . . . . . . 8 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦) = (𝑥(Hom ‘𝐶)𝑦))
47 simplr 768 . . . . . . . . . . 11 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → 𝑦𝑆)
48 simpr 484 . . . . . . . . . . 11 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → 𝑧𝑆)
4947, 48ovresd 7513 . . . . . . . . . 10 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧) = (𝑦𝐻𝑧))
501, 2, 8, 25, 28homfval 17598 . . . . . . . . . 10 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (𝑦𝐻𝑧) = (𝑦(Hom ‘𝐶)𝑧))
5149, 50eqtrd 2766 . . . . . . . . 9 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧) = (𝑦(Hom ‘𝐶)𝑧))
5251raleqdv 3292 . . . . . . . 8 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧) ↔ ∀𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))
5346, 52raleqbidv 3312 . . . . . . 7 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → (∀𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧) ↔ ∀𝑓 ∈ (𝑥(Hom ‘𝐶)𝑦)∀𝑔 ∈ (𝑦(Hom ‘𝐶)𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))
5439, 53mpbird 257 . . . . . 6 ((((𝜑𝑥𝑆) ∧ 𝑦𝑆) ∧ 𝑧𝑆) → ∀𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
5554ralrimiva 3124 . . . . 5 (((𝜑𝑥𝑆) ∧ 𝑦𝑆) → ∀𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
5655ralrimiva 3124 . . . 4 ((𝜑𝑥𝑆) → ∀𝑦𝑆𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧))
5719, 56jca 511 . . 3 ((𝜑𝑥𝑆) → (((Id‘𝐶)‘𝑥) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) ∧ ∀𝑦𝑆𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))
5857ralrimiva 3124 . 2 (𝜑 → ∀𝑥𝑆 (((Id‘𝐶)‘𝑥) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) ∧ ∀𝑦𝑆𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))
59 xpss12 5629 . . . . 5 ((𝑆𝐵𝑆𝐵) → (𝑆 × 𝑆) ⊆ (𝐵 × 𝐵))
6012, 12, 59syl2anc 584 . . . 4 (𝜑 → (𝑆 × 𝑆) ⊆ (𝐵 × 𝐵))
61 fnssres 6604 . . . 4 ((𝐻 Fn (𝐵 × 𝐵) ∧ (𝑆 × 𝑆) ⊆ (𝐵 × 𝐵)) → (𝐻 ↾ (𝑆 × 𝑆)) Fn (𝑆 × 𝑆))
623, 60, 61sylancr 587 . . 3 (𝜑 → (𝐻 ↾ (𝑆 × 𝑆)) Fn (𝑆 × 𝑆))
631, 9, 20, 10, 62issubc2 17743 . 2 (𝜑 → ((𝐻 ↾ (𝑆 × 𝑆)) ∈ (Subcat‘𝐶) ↔ ((𝐻 ↾ (𝑆 × 𝑆)) ⊆cat 𝐻 ∧ ∀𝑥𝑆 (((Id‘𝐶)‘𝑥) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑥) ∧ ∀𝑦𝑆𝑧𝑆𝑓 ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑦)∀𝑔 ∈ (𝑦(𝐻 ↾ (𝑆 × 𝑆))𝑧)(𝑔(⟨𝑥, 𝑦⟩(comp‘𝐶)𝑧)𝑓) ∈ (𝑥(𝐻 ↾ (𝑆 × 𝑆))𝑧)))))
647, 58, 63mpbir2and 713 1 (𝜑 → (𝐻 ↾ (𝑆 × 𝑆)) ∈ (Subcat‘𝐶))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1541  wcel 2111  wral 3047  Vcvv 3436  wss 3897  cop 4579   class class class wbr 5089   × cxp 5612  cres 5616   Fn wfn 6476  cfv 6481  (class class class)co 7346  Basecbs 17120  Hom chom 17172  compcco 17173  Catccat 17570  Idccid 17571  Homf chomf 17572  cat cssc 17714  Subcatcsubc 17716
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-11 2160  ax-12 2180  ax-ext 2703  ax-rep 5215  ax-sep 5232  ax-nul 5242  ax-pow 5301  ax-pr 5368  ax-un 7668
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-nfc 2881  df-ne 2929  df-ral 3048  df-rex 3057  df-rmo 3346  df-reu 3347  df-rab 3396  df-v 3438  df-sbc 3737  df-csb 3846  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-nul 4281  df-if 4473  df-pw 4549  df-sn 4574  df-pr 4576  df-op 4580  df-uni 4857  df-iun 4941  df-br 5090  df-opab 5152  df-mpt 5171  df-id 5509  df-xp 5620  df-rel 5621  df-cnv 5622  df-co 5623  df-dm 5624  df-rn 5625  df-res 5626  df-ima 5627  df-iota 6437  df-fun 6483  df-fn 6484  df-f 6485  df-f1 6486  df-fo 6487  df-f1o 6488  df-fv 6489  df-riota 7303  df-ov 7349  df-oprab 7350  df-mpo 7351  df-1st 7921  df-2nd 7922  df-pm 8753  df-ixp 8822  df-cat 17574  df-cid 17575  df-homf 17576  df-ssc 17717  df-subc 17719
This theorem is referenced by:  resscat  17759  funcres2c  17810  ressffth  17847  funcsetcres2  18000  imasubc2  49252
  Copyright terms: Public domain W3C validator