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

Theorem 1stfcl 18229
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 2762 . . . . 5 (Base‘𝐶) = (Base‘𝐶)
3 eqid 2762 . . . . 5 (Base‘𝐷) = (Base‘𝐷)
41, 2, 3xpcbas 18210 . . . 4 ((Base‘𝐶) × (Base‘𝐷)) = (Base‘𝑇)
5 eqid 2762 . . . 4 (Hom ‘𝑇) = (Hom ‘𝑇)
6 1stfcl.c . . . 4 (𝜑𝐶 ∈ Cat)
7 1stfcl.d . . . 4 (𝜑𝐷 ∈ Cat)
8 1stfcl.p . . . 4 𝑃 = (𝐶 1stF 𝐷)
91, 4, 5, 6, 7, 81stfval 18223 . . 3 (𝜑𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩)
10 fo1st 7990 . . . . . . . 8 1st :V–onto→V
11 fofun 6779 . . . . . . . 8 (1st :V–onto→V → Fun 1st )
1210, 11ax-mp 5 . . . . . . 7 Fun 1st
13 fvex 6880 . . . . . . . 8 (Base‘𝐶) ∈ V
14 fvex 6880 . . . . . . . 8 (Base‘𝐷) ∈ V
1513, 14xpex 7736 . . . . . . 7 ((Base‘𝐶) × (Base‘𝐷)) ∈ V
16 resfunexg 7199 . . . . . . 7 ((Fun 1st ∧ ((Base‘𝐶) × (Base‘𝐷)) ∈ V) → (1st ↾ ((Base‘𝐶) × (Base‘𝐷))) ∈ V)
1712, 15, 16mp2an 702 . . . . . 6 (1st ↾ ((Base‘𝐶) × (Base‘𝐷))) ∈ V
1815, 15mpoex 8060 . . . . . 6 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) ∈ V
1917, 18op2ndd 7981 . . . . 5 (𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩ → (2nd𝑃) = (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))))
209, 19syl 17 . . . 4 (𝜑 → (2nd𝑃) = (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))))
2120opeq2d 4838 . . 3 (𝜑 → ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩)
229, 21eqtr4d 2800 . 2 (𝜑𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩)
23 eqid 2762 . . . 4 (Hom ‘𝐶) = (Hom ‘𝐶)
24 eqid 2762 . . . 4 (Id‘𝑇) = (Id‘𝑇)
25 eqid 2762 . . . 4 (Id‘𝐶) = (Id‘𝐶)
26 eqid 2762 . . . 4 (comp‘𝑇) = (comp‘𝑇)
27 eqid 2762 . . . 4 (comp‘𝐶) = (comp‘𝐶)
281, 6, 7xpccat 18222 . . . 4 (𝜑𝑇 ∈ Cat)
29 f1stres 7994 . . . . 5 (1st ↾ ((Base‘𝐶) × (Base‘𝐷))):((Base‘𝐶) × (Base‘𝐷))⟶(Base‘𝐶)
3029a1i 11 . . . 4 (𝜑 → (1st ↾ ((Base‘𝐶) × (Base‘𝐷))):((Base‘𝐶) × (Base‘𝐷))⟶(Base‘𝐶))
31 eqid 2762 . . . . . 6 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) = (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
32 ovex 7429 . . . . . . 7 (𝑥(Hom ‘𝑇)𝑦) ∈ V
33 resfunexg 7199 . . . . . . 7 ((Fun 1st ∧ (𝑥(Hom ‘𝑇)𝑦) ∈ V) → (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) ∈ V)
3412, 32, 33mp2an 702 . . . . . 6 (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) ∈ V
3531, 34fnmpoi 8051 . . . . 5 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷)))
3620fneq1d 6614 . . . . 5 (𝜑 → ((2nd𝑃) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷))) ↔ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷)))))
3735, 36mpbiri 260 . . . 4 (𝜑 → (2nd𝑃) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷))))
38 f1stres 7994 . . . . . 6 (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦))
396adantr 484 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝐶 ∈ Cat)
407adantr 484 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝐷 ∈ Cat)
41 simprl 780 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
42 simprr 782 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))
431, 4, 5, 39, 40, 8, 41, 421stf2 18225 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
44 eqid 2762 . . . . . . . . . 10 (Hom ‘𝐷) = (Hom ‘𝐷)
451, 4, 23, 44, 5, 41, 42xpchom 18212 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(Hom ‘𝑇)𝑦) = (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦))))
4645reseq2d 5965 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) = (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))))
4743, 46eqtrd 2797 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))))
4847feq1d 6673 . . . . . 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 260 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦)))
50 fvres 6886 . . . . . . . 8 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
5150ad2antrl 738 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
52 fvres 6886 . . . . . . . 8 (𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
5352ad2antll 739 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
5451, 53oveq12d 7414 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)(Hom ‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)) = ((1st𝑥)(Hom ‘𝐶)(1st𝑦)))
5545, 54feq23d 6686 . . . . 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 259 . . . 4 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦):(𝑥(Hom ‘𝑇)𝑦)⟶(((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)(Hom ‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)))
5728adantr 484 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑇 ∈ Cat)
58 simpr 488 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
594, 5, 24, 57, 58catidcl 17714 . . . . . . 7 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) ∈ (𝑥(Hom ‘𝑇)𝑥))
6059fvresd 6887 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)) = (1st ‘((Id‘𝑇)‘𝑥)))
61 1st2nd2 8009 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → 𝑥 = ⟨(1st𝑥), (2nd𝑥)⟩)
6261adantl 485 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑥 = ⟨(1st𝑥), (2nd𝑥)⟩)
6362fveq2d 6871 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) = ((Id‘𝑇)‘⟨(1st𝑥), (2nd𝑥)⟩))
646adantr 484 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝐶 ∈ Cat)
657adantr 484 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝐷 ∈ Cat)
66 eqid 2762 . . . . . . . . 9 (Id‘𝐷) = (Id‘𝐷)
67 xp1st 8002 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → (1st𝑥) ∈ (Base‘𝐶))
6867adantl 485 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (1st𝑥) ∈ (Base‘𝐶))
69 xp2nd 8003 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → (2nd𝑥) ∈ (Base‘𝐷))
7069adantl 485 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (2nd𝑥) ∈ (Base‘𝐷))
711, 64, 65, 2, 3, 25, 66, 24, 68, 70xpcid 18221 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘⟨(1st𝑥), (2nd𝑥)⟩) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩)
7263, 71eqtrd 2797 . . . . . . 7 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩)
73 fvex 6880 . . . . . . . 8 ((Id‘𝐶)‘(1st𝑥)) ∈ V
74 fvex 6880 . . . . . . . 8 ((Id‘𝐷)‘(2nd𝑥)) ∈ V
7573, 74op1std 7980 . . . . . . 7 (((Id‘𝑇)‘𝑥) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩ → (1st ‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
7672, 75syl 17 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (1st ‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
7760, 76eqtrd 2797 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
781, 4, 5, 64, 65, 8, 58, 581stf2 18225 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (𝑥(2nd𝑃)𝑥) = (1st ↾ (𝑥(Hom ‘𝑇)𝑥)))
7978fveq1d 6869 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((𝑥(2nd𝑃)𝑥)‘((Id‘𝑇)‘𝑥)) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)))
8050adantl 485 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
8180fveq2d 6871 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝐶)‘((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
8277, 79, 813eqtr4d 2807 . . . 4 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((𝑥(2nd𝑃)𝑥)‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)))
83283ad2ant1 1146 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑇 ∈ Cat)
84 simp21 1220 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
85 simp22 1221 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))
86 simp23 1222 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷)))
87 simp3l 1215 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦))
88 simp3r 1216 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))
894, 5, 26, 83, 84, 85, 86, 87, 88catcocl 17717 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓) ∈ (𝑥(Hom ‘𝑇)𝑧))
9089fvresd 6887 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = (1st ‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)))
911, 4, 5, 26, 84, 85, 86, 87, 88, 27xpcco1st 18216 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (1st ‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st𝑔)(⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧))(1st𝑓)))
9290, 91eqtrd 2797 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st𝑔)(⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧))(1st𝑓)))
9363ad2ant1 1146 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝐶 ∈ Cat)
9473ad2ant1 1146 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝐷 ∈ Cat)
951, 4, 5, 93, 94, 8, 84, 861stf2 18225 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑥(2nd𝑃)𝑧) = (1st ↾ (𝑥(Hom ‘𝑇)𝑧)))
9695fveq1d 6869 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑧)‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)))
9784fvresd 6887 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
9885fvresd 6887 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
9997, 98opeq12d 4839 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ⟨((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥), ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)⟩ = ⟨(1st𝑥), (1st𝑦)⟩)
10086fvresd 6887 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑧) = (1st𝑧))
10199, 100oveq12d 7414 . . . . . 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 18225 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑦(2nd𝑃)𝑧) = (1st ↾ (𝑦(Hom ‘𝑇)𝑧)))
103102fveq1d 6869 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑦(2nd𝑃)𝑧)‘𝑔) = ((1st ↾ (𝑦(Hom ‘𝑇)𝑧))‘𝑔))
10488fvresd 6887 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑦(Hom ‘𝑇)𝑧))‘𝑔) = (1st𝑔))
105103, 104eqtrd 2797 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑦(2nd𝑃)𝑧)‘𝑔) = (1st𝑔))
1061, 4, 5, 93, 94, 8, 84, 851stf2 18225 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
107106fveq1d 6869 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑦)‘𝑓) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑦))‘𝑓))
10887fvresd 6887 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑦))‘𝑓) = (1st𝑓))
109107, 108eqtrd 2797 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑦)‘𝑓) = (1st𝑓))
110101, 105, 109oveq123d 7417 . . . . 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 2807 . . . 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 17898 . . 3 (𝜑 → (1st ↾ ((Base‘𝐶) × (Base‘𝐷)))(𝑇 Func 𝐶)(2nd𝑃))
113 df-br 5101 . . 3 ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))(𝑇 Func 𝐶)(2nd𝑃) ↔ ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ ∈ (𝑇 Func 𝐶))
114112, 113sylib 220 . 2 (𝜑 → ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ ∈ (𝑇 Func 𝐶))
11522, 114eqeltrd 2862 1 (𝜑𝑃 ∈ (𝑇 Func 𝐶))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399  w3a 1098   = wceq 1560  wcel 2142  Vcvv 3454  cop 4588   class class class wbr 5100   × cxp 5645  cres 5649  Fun wfun 6515   Fn wfn 6516  wf 6517  ontowfo 6519  cfv 6521  (class class class)co 7396  cmpo 7398  1st c1st 7968  2nd c2nd 7969  Basecbs 17245  Hom chom 17297  compcco 17298  Catccat 17696  Idccid 17697   Func cfunc 17887   ×c cxpc 18200   1stF c1stf 18201
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1815  ax-4 1829  ax-5 1930  ax-6 1987  ax-7 2028  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5227  ax-sep 5246  ax-nul 5256  ax-pow 5322  ax-pr 5390  ax-un 7718  ax-cnex 11129  ax-resscn 11130  ax-1cn 11131  ax-icn 11132  ax-addcl 11133  ax-addrcl 11134  ax-mulcl 11135  ax-mulrcl 11136  ax-mulcom 11137  ax-addass 11138  ax-mulass 11139  ax-distr 11140  ax-i2m1 11141  ax-1ne0 11142  ax-1rid 11143  ax-rnegex 11144  ax-rrecex 11145  ax-cnre 11146  ax-pre-lttri 11147  ax-pre-lttrn 11148  ax-pre-ltadd 11149  ax-pre-mulgt0 11150
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-3or 1099  df-3an 1100  df-tru 1563  df-fal 1573  df-ex 1800  df-nf 1804  df-sb 2091  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3456  df-sbc 3745  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-pss 3924  df-nul 4286  df-if 4481  df-pw 4557  df-sn 4583  df-pr 4585  df-tp 4587  df-op 4589  df-uni 4866  df-iun 4951  df-br 5101  df-opab 5163  df-mpt 5182  df-tr 5208  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6288  df-ord 6349  df-on 6350  df-lim 6351  df-suc 6352  df-iota 6477  df-fun 6523  df-fn 6524  df-f 6525  df-f1 6526  df-fo 6527  df-f1o 6528  df-fv 6529  df-riota 7353  df-ov 7399  df-oprab 7400  df-mpo 7401  df-om 7847  df-1st 7970  df-2nd 7971  df-frecs 8262  df-wrecs 8293  df-recs 8342  df-rdg 8381  df-1o 8437  df-er 8678  df-map 8810  df-ixp 8880  df-en 8928  df-dom 8929  df-sdom 8930  df-fin 8931  df-pnf 11218  df-mnf 11219  df-xr 11220  df-ltxr 11221  df-le 11222  df-sub 11416  df-neg 11417  df-nn 12211  df-2 12280  df-3 12281  df-4 12282  df-5 12283  df-6 12284  df-7 12285  df-8 12286  df-9 12287  df-n0 12482  df-z 12569  df-dec 12689  df-uz 12840  df-fz 13513  df-struct 17183  df-slot 17218  df-ndx 17230  df-base 17246  df-hom 17310  df-cco 17311  df-cat 17700  df-cid 17701  df-func 17891  df-xpc 18204  df-1stf 18205
This theorem is referenced by:  prf1st  18236  1st2ndprf  18238  uncfcl  18267  uncf1  18268  uncf2  18269  diagcl  18273  diag11  18275  diag12  18276  diag2  18277  yonedalem1  18304  yonedalem21  18305  yonedalem22  18310  oppc1stf  49909  diagpropd  49913
  Copyright terms: Public domain W3C validator