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

Theorem cofth 17899
Description: The composition of two faithful functors is faithful. Proposition 3.30(c) in [Adamek] p. 35. (Contributed by Mario Carneiro, 28-Jan-2017.)
Hypotheses
Ref Expression
cofth.f (𝜑𝐹 ∈ (𝐶 Faith 𝐷))
cofth.g (𝜑𝐺 ∈ (𝐷 Faith 𝐸))
Assertion
Ref Expression
cofth (𝜑 → (𝐺func 𝐹) ∈ (𝐶 Faith 𝐸))

Proof of Theorem cofth
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 relfunc 17824 . . 3 Rel (𝐶 Func 𝐸)
2 fthfunc 17871 . . . . 5 (𝐶 Faith 𝐷) ⊆ (𝐶 Func 𝐷)
3 cofth.f . . . . 5 (𝜑𝐹 ∈ (𝐶 Faith 𝐷))
42, 3sselid 3944 . . . 4 (𝜑𝐹 ∈ (𝐶 Func 𝐷))
5 fthfunc 17871 . . . . 5 (𝐷 Faith 𝐸) ⊆ (𝐷 Func 𝐸)
6 cofth.g . . . . 5 (𝜑𝐺 ∈ (𝐷 Faith 𝐸))
75, 6sselid 3944 . . . 4 (𝜑𝐺 ∈ (𝐷 Func 𝐸))
84, 7cofucl 17850 . . 3 (𝜑 → (𝐺func 𝐹) ∈ (𝐶 Func 𝐸))
9 1st2nd 8018 . . 3 ((Rel (𝐶 Func 𝐸) ∧ (𝐺func 𝐹) ∈ (𝐶 Func 𝐸)) → (𝐺func 𝐹) = ⟨(1st ‘(𝐺func 𝐹)), (2nd ‘(𝐺func 𝐹))⟩)
101, 8, 9sylancr 587 . 2 (𝜑 → (𝐺func 𝐹) = ⟨(1st ‘(𝐺func 𝐹)), (2nd ‘(𝐺func 𝐹))⟩)
11 1st2ndbr 8021 . . . . 5 ((Rel (𝐶 Func 𝐸) ∧ (𝐺func 𝐹) ∈ (𝐶 Func 𝐸)) → (1st ‘(𝐺func 𝐹))(𝐶 Func 𝐸)(2nd ‘(𝐺func 𝐹)))
121, 8, 11sylancr 587 . . . 4 (𝜑 → (1st ‘(𝐺func 𝐹))(𝐶 Func 𝐸)(2nd ‘(𝐺func 𝐹)))
13 eqid 2729 . . . . . . . 8 (Base‘𝐷) = (Base‘𝐷)
14 eqid 2729 . . . . . . . 8 (Hom ‘𝐷) = (Hom ‘𝐷)
15 eqid 2729 . . . . . . . 8 (Hom ‘𝐸) = (Hom ‘𝐸)
16 relfth 17873 . . . . . . . . 9 Rel (𝐷 Faith 𝐸)
176adantr 480 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝐺 ∈ (𝐷 Faith 𝐸))
18 1st2ndbr 8021 . . . . . . . . 9 ((Rel (𝐷 Faith 𝐸) ∧ 𝐺 ∈ (𝐷 Faith 𝐸)) → (1st𝐺)(𝐷 Faith 𝐸)(2nd𝐺))
1916, 17, 18sylancr 587 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (1st𝐺)(𝐷 Faith 𝐸)(2nd𝐺))
20 eqid 2729 . . . . . . . . . 10 (Base‘𝐶) = (Base‘𝐶)
21 relfunc 17824 . . . . . . . . . . 11 Rel (𝐶 Func 𝐷)
224adantr 480 . . . . . . . . . . 11 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝐹 ∈ (𝐶 Func 𝐷))
23 1st2ndbr 8021 . . . . . . . . . . 11 ((Rel (𝐶 Func 𝐷) ∧ 𝐹 ∈ (𝐶 Func 𝐷)) → (1st𝐹)(𝐶 Func 𝐷)(2nd𝐹))
2421, 22, 23sylancr 587 . . . . . . . . . 10 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (1st𝐹)(𝐶 Func 𝐷)(2nd𝐹))
2520, 13, 24funcf1 17828 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (1st𝐹):(Base‘𝐶)⟶(Base‘𝐷))
26 simprl 770 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝑥 ∈ (Base‘𝐶))
2725, 26ffvelcdmd 7057 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((1st𝐹)‘𝑥) ∈ (Base‘𝐷))
28 simprr 772 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝑦 ∈ (Base‘𝐶))
2925, 28ffvelcdmd 7057 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((1st𝐹)‘𝑦) ∈ (Base‘𝐷))
3013, 14, 15, 19, 27, 29fthf1 17881 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)):(((1st𝐹)‘𝑥)(Hom ‘𝐷)((1st𝐹)‘𝑦))–1-1→(((1st𝐺)‘((1st𝐹)‘𝑥))(Hom ‘𝐸)((1st𝐺)‘((1st𝐹)‘𝑦))))
31 eqid 2729 . . . . . . . 8 (Hom ‘𝐶) = (Hom ‘𝐶)
32 relfth 17873 . . . . . . . . 9 Rel (𝐶 Faith 𝐷)
333adantr 480 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝐹 ∈ (𝐶 Faith 𝐷))
34 1st2ndbr 8021 . . . . . . . . 9 ((Rel (𝐶 Faith 𝐷) ∧ 𝐹 ∈ (𝐶 Faith 𝐷)) → (1st𝐹)(𝐶 Faith 𝐷)(2nd𝐹))
3532, 33, 34sylancr 587 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (1st𝐹)(𝐶 Faith 𝐷)(2nd𝐹))
3620, 31, 14, 35, 26, 28fthf1 17881 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝑥(2nd𝐹)𝑦):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st𝐹)‘𝑥)(Hom ‘𝐷)((1st𝐹)‘𝑦)))
37 f1co 6767 . . . . . . 7 (((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)):(((1st𝐹)‘𝑥)(Hom ‘𝐷)((1st𝐹)‘𝑦))–1-1→(((1st𝐺)‘((1st𝐹)‘𝑥))(Hom ‘𝐸)((1st𝐺)‘((1st𝐹)‘𝑦))) ∧ (𝑥(2nd𝐹)𝑦):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st𝐹)‘𝑥)(Hom ‘𝐷)((1st𝐹)‘𝑦))) → ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st𝐺)‘((1st𝐹)‘𝑥))(Hom ‘𝐸)((1st𝐺)‘((1st𝐹)‘𝑦))))
3830, 36, 37syl2anc 584 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st𝐺)‘((1st𝐹)‘𝑥))(Hom ‘𝐸)((1st𝐺)‘((1st𝐹)‘𝑦))))
397adantr 480 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → 𝐺 ∈ (𝐷 Func 𝐸))
4020, 22, 39, 26, 28cofu2nd 17847 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝑥(2nd ‘(𝐺func 𝐹))𝑦) = ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))
41 eqidd 2730 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝑥(Hom ‘𝐶)𝑦) = (𝑥(Hom ‘𝐶)𝑦))
4220, 22, 39, 26cofu1 17846 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((1st ‘(𝐺func 𝐹))‘𝑥) = ((1st𝐺)‘((1st𝐹)‘𝑥)))
4320, 22, 39, 28cofu1 17846 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((1st ‘(𝐺func 𝐹))‘𝑦) = ((1st𝐺)‘((1st𝐹)‘𝑦)))
4442, 43oveq12d 7405 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (((1st ‘(𝐺func 𝐹))‘𝑥)(Hom ‘𝐸)((1st ‘(𝐺func 𝐹))‘𝑦)) = (((1st𝐺)‘((1st𝐹)‘𝑥))(Hom ‘𝐸)((1st𝐺)‘((1st𝐹)‘𝑦))))
4540, 41, 44f1eq123d 6792 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((𝑥(2nd ‘(𝐺func 𝐹))𝑦):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st ‘(𝐺func 𝐹))‘𝑥)(Hom ‘𝐸)((1st ‘(𝐺func 𝐹))‘𝑦)) ↔ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st𝐺)‘((1st𝐹)‘𝑥))(Hom ‘𝐸)((1st𝐺)‘((1st𝐹)‘𝑦)))))
4638, 45mpbird 257 . . . . 5 ((𝜑 ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → (𝑥(2nd ‘(𝐺func 𝐹))𝑦):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st ‘(𝐺func 𝐹))‘𝑥)(Hom ‘𝐸)((1st ‘(𝐺func 𝐹))‘𝑦)))
4746ralrimivva 3180 . . . 4 (𝜑 → ∀𝑥 ∈ (Base‘𝐶)∀𝑦 ∈ (Base‘𝐶)(𝑥(2nd ‘(𝐺func 𝐹))𝑦):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st ‘(𝐺func 𝐹))‘𝑥)(Hom ‘𝐸)((1st ‘(𝐺func 𝐹))‘𝑦)))
4820, 31, 15isfth2 17879 . . . 4 ((1st ‘(𝐺func 𝐹))(𝐶 Faith 𝐸)(2nd ‘(𝐺func 𝐹)) ↔ ((1st ‘(𝐺func 𝐹))(𝐶 Func 𝐸)(2nd ‘(𝐺func 𝐹)) ∧ ∀𝑥 ∈ (Base‘𝐶)∀𝑦 ∈ (Base‘𝐶)(𝑥(2nd ‘(𝐺func 𝐹))𝑦):(𝑥(Hom ‘𝐶)𝑦)–1-1→(((1st ‘(𝐺func 𝐹))‘𝑥)(Hom ‘𝐸)((1st ‘(𝐺func 𝐹))‘𝑦))))
4912, 47, 48sylanbrc 583 . . 3 (𝜑 → (1st ‘(𝐺func 𝐹))(𝐶 Faith 𝐸)(2nd ‘(𝐺func 𝐹)))
50 df-br 5108 . . 3 ((1st ‘(𝐺func 𝐹))(𝐶 Faith 𝐸)(2nd ‘(𝐺func 𝐹)) ↔ ⟨(1st ‘(𝐺func 𝐹)), (2nd ‘(𝐺func 𝐹))⟩ ∈ (𝐶 Faith 𝐸))
5149, 50sylib 218 . 2 (𝜑 → ⟨(1st ‘(𝐺func 𝐹)), (2nd ‘(𝐺func 𝐹))⟩ ∈ (𝐶 Faith 𝐸))
5210, 51eqeltrd 2828 1 (𝜑 → (𝐺func 𝐹) ∈ (𝐶 Faith 𝐸))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1540  wcel 2109  wral 3044  cop 4595   class class class wbr 5107  ccom 5642  Rel wrel 5643  1-1wf1 6508  cfv 6511  (class class class)co 7387  1st c1st 7966  2nd c2nd 7967  Basecbs 17179  Hom chom 17231   Func cfunc 17816  func ccofu 17818   Faith cfth 17867
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5234  ax-sep 5251  ax-nul 5261  ax-pow 5320  ax-pr 5387  ax-un 7711
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-ral 3045  df-rex 3054  df-rmo 3354  df-reu 3355  df-rab 3406  df-v 3449  df-sbc 3754  df-csb 3863  df-dif 3917  df-un 3919  df-in 3921  df-ss 3931  df-nul 4297  df-if 4489  df-pw 4565  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4872  df-iun 4957  df-br 5108  df-opab 5170  df-mpt 5189  df-id 5533  df-xp 5644  df-rel 5645  df-cnv 5646  df-co 5647  df-dm 5648  df-rn 5649  df-res 5650  df-ima 5651  df-iota 6464  df-fun 6513  df-fn 6514  df-f 6515  df-f1 6516  df-fo 6517  df-f1o 6518  df-fv 6519  df-riota 7344  df-ov 7390  df-oprab 7391  df-mpo 7392  df-1st 7968  df-2nd 7969  df-map 8801  df-ixp 8871  df-cat 17629  df-cid 17630  df-func 17820  df-cofu 17822  df-fth 17869
This theorem is referenced by:  coffth  17900
  Copyright terms: Public domain W3C validator