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

Theorem fthmon 17992
Description: A faithful functor reflects monomorphisms. (Contributed by Mario Carneiro, 27-Jan-2017.)
Hypotheses
Ref Expression
fthmon.b 𝐵 = (Base‘𝐶)
fthmon.h 𝐻 = (Hom ‘𝐶)
fthmon.f (𝜑𝐹(𝐶 Faith 𝐷)𝐺)
fthmon.x (𝜑𝑋𝐵)
fthmon.y (𝜑𝑌𝐵)
fthmon.r (𝜑𝑅 ∈ (𝑋𝐻𝑌))
fthmon.m 𝑀 = (Mono‘𝐶)
fthmon.n 𝑁 = (Mono‘𝐷)
fthmon.1 (𝜑 → ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝑁(𝐹𝑌)))
Assertion
Ref Expression
fthmon (𝜑𝑅 ∈ (𝑋𝑀𝑌))

Proof of Theorem fthmon
Dummy variables 𝑓 𝑔 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fthmon.r . 2 (𝜑𝑅 ∈ (𝑋𝐻𝑌))
2 eqid 2762 . . . . . 6 (Base‘𝐷) = (Base‘𝐷)
3 eqid 2762 . . . . . 6 (Hom ‘𝐷) = (Hom ‘𝐷)
4 eqid 2762 . . . . . 6 (comp‘𝐷) = (comp‘𝐷)
5 fthmon.n . . . . . 6 𝑁 = (Mono‘𝐷)
6 fthmon.f . . . . . . . . . . 11 (𝜑𝐹(𝐶 Faith 𝐷)𝐺)
7 fthfunc 17972 . . . . . . . . . . . 12 (𝐶 Faith 𝐷) ⊆ (𝐶 Func 𝐷)
87ssbri 5155 . . . . . . . . . . 11 (𝐹(𝐶 Faith 𝐷)𝐺𝐹(𝐶 Func 𝐷)𝐺)
96, 8syl 18 . . . . . . . . . 10 (𝜑𝐹(𝐶 Func 𝐷)𝐺)
10 df-br 5109 . . . . . . . . . 10 (𝐹(𝐶 Func 𝐷)𝐺 ↔ ⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷))
119, 10sylib 221 . . . . . . . . 9 (𝜑 → ⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷))
12 funcrcl 17926 . . . . . . . . 9 (⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷) → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat))
1311, 12syl 18 . . . . . . . 8 (𝜑 → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat))
1413simprd 500 . . . . . . 7 (𝜑𝐷 ∈ Cat)
1514adantr 485 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐷 ∈ Cat)
16 fthmon.b . . . . . . . 8 𝐵 = (Base‘𝐶)
179adantr 485 . . . . . . . 8 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐹(𝐶 Func 𝐷)𝐺)
1816, 2, 17funcf1 17929 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐹:𝐵⟶(Base‘𝐷))
19 fthmon.x . . . . . . . 8 (𝜑𝑋𝐵)
2019adantr 485 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑋𝐵)
2118, 20ffvelcdmd 7080 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝐹𝑋) ∈ (Base‘𝐷))
22 fthmon.y . . . . . . . 8 (𝜑𝑌𝐵)
2322adantr 485 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑌𝐵)
2418, 23ffvelcdmd 7080 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝐹𝑌) ∈ (Base‘𝐷))
25 simpr1 1212 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑧𝐵)
2618, 25ffvelcdmd 7080 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝐹𝑧) ∈ (Base‘𝐷))
27 fthmon.1 . . . . . . 7 (𝜑 → ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝑁(𝐹𝑌)))
2827adantr 485 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝑁(𝐹𝑌)))
29 fthmon.h . . . . . . . 8 𝐻 = (Hom ‘𝐶)
3016, 29, 3, 17, 25, 20funcf2 17931 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝑧𝐺𝑋):(𝑧𝐻𝑋)⟶((𝐹𝑧)(Hom ‘𝐷)(𝐹𝑋)))
31 simpr2 1213 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑓 ∈ (𝑧𝐻𝑋))
3230, 31ffvelcdmd 7080 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑧𝐺𝑋)‘𝑓) ∈ ((𝐹𝑧)(Hom ‘𝐷)(𝐹𝑋)))
33 simpr3 1214 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑔 ∈ (𝑧𝐻𝑋))
3430, 33ffvelcdmd 7080 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑧𝐺𝑋)‘𝑔) ∈ ((𝐹𝑧)(Hom ‘𝐷)(𝐹𝑋)))
352, 3, 4, 5, 15, 21, 24, 26, 28, 32, 34moni 17799 . . . . 5 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑓)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑔)) ↔ ((𝑧𝐺𝑋)‘𝑓) = ((𝑧𝐺𝑋)‘𝑔)))
36 eqid 2762 . . . . . . . 8 (comp‘𝐶) = (comp‘𝐶)
371adantr 485 . . . . . . . 8 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑅 ∈ (𝑋𝐻𝑌))
3816, 29, 36, 4, 17, 25, 20, 23, 31, 37funcco 17934 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑓)))
3916, 29, 36, 4, 17, 25, 20, 23, 33, 37funcco 17934 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑔)))
4038, 39eqeq12d 2778 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓)) = ((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)) ↔ (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑓)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑔))))
416adantr 485 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐹(𝐶 Faith 𝐷)𝐺)
4213simpld 499 . . . . . . . . 9 (𝜑𝐶 ∈ Cat)
4342adantr 485 . . . . . . . 8 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐶 ∈ Cat)
4416, 29, 36, 43, 25, 20, 23, 31, 37catcocl 17747 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) ∈ (𝑧𝐻𝑌))
4516, 29, 36, 43, 25, 20, 23, 33, 37catcocl 17747 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔) ∈ (𝑧𝐻𝑌))
4616, 29, 3, 41, 25, 23, 44, 45fthi 17983 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓)) = ((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)) ↔ (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)))
4740, 46bitr3d 284 . . . . 5 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑓)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑔)) ↔ (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)))
4816, 29, 3, 41, 25, 20, 31, 33fthi 17983 . . . . 5 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (((𝑧𝐺𝑋)‘𝑓) = ((𝑧𝐺𝑋)‘𝑔) ↔ 𝑓 = 𝑔))
4935, 47, 483bitr3d 312 . . . 4 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔) ↔ 𝑓 = 𝑔))
5049biimpd 232 . . 3 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔) → 𝑓 = 𝑔))
5150ralrimivvva 3210 . 2 (𝜑 → ∀𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋)∀𝑔 ∈ (𝑧𝐻𝑋)((𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔) → 𝑓 = 𝑔))
52 fthmon.m . . 3 𝑀 = (Mono‘𝐶)
5316, 29, 36, 52, 42, 19, 22ismon2 17797 . 2 (𝜑 → (𝑅 ∈ (𝑋𝑀𝑌) ↔ (𝑅 ∈ (𝑋𝐻𝑌) ∧ ∀𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋)∀𝑔 ∈ (𝑧𝐻𝑋)((𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔) → 𝑓 = 𝑔))))
541, 51, 53mpbir2and 725 1 (𝜑𝑅 ∈ (𝑋𝑀𝑌))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 400  w3a 1102   = wceq 1569  wcel 2142  wral 3078  cop 4594   class class class wbr 5108  cfv 6536  (class class class)co 7412  Basecbs 17275  Hom chom 17327  compcco 17328  Catccat 17726  Monocmon 17791   Func cfunc 17917   Faith cfth 17968
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5237  ax-sep 5256  ax-nul 5268  ax-pow 5335  ax-pr 5403  ax-un 7734
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-ral 3079  df-rex 3089  df-reu 3369  df-rab 3416  df-v 3456  df-sbc 3744  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-nul 4286  df-if 4487  df-pw 4563  df-sn 4589  df-pr 4591  df-op 4595  df-uni 4872  df-iun 4957  df-br 5109  df-opab 5173  df-mpt 5192  df-id 5555  df-xp 5666  df-rel 5667  df-cnv 5668  df-co 5669  df-dm 5670  df-rn 5671  df-res 5672  df-ima 5673  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-ov 7415  df-oprab 7416  df-mpo 7417  df-1st 7984  df-2nd 7985  df-map 8824  df-ixp 8894  df-cat 17730  df-mon 17793  df-func 17921  df-fth 17970
This theorem is used by:  fthepi  17993
  Copyright terms: Public domain W3C validator