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

Theorem 1stfcl 18277
Description: The first projection functor is a functor onto the left argument. (Contributed by Mario Carneiro, 11-Jan-2017.)
Hypotheses
Ref Expression
1stfcl.t 𝑇 = (𝐶 ×c 𝐷)
1stfcl.c (𝜑𝐶 ∈ Cat)
1stfcl.d (𝜑𝐷 ∈ Cat)
1stfcl.p 𝑃 = (𝐶 1stF 𝐷)
Assertion
Ref Expression
1stfcl (𝜑𝑃 ∈ (𝑇 Func 𝐶))

Proof of Theorem 1stfcl
Dummy variables 𝑓 𝑔 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 1stfcl.t . . . 4 𝑇 = (𝐶 ×c 𝐷)
2 eqid 2765 . . . . 5 (Base‘𝐶) = (Base‘𝐶)
3 eqid 2765 . . . . 5 (Base‘𝐷) = (Base‘𝐷)
41, 2, 3xpcbas 18258 . . . 4 ((Base‘𝐶) × (Base‘𝐷)) = (Base‘𝑇)
5 eqid 2765 . . . 4 (Hom ‘𝑇) = (Hom ‘𝑇)
6 1stfcl.c . . . 4 (𝜑𝐶 ∈ Cat)
7 1stfcl.d . . . 4 (𝜑𝐷 ∈ Cat)
8 1stfcl.p . . . 4 𝑃 = (𝐶 1stF 𝐷)
91, 4, 5, 6, 7, 81stfval 18271 . . 3 (𝜑𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩)
10 fo1st 8012 . . . . . . . 8 1st :V–onto→V
11 fofun 6797 . . . . . . . 8 (1st :V–onto→V → Fun 1st )
1210, 11ax-mp 5 . . . . . . 7 Fun 1st
13 fvex 6898 . . . . . . . 8 (Base‘𝐶) ∈ V
14 fvex 6898 . . . . . . . 8 (Base‘𝐷) ∈ V
1513, 14xpex 7758 . . . . . . 7 ((Base‘𝐶) × (Base‘𝐷)) ∈ V
16 resfunexg 7220 . . . . . . 7 ((Fun 1st ∧ ((Base‘𝐶) × (Base‘𝐷)) ∈ V) → (1st ↾ ((Base‘𝐶) × (Base‘𝐷))) ∈ V)
1712, 15, 16mp2an 705 . . . . . 6 (1st ↾ ((Base‘𝐶) × (Base‘𝐷))) ∈ V
1815, 15mpoex 8082 . . . . . 6 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) ∈ V
1917, 18op2ndd 8003 . . . . 5 (𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩ → (2nd𝑃) = (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))))
209, 19syl 18 . . . 4 (𝜑 → (2nd𝑃) = (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))))
2120opeq2d 4847 . . 3 (𝜑 → ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩)
229, 21eqtr4d 2803 . 2 (𝜑𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩)
23 eqid 2765 . . . 4 (Hom ‘𝐶) = (Hom ‘𝐶)
24 eqid 2765 . . . 4 (Id‘𝑇) = (Id‘𝑇)
25 eqid 2765 . . . 4 (Id‘𝐶) = (Id‘𝐶)
26 eqid 2765 . . . 4 (comp‘𝑇) = (comp‘𝑇)
27 eqid 2765 . . . 4 (comp‘𝐶) = (comp‘𝐶)
281, 6, 7xpccat 18270 . . . 4 (𝜑𝑇 ∈ Cat)
29 f1stres 8016 . . . . 5 (1st ↾ ((Base‘𝐶) × (Base‘𝐷))):((Base‘𝐶) × (Base‘𝐷))⟶(Base‘𝐶)
3029a1i 11 . . . 4 (𝜑 → (1st ↾ ((Base‘𝐶) × (Base‘𝐷))):((Base‘𝐶) × (Base‘𝐷))⟶(Base‘𝐶))
31 eqid 2765 . . . . . 6 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) = (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
32 ovex 7452 . . . . . . 7 (𝑥(Hom ‘𝑇)𝑦) ∈ V
33 resfunexg 7220 . . . . . . 7 ((Fun 1st ∧ (𝑥(Hom ‘𝑇)𝑦) ∈ V) → (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) ∈ V)
3412, 32, 33mp2an 705 . . . . . 6 (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) ∈ V
3531, 34fnmpoi 8073 . . . . 5 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷)))
3620fneq1d 6632 . . . . 5 (𝜑 → ((2nd𝑃) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷))) ↔ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷)))))
3735, 36mpbiri 261 . . . 4 (𝜑 → (2nd𝑃) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷))))
38 f1stres 8016 . . . . . 6 (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦))
396adantr 486 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝐶 ∈ Cat)
407adantr 486 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝐷 ∈ Cat)
41 simprl 783 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
42 simprr 785 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))
431, 4, 5, 39, 40, 8, 41, 421stf2 18273 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
44 eqid 2765 . . . . . . . . . 10 (Hom ‘𝐷) = (Hom ‘𝐷)
451, 4, 23, 44, 5, 41, 42xpchom 18260 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(Hom ‘𝑇)𝑦) = (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦))))
4645reseq2d 5980 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) = (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))))
4743, 46eqtrd 2800 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))))
4847feq1d 6691 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((𝑥(2nd𝑃)𝑦):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦)) ↔ (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦))))
4938, 48mpbiri 261 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦)))
50 fvres 6904 . . . . . . . 8 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
5150ad2antrl 741 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
52 fvres 6904 . . . . . . . 8 (𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
5352ad2antll 742 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
5451, 53oveq12d 7437 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)(Hom ‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)) = ((1st𝑥)(Hom ‘𝐶)(1st𝑦)))
5545, 54feq23d 6704 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((𝑥(2nd𝑃)𝑦):(𝑥(Hom ‘𝑇)𝑦)⟶(((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)(Hom ‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)) ↔ (𝑥(2nd𝑃)𝑦):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦))))
5649, 55mpbird 260 . . . 4 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦):(𝑥(Hom ‘𝑇)𝑦)⟶(((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)(Hom ‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)))
5728adantr 486 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑇 ∈ Cat)
58 simpr 490 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
594, 5, 24, 57, 58catidcl 17762 . . . . . . 7 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) ∈ (𝑥(Hom ‘𝑇)𝑥))
6059fvresd 6905 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)) = (1st ‘((Id‘𝑇)‘𝑥)))
61 1st2nd2 8031 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → 𝑥 = ⟨(1st𝑥), (2nd𝑥)⟩)
6261adantl 487 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑥 = ⟨(1st𝑥), (2nd𝑥)⟩)
6362fveq2d 6889 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) = ((Id‘𝑇)‘⟨(1st𝑥), (2nd𝑥)⟩))
646adantr 486 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝐶 ∈ Cat)
657adantr 486 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝐷 ∈ Cat)
66 eqid 2765 . . . . . . . . 9 (Id‘𝐷) = (Id‘𝐷)
67 xp1st 8024 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → (1st𝑥) ∈ (Base‘𝐶))
6867adantl 487 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (1st𝑥) ∈ (Base‘𝐶))
69 xp2nd 8025 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → (2nd𝑥) ∈ (Base‘𝐷))
7069adantl 487 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (2nd𝑥) ∈ (Base‘𝐷))
711, 64, 65, 2, 3, 25, 66, 24, 68, 70xpcid 18269 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘⟨(1st𝑥), (2nd𝑥)⟩) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩)
7263, 71eqtrd 2800 . . . . . . 7 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩)
73 fvex 6898 . . . . . . . 8 ((Id‘𝐶)‘(1st𝑥)) ∈ V
74 fvex 6898 . . . . . . . 8 ((Id‘𝐷)‘(2nd𝑥)) ∈ V
7573, 74op1std 8002 . . . . . . 7 (((Id‘𝑇)‘𝑥) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩ → (1st ‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
7672, 75syl 18 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (1st ‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
7760, 76eqtrd 2800 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
781, 4, 5, 64, 65, 8, 58, 581stf2 18273 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (𝑥(2nd𝑃)𝑥) = (1st ↾ (𝑥(Hom ‘𝑇)𝑥)))
7978fveq1d 6887 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((𝑥(2nd𝑃)𝑥)‘((Id‘𝑇)‘𝑥)) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)))
8050adantl 487 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
8180fveq2d 6889 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝐶)‘((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
8277, 79, 813eqtr4d 2810 . . . 4 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((𝑥(2nd𝑃)𝑥)‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)))
83283ad2ant1 1151 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑇 ∈ Cat)
84 simp21 1225 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
85 simp22 1226 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))
86 simp23 1227 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷)))
87 simp3l 1220 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦))
88 simp3r 1221 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))
894, 5, 26, 83, 84, 85, 86, 87, 88catcocl 17765 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓) ∈ (𝑥(Hom ‘𝑇)𝑧))
9089fvresd 6905 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = (1st ‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)))
911, 4, 5, 26, 84, 85, 86, 87, 88, 27xpcco1st 18264 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (1st ‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st𝑔)(⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧))(1st𝑓)))
9290, 91eqtrd 2800 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st𝑔)(⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧))(1st𝑓)))
9363ad2ant1 1151 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝐶 ∈ Cat)
9473ad2ant1 1151 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝐷 ∈ Cat)
951, 4, 5, 93, 94, 8, 84, 861stf2 18273 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑥(2nd𝑃)𝑧) = (1st ↾ (𝑥(Hom ‘𝑇)𝑧)))
9695fveq1d 6887 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑧)‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)))
9784fvresd 6905 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
9885fvresd 6905 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
9997, 98opeq12d 4848 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ⟨((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥), ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)⟩ = ⟨(1st𝑥), (1st𝑦)⟩)
10086fvresd 6905 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑧) = (1st𝑧))
10199, 100oveq12d 7437 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (⟨((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥), ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)⟩(comp‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑧)) = (⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧)))
1021, 4, 5, 93, 94, 8, 85, 861stf2 18273 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑦(2nd𝑃)𝑧) = (1st ↾ (𝑦(Hom ‘𝑇)𝑧)))
103102fveq1d 6887 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑦(2nd𝑃)𝑧)‘𝑔) = ((1st ↾ (𝑦(Hom ‘𝑇)𝑧))‘𝑔))
10488fvresd 6905 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑦(Hom ‘𝑇)𝑧))‘𝑔) = (1st𝑔))
105103, 104eqtrd 2800 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑦(2nd𝑃)𝑧)‘𝑔) = (1st𝑔))
1061, 4, 5, 93, 94, 8, 84, 851stf2 18273 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
107106fveq1d 6887 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑦)‘𝑓) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑦))‘𝑓))
10887fvresd 6905 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑦))‘𝑓) = (1st𝑓))
109107, 108eqtrd 2800 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑦)‘𝑓) = (1st𝑓))
110101, 105, 109oveq123d 7440 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (((𝑦(2nd𝑃)𝑧)‘𝑔)(⟨((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥), ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)⟩(comp‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑧))((𝑥(2nd𝑃)𝑦)‘𝑓)) = ((1st𝑔)(⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧))(1st𝑓)))
11192, 96, 1103eqtr4d 2810 . . . 4 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑧)‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = (((𝑦(2nd𝑃)𝑧)‘𝑔)(⟨((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥), ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)⟩(comp‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑧))((𝑥(2nd𝑃)𝑦)‘𝑓)))
1124, 2, 5, 23, 24, 25, 26, 27, 28, 6, 30, 37, 56, 82, 111isfuncd 17946 . . 3 (𝜑 → (1st ↾ ((Base‘𝐶) × (Base‘𝐷)))(𝑇 Func 𝐶)(2nd𝑃))
113 df-br 5112 . . 3 ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))(𝑇 Func 𝐶)(2nd𝑃) ↔ ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ ∈ (𝑇 Func 𝐶))
114112, 113sylib 221 . 2 (𝜑 → ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ ∈ (𝑇 Func 𝐶))
11522, 114eqeltrd 2865 1 (𝜑𝑃 ∈ (𝑇 Func 𝐶))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2146  Vcvv 3457  cop 4597   class class class wbr 5111   × cxp 5661  cres 5665  Fun wfun 6534   Fn wfn 6535  wf 6536  ontowfo 6538  cfv 6540  (class class class)co 7419  cmpo 7421  1st c1st 7990  2nd c2nd 7991  Basecbs 17293  Hom chom 17345  compcco 17346  Catccat 17744  Idccid 17745   Func cfunc 17935   ×c cxpc 18248   1stF c1stf 18249
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 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pow 5338  ax-pr 5406  ax-un 7742  ax-cnex 11173  ax-resscn 11174  ax-1cn 11175  ax-icn 11176  ax-addcl 11177  ax-addrcl 11178  ax-mulcl 11179  ax-mulrcl 11180  ax-mulcom 11181  ax-addass 11182  ax-mulass 11183  ax-distr 11184  ax-i2m1 11185  ax-1ne0 11186  ax-1rid 11187  ax-rnegex 11188  ax-rrecex 11189  ax-cnre 11190  ax-pre-lttri 11191  ax-pre-lttrn 11192  ax-pre-ltadd 11193  ax-pre-mulgt0 11194
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-nel 3067  df-ral 3082  df-rex 3092  df-rmo 3371  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-tp 4596  df-op 4598  df-uni 4875  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-pred 6306  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-riota 7376  df-ov 7422  df-oprab 7423  df-mpo 7424  df-om 7869  df-1st 7992  df-2nd 7993  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-1o 8459  df-er 8700  df-map 8832  df-ixp 8902  df-en 8950  df-dom 8951  df-sdom 8952  df-fin 8953  df-pnf 11262  df-mnf 11263  df-xr 11264  df-ltxr 11265  df-le 11266  df-sub 11460  df-neg 11461  df-nn 12251  df-2 12320  df-3 12321  df-4 12322  df-5 12323  df-6 12324  df-7 12325  df-8 12326  df-9 12327  df-n0 12522  df-z 12609  df-dec 12730  df-uz 12881  df-fz 13554  df-struct 17231  df-slot 17266  df-ndx 17278  df-base 17294  df-hom 17358  df-cco 17359  df-cat 17748  df-cid 17749  df-func 17939  df-xpc 18252  df-1stf 18253
This theorem is used by:  prf1st  18284  1st2ndprf  18286  uncfcl  18315  uncf1  18316  uncf2  18317  diagcl  18321  diag11  18323  diag12  18324  diag2  18325  yonedalem1  18352  yonedalem21  18353  yonedalem22  18358  oppc1stf  50125  diagpropd  50129
  Copyright terms: Public domain W3C validator