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

Theorem ffthiso 17983
Description: A fully faithful functor reflects isomorphisms. Corollary 3.32 of [Adamek] p. 35. (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 (𝜑𝑅 ∈ (𝑋𝐻𝑌))
ffthiso.f (𝜑𝐹(𝐶 Full 𝐷)𝐺)
ffthiso.s 𝐼 = (Iso‘𝐶)
ffthiso.t 𝐽 = (Iso‘𝐷)
Assertion
Ref Expression
ffthiso (𝜑 → (𝑅 ∈ (𝑋𝐼𝑌) ↔ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))))

Proof of Theorem ffthiso
Dummy variable 𝑓 is distinct from all other variables.
StepHypRef Expression
1 fthmon.b . . 3 𝐵 = (Base‘𝐶)
2 ffthiso.s . . 3 𝐼 = (Iso‘𝐶)
3 ffthiso.t . . 3 𝐽 = (Iso‘𝐷)
4 fthmon.f . . . . 5 (𝜑𝐹(𝐶 Faith 𝐷)𝐺)
5 fthfunc 17961 . . . . . 6 (𝐶 Faith 𝐷) ⊆ (𝐶 Func 𝐷)
65ssbri 5156 . . . . 5 (𝐹(𝐶 Faith 𝐷)𝐺𝐹(𝐶 Func 𝐷)𝐺)
74, 6syl 18 . . . 4 (𝜑𝐹(𝐶 Func 𝐷)𝐺)
87adantr 485 . . 3 ((𝜑𝑅 ∈ (𝑋𝐼𝑌)) → 𝐹(𝐶 Func 𝐷)𝐺)
9 fthmon.x . . . 4 (𝜑𝑋𝐵)
109adantr 485 . . 3 ((𝜑𝑅 ∈ (𝑋𝐼𝑌)) → 𝑋𝐵)
11 fthmon.y . . . 4 (𝜑𝑌𝐵)
1211adantr 485 . . 3 ((𝜑𝑅 ∈ (𝑋𝐼𝑌)) → 𝑌𝐵)
13 simpr 489 . . 3 ((𝜑𝑅 ∈ (𝑋𝐼𝑌)) → 𝑅 ∈ (𝑋𝐼𝑌))
141, 2, 3, 8, 10, 12, 13funciso 17926 . 2 ((𝜑𝑅 ∈ (𝑋𝐼𝑌)) → ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌)))
15 eqid 2763 . . . 4 (Inv‘𝐶) = (Inv‘𝐶)
16 df-br 5110 . . . . . . . 8 (𝐹(𝐶 Func 𝐷)𝐺 ↔ ⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷))
177, 16sylib 221 . . . . . . 7 (𝜑 → ⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷))
18 funcrcl 17915 . . . . . . 7 (⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷) → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat))
1917, 18syl 18 . . . . . 6 (𝜑 → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat))
2019simpld 499 . . . . 5 (𝜑𝐶 ∈ Cat)
2120ad3antrrr 742 . . . 4 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → 𝐶 ∈ Cat)
229ad3antrrr 742 . . . 4 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → 𝑋𝐵)
2311ad3antrrr 742 . . . 4 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → 𝑌𝐵)
24 eqid 2763 . . . . . . . . . . 11 (Base‘𝐷) = (Base‘𝐷)
25 eqid 2763 . . . . . . . . . . 11 (Inv‘𝐷) = (Inv‘𝐷)
2619simprd 500 . . . . . . . . . . 11 (𝜑𝐷 ∈ Cat)
271, 24, 7funcf1 17918 . . . . . . . . . . . 12 (𝜑𝐹:𝐵⟶(Base‘𝐷))
2827, 9ffvelcdmd 7080 . . . . . . . . . . 11 (𝜑 → (𝐹𝑋) ∈ (Base‘𝐷))
2927, 11ffvelcdmd 7080 . . . . . . . . . . 11 (𝜑 → (𝐹𝑌) ∈ (Base‘𝐷))
3024, 25, 26, 28, 29, 3isoval 17817 . . . . . . . . . 10 (𝜑 → ((𝐹𝑋)𝐽(𝐹𝑌)) = dom ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌)))
3130eleq2d 2849 . . . . . . . . 9 (𝜑 → (((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌)) ↔ ((𝑋𝐺𝑌)‘𝑅) ∈ dom ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))))
3231biimpa 481 . . . . . . . 8 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → ((𝑋𝐺𝑌)‘𝑅) ∈ dom ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌)))
3324, 25, 26, 28, 29invfun 17816 . . . . . . . . . 10 (𝜑 → Fun ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌)))
3433adantr 485 . . . . . . . . 9 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → Fun ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌)))
35 funfvbrb 7046 . . . . . . . . 9 (Fun ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌)) → (((𝑋𝐺𝑌)‘𝑅) ∈ dom ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌)) ↔ ((𝑋𝐺𝑌)‘𝑅)((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))(((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅))))
3634, 35syl 18 . . . . . . . 8 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → (((𝑋𝐺𝑌)‘𝑅) ∈ dom ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌)) ↔ ((𝑋𝐺𝑌)‘𝑅)((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))(((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅))))
3732, 36mpbid 235 . . . . . . 7 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → ((𝑋𝐺𝑌)‘𝑅)((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))(((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)))
3837ad2antrr 738 . . . . . 6 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → ((𝑋𝐺𝑌)‘𝑅)((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))(((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)))
39 simpr 489 . . . . . 6 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓))
4038, 39breqtrd 5137 . . . . 5 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → ((𝑋𝐺𝑌)‘𝑅)((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))((𝑌𝐺𝑋)‘𝑓))
41 fthmon.h . . . . . 6 𝐻 = (Hom ‘𝐶)
424ad3antrrr 742 . . . . . 6 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → 𝐹(𝐶 Faith 𝐷)𝐺)
43 fthmon.r . . . . . . 7 (𝜑𝑅 ∈ (𝑋𝐻𝑌))
4443ad3antrrr 742 . . . . . 6 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → 𝑅 ∈ (𝑋𝐻𝑌))
45 simplr 780 . . . . . 6 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → 𝑓 ∈ (𝑌𝐻𝑋))
461, 41, 42, 22, 23, 44, 45, 15, 25fthinv 17980 . . . . 5 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → (𝑅(𝑋(Inv‘𝐶)𝑌)𝑓 ↔ ((𝑋𝐺𝑌)‘𝑅)((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))((𝑌𝐺𝑋)‘𝑓)))
4740, 46mpbird 260 . . . 4 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → 𝑅(𝑋(Inv‘𝐶)𝑌)𝑓)
481, 15, 21, 22, 23, 2, 47inviso1 17818 . . 3 ((((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) ∧ 𝑓 ∈ (𝑌𝐻𝑋)) ∧ (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓)) → 𝑅 ∈ (𝑋𝐼𝑌))
49 eqid 2763 . . . 4 (Hom ‘𝐷) = (Hom ‘𝐷)
50 ffthiso.f . . . . 5 (𝜑𝐹(𝐶 Full 𝐷)𝐺)
5150adantr 485 . . . 4 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → 𝐹(𝐶 Full 𝐷)𝐺)
5211adantr 485 . . . 4 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → 𝑌𝐵)
539adantr 485 . . . 4 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → 𝑋𝐵)
5424, 49, 3, 26, 29, 28isohom 17828 . . . . . 6 (𝜑 → ((𝐹𝑌)𝐽(𝐹𝑋)) ⊆ ((𝐹𝑌)(Hom ‘𝐷)(𝐹𝑋)))
5554adantr 485 . . . . 5 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → ((𝐹𝑌)𝐽(𝐹𝑋)) ⊆ ((𝐹𝑌)(Hom ‘𝐷)(𝐹𝑋)))
5624, 25, 26, 28, 29, 3invf 17820 . . . . . 6 (𝜑 → ((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌)):((𝐹𝑋)𝐽(𝐹𝑌))⟶((𝐹𝑌)𝐽(𝐹𝑋)))
5756ffvelcdmda 7079 . . . . 5 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) ∈ ((𝐹𝑌)𝐽(𝐹𝑋)))
5855, 57sseldd 3938 . . . 4 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → (((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) ∈ ((𝐹𝑌)(Hom ‘𝐷)(𝐹𝑋)))
591, 49, 41, 51, 52, 53, 58fulli 17967 . . 3 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → ∃𝑓 ∈ (𝑌𝐻𝑋)(((𝐹𝑋)(Inv‘𝐷)(𝐹𝑌))‘((𝑋𝐺𝑌)‘𝑅)) = ((𝑌𝐺𝑋)‘𝑓))
6048, 59r19.29a 3173 . 2 ((𝜑 ∧ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))) → 𝑅 ∈ (𝑋𝐼𝑌))
6114, 60impbida 812 1 (𝜑 → (𝑅 ∈ (𝑋𝐼𝑌) ↔ ((𝑋𝐺𝑌)‘𝑅) ∈ ((𝐹𝑋)𝐽(𝐹𝑌))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400   = wceq 1570  wcel 2143  wss 3905  cop 4595   class class class wbr 5109  dom cdm 5661  Fun wfun 6530  cfv 6536  (class class class)co 7410  Basecbs 17264  Hom chom 17316  Catccat 17715  Invcinv 17797  Isociso 17798   Func cfunc 17906   Full cful 17956   Faith cfth 17957
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-8 2145  ax-9 2153  ax-10 2176  ax-11 2192  ax-12 2213  ax-ext 2735  ax-rep 5238  ax-sep 5257  ax-nul 5269  ax-pow 5336  ax-pr 5404  ax-un 7732
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-nfc 2912  df-ne 2959  df-ral 3080  df-rex 3090  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3457  df-sbc 3745  df-csb 3854  df-dif 3908  df-un 3910  df-in 3912  df-ss 3922  df-nul 4287  df-if 4488  df-pw 4564  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4873  df-iun 4958  df-br 5110  df-opab 5174  df-mpt 5193  df-id 5556  df-xp 5667  df-rel 5668  df-cnv 5669  df-co 5670  df-dm 5671  df-rn 5672  df-res 5673  df-ima 5674  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-riota 7367  df-ov 7413  df-oprab 7414  df-mpo 7415  df-1st 7982  df-2nd 7983  df-map 8822  df-ixp 8892  df-cat 17719  df-cid 17720  df-sect 17799  df-inv 17800  df-iso 17801  df-func 17910  df-full 17958  df-fth 17959
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator