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

Theorem fthmon 18022
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 18002 . . . . . . . . . . . 12 (𝐶 Faith 𝐷) ⊆ (𝐶 Func 𝐷)
87ssbri 5154 . . . . . . . . . . 11 (𝐹(𝐶 Faith 𝐷)𝐺𝐹(𝐶 Func 𝐷)𝐺)
96, 8syl 18 . . . . . . . . . 10 (𝜑𝐹(𝐶 Func 𝐷)𝐺)
10 df-br 5108 . . . . . . . . . 10 (𝐹(𝐶 Func 𝐷)𝐺 ↔ ⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷))
119, 10sylib 221 . . . . . . . . 9 (𝜑 → ⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷))
12 funcrcl 17956 . . . . . . . . 9 (⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷) → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat))
1311, 12syl 18 . . . . . . . 8 (𝜑 → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat))
1413simprd 501 . . . . . . 7 (𝜑𝐷 ∈ Cat)
1514adantr 486 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐷 ∈ Cat)
16 fthmon.b . . . . . . . 8 𝐵 = (Base‘𝐶)
179adantr 486 . . . . . . . 8 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐹(𝐶 Func 𝐷)𝐺)
1816, 2, 17funcf1 17959 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐹:𝐵⟶(Base‘𝐷))
19 fthmon.x . . . . . . . 8 (𝜑𝑋𝐵)
2019adantr 486 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑋𝐵)
2118, 20ffvelcdmd 7081 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝐹𝑋) ∈ (Base‘𝐷))
22 fthmon.y . . . . . . . 8 (𝜑𝑌𝐵)
2322adantr 486 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑌𝐵)
2418, 23ffvelcdmd 7081 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝐹𝑌) ∈ (Base‘𝐷))
25 simpr1 1213 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑧𝐵)
2618, 25ffvelcdmd 7081 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝐹𝑧) ∈ (Base‘𝐷))
27 fthmon.1 . . . . . . 7 (𝜑 → ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝑁(𝐹𝑌)))
2827adantr 486 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝑁(𝐹𝑌)))
29 fthmon.h . . . . . . . 8 𝐻 = (Hom ‘𝐶)
3016, 29, 3, 17, 25, 20funcf2 17961 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝑧𝐺𝑋):(𝑧𝐻𝑋)⟶((𝐹𝑧)(Hom ‘𝐷)(𝐹𝑋)))
31 simpr2 1214 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑓 ∈ (𝑧𝐻𝑋))
3230, 31ffvelcdmd 7081 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑧𝐺𝑋)‘𝑓) ∈ ((𝐹𝑧)(Hom ‘𝐷)(𝐹𝑋)))
33 simpr3 1215 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑔 ∈ (𝑧𝐻𝑋))
3430, 33ffvelcdmd 7081 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑧𝐺𝑋)‘𝑔) ∈ ((𝐹𝑧)(Hom ‘𝐷)(𝐹𝑋)))
352, 3, 4, 5, 15, 21, 24, 26, 28, 32, 34moni 17829 . . . . 5 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑓)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑔)) ↔ ((𝑧𝐺𝑋)‘𝑓) = ((𝑧𝐺𝑋)‘𝑔)))
36 eqid 2762 . . . . . . . 8 (comp‘𝐶) = (comp‘𝐶)
371adantr 486 . . . . . . . 8 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝑅 ∈ (𝑋𝐻𝑌))
3816, 29, 36, 4, 17, 25, 20, 23, 31, 37funcco 17964 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑓)))
3916, 29, 36, 4, 17, 25, 20, 23, 33, 37funcco 17964 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑔)))
4038, 39eqeq12d 2778 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓)) = ((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)) ↔ (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑓)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑔))))
416adantr 486 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐹(𝐶 Faith 𝐷)𝐺)
4213simpld 500 . . . . . . . . 9 (𝜑𝐶 ∈ Cat)
4342adantr 486 . . . . . . . 8 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → 𝐶 ∈ Cat)
4416, 29, 36, 43, 25, 20, 23, 31, 37catcocl 17777 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) ∈ (𝑧𝐻𝑌))
4516, 29, 36, 43, 25, 20, 23, 33, 37catcocl 17777 . . . . . . 7 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔) ∈ (𝑧𝐻𝑌))
4616, 29, 3, 41, 25, 23, 44, 45fthi 18013 . . . . . 6 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → (((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓)) = ((𝑧𝐺𝑌)‘(𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)) ↔ (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)))
4740, 46bitr3d 284 . . . . 5 ((𝜑 ∧ (𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋) ∧ 𝑔 ∈ (𝑧𝐻𝑋))) → ((((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑓)) = (((𝑋𝐺𝑌)‘𝑅)(⟨(𝐹𝑧), (𝐹𝑋)⟩(comp‘𝐷)(𝐹𝑌))((𝑧𝐺𝑋)‘𝑔)) ↔ (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔)))
4816, 29, 3, 41, 25, 20, 31, 33fthi 18013 . . . . 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 17827 . 2 (𝜑 → (𝑅 ∈ (𝑋𝑀𝑌) ↔ (𝑅 ∈ (𝑋𝐻𝑌) ∧ ∀𝑧𝐵𝑓 ∈ (𝑧𝐻𝑋)∀𝑔 ∈ (𝑧𝐻𝑋)((𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑓) = (𝑅(⟨𝑧, 𝑋⟩(comp‘𝐶)𝑌)𝑔) → 𝑓 = 𝑔))))
541, 51, 53mpbir2and 726 1 (𝜑𝑅 ∈ (𝑋𝑀𝑌))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2145  wral 3078  cop 4593   class class class wbr 5107  cfv 6537  (class class class)co 7416  Basecbs 17305  Hom chom 17357  compcco 17358  Catccat 17756  Monocmon 17821   Func cfunc 17947   Faith cfth 17998
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7739
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  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 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-id 5554  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-ov 7419  df-oprab 7420  df-mpo 7421  df-1st 7989  df-2nd 7990  df-map 8831  df-ixp 8908  df-cat 17760  df-mon 17823  df-func 17951  df-fth 18000
This theorem is used by:  fthepi  18023
  Copyright terms: Public domain W3C validator