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

Theorem 1stfcl 18248
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 2763 . . . . 5 (Base‘𝐶) = (Base‘𝐶)
3 eqid 2763 . . . . 5 (Base‘𝐷) = (Base‘𝐷)
41, 2, 3xpcbas 18229 . . . 4 ((Base‘𝐶) × (Base‘𝐷)) = (Base‘𝑇)
5 eqid 2763 . . . 4 (Hom ‘𝑇) = (Hom ‘𝑇)
6 1stfcl.c . . . 4 (𝜑𝐶 ∈ Cat)
7 1stfcl.d . . . 4 (𝜑𝐷 ∈ Cat)
8 1stfcl.p . . . 4 𝑃 = (𝐶 1stF 𝐷)
91, 4, 5, 6, 7, 81stfval 18242 . . 3 (𝜑𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩)
10 fo1st 8002 . . . . . . . 8 1st :V–onto→V
11 fofun 6793 . . . . . . . 8 (1st :V–onto→V → Fun 1st )
1210, 11ax-mp 5 . . . . . . 7 Fun 1st
13 fvex 6894 . . . . . . . 8 (Base‘𝐶) ∈ V
14 fvex 6894 . . . . . . . 8 (Base‘𝐷) ∈ V
1513, 14xpex 7748 . . . . . . 7 ((Base‘𝐶) × (Base‘𝐷)) ∈ V
16 resfunexg 7213 . . . . . . 7 ((Fun 1st ∧ ((Base‘𝐶) × (Base‘𝐷)) ∈ V) → (1st ↾ ((Base‘𝐶) × (Base‘𝐷))) ∈ V)
1712, 15, 16mp2an 704 . . . . . 6 (1st ↾ ((Base‘𝐶) × (Base‘𝐷))) ∈ V
1815, 15mpoex 8072 . . . . . 6 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) ∈ V
1917, 18op2ndd 7993 . . . . 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 4845 . . 3 (𝜑 → ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩)
229, 21eqtr4d 2801 . 2 (𝜑𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩)
23 eqid 2763 . . . 4 (Hom ‘𝐶) = (Hom ‘𝐶)
24 eqid 2763 . . . 4 (Id‘𝑇) = (Id‘𝑇)
25 eqid 2763 . . . 4 (Id‘𝐶) = (Id‘𝐶)
26 eqid 2763 . . . 4 (comp‘𝑇) = (comp‘𝑇)
27 eqid 2763 . . . 4 (comp‘𝐶) = (comp‘𝐶)
281, 6, 7xpccat 18241 . . . 4 (𝜑𝑇 ∈ Cat)
29 f1stres 8006 . . . . 5 (1st ↾ ((Base‘𝐶) × (Base‘𝐷))):((Base‘𝐶) × (Base‘𝐷))⟶(Base‘𝐶)
3029a1i 11 . . . 4 (𝜑 → (1st ↾ ((Base‘𝐶) × (Base‘𝐷))):((Base‘𝐶) × (Base‘𝐷))⟶(Base‘𝐶))
31 eqid 2763 . . . . . 6 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) = (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
32 ovex 7443 . . . . . . 7 (𝑥(Hom ‘𝑇)𝑦) ∈ V
33 resfunexg 7213 . . . . . . 7 ((Fun 1st ∧ (𝑥(Hom ‘𝑇)𝑦) ∈ V) → (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) ∈ V)
3412, 32, 33mp2an 704 . . . . . 6 (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) ∈ V
3531, 34fnmpoi 8063 . . . . 5 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷)))
3620fneq1d 6628 . . . . 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 8006 . . . . . 6 (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦))
396adantr 485 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝐶 ∈ Cat)
407adantr 485 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝐷 ∈ Cat)
41 simprl 782 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
42 simprr 784 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))
431, 4, 5, 39, 40, 8, 41, 421stf2 18244 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
44 eqid 2763 . . . . . . . . . 10 (Hom ‘𝐷) = (Hom ‘𝐷)
451, 4, 23, 44, 5, 41, 42xpchom 18231 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(Hom ‘𝑇)𝑦) = (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦))))
4645reseq2d 5978 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) = (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))))
4743, 46eqtrd 2798 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))))
4847feq1d 6687 . . . . . 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 6900 . . . . . . . 8 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
5150ad2antrl 740 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
52 fvres 6900 . . . . . . . 8 (𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
5352ad2antll 741 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
5451, 53oveq12d 7428 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)(Hom ‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)) = ((1st𝑥)(Hom ‘𝐶)(1st𝑦)))
5545, 54feq23d 6700 . . . . 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 485 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑇 ∈ Cat)
58 simpr 489 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
594, 5, 24, 57, 58catidcl 17733 . . . . . . 7 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) ∈ (𝑥(Hom ‘𝑇)𝑥))
6059fvresd 6901 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)) = (1st ‘((Id‘𝑇)‘𝑥)))
61 1st2nd2 8021 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → 𝑥 = ⟨(1st𝑥), (2nd𝑥)⟩)
6261adantl 486 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑥 = ⟨(1st𝑥), (2nd𝑥)⟩)
6362fveq2d 6885 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) = ((Id‘𝑇)‘⟨(1st𝑥), (2nd𝑥)⟩))
646adantr 485 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝐶 ∈ Cat)
657adantr 485 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝐷 ∈ Cat)
66 eqid 2763 . . . . . . . . 9 (Id‘𝐷) = (Id‘𝐷)
67 xp1st 8014 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → (1st𝑥) ∈ (Base‘𝐶))
6867adantl 486 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (1st𝑥) ∈ (Base‘𝐶))
69 xp2nd 8015 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → (2nd𝑥) ∈ (Base‘𝐷))
7069adantl 486 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (2nd𝑥) ∈ (Base‘𝐷))
711, 64, 65, 2, 3, 25, 66, 24, 68, 70xpcid 18240 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘⟨(1st𝑥), (2nd𝑥)⟩) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩)
7263, 71eqtrd 2798 . . . . . . 7 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩)
73 fvex 6894 . . . . . . . 8 ((Id‘𝐶)‘(1st𝑥)) ∈ V
74 fvex 6894 . . . . . . . 8 ((Id‘𝐷)‘(2nd𝑥)) ∈ V
7573, 74op1std 7992 . . . . . . 7 (((Id‘𝑇)‘𝑥) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩ → (1st ‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
7672, 75syl 18 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (1st ‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
7760, 76eqtrd 2798 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
781, 4, 5, 64, 65, 8, 58, 581stf2 18244 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (𝑥(2nd𝑃)𝑥) = (1st ↾ (𝑥(Hom ‘𝑇)𝑥)))
7978fveq1d 6883 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((𝑥(2nd𝑃)𝑥)‘((Id‘𝑇)‘𝑥)) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)))
8050adantl 486 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
8180fveq2d 6885 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝐶)‘((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
8277, 79, 813eqtr4d 2808 . . . 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 17736 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓) ∈ (𝑥(Hom ‘𝑇)𝑧))
9089fvresd 6901 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = (1st ‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)))
911, 4, 5, 26, 84, 85, 86, 87, 88, 27xpcco1st 18235 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (1st ‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st𝑔)(⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧))(1st𝑓)))
9290, 91eqtrd 2798 . . . . 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 18244 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑥(2nd𝑃)𝑧) = (1st ↾ (𝑥(Hom ‘𝑇)𝑧)))
9695fveq1d 6883 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑧)‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)))
9784fvresd 6901 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
9885fvresd 6901 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
9997, 98opeq12d 4846 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ⟨((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥), ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)⟩ = ⟨(1st𝑥), (1st𝑦)⟩)
10086fvresd 6901 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑧) = (1st𝑧))
10199, 100oveq12d 7428 . . . . . 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 18244 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑦(2nd𝑃)𝑧) = (1st ↾ (𝑦(Hom ‘𝑇)𝑧)))
103102fveq1d 6883 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑦(2nd𝑃)𝑧)‘𝑔) = ((1st ↾ (𝑦(Hom ‘𝑇)𝑧))‘𝑔))
10488fvresd 6901 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑦(Hom ‘𝑇)𝑧))‘𝑔) = (1st𝑔))
105103, 104eqtrd 2798 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑦(2nd𝑃)𝑧)‘𝑔) = (1st𝑔))
1061, 4, 5, 93, 94, 8, 84, 851stf2 18244 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
107106fveq1d 6883 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑦)‘𝑓) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑦))‘𝑓))
10887fvresd 6901 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑦))‘𝑓) = (1st𝑓))
109107, 108eqtrd 2798 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑦)‘𝑓) = (1st𝑓))
110101, 105, 109oveq123d 7431 . . . . 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 2808 . . . 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 17917 . . 3 (𝜑 → (1st ↾ ((Base‘𝐶) × (Base‘𝐷)))(𝑇 Func 𝐶)(2nd𝑃))
113 df-br 5110 . . 3 ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))(𝑇 Func 𝐶)(2nd𝑃) ↔ ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ ∈ (𝑇 Func 𝐶))
114112, 113sylib 221 . 2 (𝜑 → ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ ∈ (𝑇 Func 𝐶))
11522, 114eqeltrd 2863 1 (𝜑𝑃 ∈ (𝑇 Func 𝐶))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 400  w3a 1103   = wceq 1570  wcel 2143  Vcvv 3455  cop 4595   class class class wbr 5109   × cxp 5659  cres 5663  Fun wfun 6530   Fn wfn 6531  wf 6532  ontowfo 6534  cfv 6536  (class class class)co 7410  cmpo 7412  1st c1st 7980  2nd c2nd 7981  Basecbs 17264  Hom chom 17316  compcco 17317  Catccat 17715  Idccid 17716   Func cfunc 17906   ×c cxpc 18219   1stF c1stf 18220
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  ax-cnex 11151  ax-resscn 11152  ax-1cn 11153  ax-icn 11154  ax-addcl 11155  ax-addrcl 11156  ax-mulcl 11157  ax-mulrcl 11158  ax-mulcom 11159  ax-addass 11160  ax-mulass 11161  ax-distr 11162  ax-i2m1 11163  ax-1ne0 11164  ax-1rid 11165  ax-rnegex 11166  ax-rrecex 11167  ax-cnre 11168  ax-pre-lttri 11169  ax-pre-lttrn 11170  ax-pre-ltadd 11171  ax-pre-mulgt0 11172
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1104  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-nel 3065  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-pss 3925  df-nul 4287  df-if 4488  df-pw 4564  df-sn 4590  df-pr 4592  df-tp 4594  df-op 4596  df-uni 4873  df-iun 4958  df-br 5110  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5556  df-eprel 5561  df-po 5569  df-so 5570  df-fr 5614  df-we 5616  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-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  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-om 7859  df-1st 7982  df-2nd 7983  df-frecs 8274  df-wrecs 8305  df-recs 8354  df-rdg 8393  df-1o 8449  df-er 8690  df-map 8822  df-ixp 8892  df-en 8940  df-dom 8941  df-sdom 8942  df-fin 8943  df-pnf 11240  df-mnf 11241  df-xr 11242  df-ltxr 11243  df-le 11244  df-sub 11438  df-neg 11439  df-nn 12229  df-2 12298  df-3 12299  df-4 12300  df-5 12301  df-6 12302  df-7 12303  df-8 12304  df-9 12305  df-n0 12500  df-z 12587  df-dec 12707  df-uz 12858  df-fz 13531  df-struct 17202  df-slot 17237  df-ndx 17249  df-base 17265  df-hom 17329  df-cco 17330  df-cat 17719  df-cid 17720  df-func 17910  df-xpc 18223  df-1stf 18224
This theorem is referenced by:  prf1st  18255  1st2ndprf  18257  uncfcl  18286  uncf1  18287  uncf2  18288  diagcl  18292  diag11  18294  diag12  18295  diag2  18296  yonedalem1  18323  yonedalem21  18324  yonedalem22  18329  oppc1stf  50086  diagpropd  50090
  Copyright terms: Public domain W3C validator