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

Theorem 1stfcl 17437
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 2821 . . . . 5 (Base‘𝐶) = (Base‘𝐶)
3 eqid 2821 . . . . 5 (Base‘𝐷) = (Base‘𝐷)
41, 2, 3xpcbas 17418 . . . 4 ((Base‘𝐶) × (Base‘𝐷)) = (Base‘𝑇)
5 eqid 2821 . . . 4 (Hom ‘𝑇) = (Hom ‘𝑇)
6 1stfcl.c . . . 4 (𝜑𝐶 ∈ Cat)
7 1stfcl.d . . . 4 (𝜑𝐷 ∈ Cat)
8 1stfcl.p . . . 4 𝑃 = (𝐶 1stF 𝐷)
91, 4, 5, 6, 7, 81stfval 17431 . . 3 (𝜑𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩)
10 fo1st 7700 . . . . . . . 8 1st :V–onto→V
11 fofun 6585 . . . . . . . 8 (1st :V–onto→V → Fun 1st )
1210, 11ax-mp 5 . . . . . . 7 Fun 1st
13 fvex 6677 . . . . . . . 8 (Base‘𝐶) ∈ V
14 fvex 6677 . . . . . . . 8 (Base‘𝐷) ∈ V
1513, 14xpex 7464 . . . . . . 7 ((Base‘𝐶) × (Base‘𝐷)) ∈ V
16 resfunexg 6970 . . . . . . 7 ((Fun 1st ∧ ((Base‘𝐶) × (Base‘𝐷)) ∈ V) → (1st ↾ ((Base‘𝐶) × (Base‘𝐷))) ∈ V)
1712, 15, 16mp2an 688 . . . . . 6 (1st ↾ ((Base‘𝐶) × (Base‘𝐷))) ∈ V
1815, 15mpoex 7768 . . . . . 6 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) ∈ V
1917, 18op2ndd 7691 . . . . 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 4804 . . 3 (𝜑 → ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))⟩)
229, 21eqtr4d 2859 . 2 (𝜑𝑃 = ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩)
23 eqid 2821 . . . 4 (Hom ‘𝐶) = (Hom ‘𝐶)
24 eqid 2821 . . . 4 (Id‘𝑇) = (Id‘𝑇)
25 eqid 2821 . . . 4 (Id‘𝐶) = (Id‘𝐶)
26 eqid 2821 . . . 4 (comp‘𝑇) = (comp‘𝑇)
27 eqid 2821 . . . 4 (comp‘𝐶) = (comp‘𝐶)
281, 6, 7xpccat 17430 . . . 4 (𝜑𝑇 ∈ Cat)
29 f1stres 7704 . . . . 5 (1st ↾ ((Base‘𝐶) × (Base‘𝐷))):((Base‘𝐶) × (Base‘𝐷))⟶(Base‘𝐶)
3029a1i 11 . . . 4 (𝜑 → (1st ↾ ((Base‘𝐶) × (Base‘𝐷))):((Base‘𝐶) × (Base‘𝐷))⟶(Base‘𝐶))
31 eqid 2821 . . . . . 6 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) = (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
32 ovex 7178 . . . . . . 7 (𝑥(Hom ‘𝑇)𝑦) ∈ V
33 resfunexg 6970 . . . . . . 7 ((Fun 1st ∧ (𝑥(Hom ‘𝑇)𝑦) ∈ V) → (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) ∈ V)
3412, 32, 33mp2an 688 . . . . . 6 (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) ∈ V
3531, 34fnmpoi 7759 . . . . 5 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷)))
3620fneq1d 6440 . . . . 5 (𝜑 → ((2nd𝑃) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷))) ↔ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)), 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ↦ (1st ↾ (𝑥(Hom ‘𝑇)𝑦))) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷)))))
3735, 36mpbiri 259 . . . 4 (𝜑 → (2nd𝑃) Fn (((Base‘𝐶) × (Base‘𝐷)) × ((Base‘𝐶) × (Base‘𝐷))))
38 f1stres 7704 . . . . . 6 (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦))
396adantr 481 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝐶 ∈ Cat)
407adantr 481 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝐷 ∈ Cat)
41 simprl 767 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
42 simprr 769 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))
431, 4, 5, 39, 40, 8, 41, 421stf2 17433 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
44 eqid 2821 . . . . . . . . . 10 (Hom ‘𝐷) = (Hom ‘𝐷)
451, 4, 23, 44, 5, 41, 42xpchom 17420 . . . . . . . . 9 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(Hom ‘𝑇)𝑦) = (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦))))
4645reseq2d 5847 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (1st ↾ (𝑥(Hom ‘𝑇)𝑦)) = (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))))
4743, 46eqtrd 2856 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))))
4847feq1d 6493 . . . . . 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 259 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦):(((1st𝑥)(Hom ‘𝐶)(1st𝑦)) × ((2nd𝑥)(Hom ‘𝐷)(2nd𝑦)))⟶((1st𝑥)(Hom ‘𝐶)(1st𝑦)))
50 fvres 6683 . . . . . . . 8 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
5150ad2antrl 724 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
52 fvres 6683 . . . . . . . 8 (𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
5352ad2antll 725 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
5451, 53oveq12d 7163 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)(Hom ‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)) = ((1st𝑥)(Hom ‘𝐶)(1st𝑦)))
5545, 54feq23d 6503 . . . . 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 258 . . . 4 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))) → (𝑥(2nd𝑃)𝑦):(𝑥(Hom ‘𝑇)𝑦)⟶(((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)(Hom ‘𝐶)((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)))
5728adantr 481 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑇 ∈ Cat)
58 simpr 485 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
594, 5, 24, 57, 58catidcl 16943 . . . . . . 7 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) ∈ (𝑥(Hom ‘𝑇)𝑥))
6059fvresd 6684 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)) = (1st ‘((Id‘𝑇)‘𝑥)))
61 1st2nd2 7719 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → 𝑥 = ⟨(1st𝑥), (2nd𝑥)⟩)
6261adantl 482 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝑥 = ⟨(1st𝑥), (2nd𝑥)⟩)
6362fveq2d 6668 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) = ((Id‘𝑇)‘⟨(1st𝑥), (2nd𝑥)⟩))
646adantr 481 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝐶 ∈ Cat)
657adantr 481 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → 𝐷 ∈ Cat)
66 eqid 2821 . . . . . . . . 9 (Id‘𝐷) = (Id‘𝐷)
67 xp1st 7712 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → (1st𝑥) ∈ (Base‘𝐶))
6867adantl 482 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (1st𝑥) ∈ (Base‘𝐶))
69 xp2nd 7713 . . . . . . . . . 10 (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) → (2nd𝑥) ∈ (Base‘𝐷))
7069adantl 482 . . . . . . . . 9 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (2nd𝑥) ∈ (Base‘𝐷))
711, 64, 65, 2, 3, 25, 66, 24, 68, 70xpcid 17429 . . . . . . . 8 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘⟨(1st𝑥), (2nd𝑥)⟩) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩)
7263, 71eqtrd 2856 . . . . . . 7 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝑇)‘𝑥) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩)
73 fvex 6677 . . . . . . . 8 ((Id‘𝐶)‘(1st𝑥)) ∈ V
74 fvex 6677 . . . . . . . 8 ((Id‘𝐷)‘(2nd𝑥)) ∈ V
7573, 74op1std 7690 . . . . . . 7 (((Id‘𝑇)‘𝑥) = ⟨((Id‘𝐶)‘(1st𝑥)), ((Id‘𝐷)‘(2nd𝑥))⟩ → (1st ‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
7672, 75syl 17 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (1st ‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
7760, 76eqtrd 2856 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
781, 4, 5, 64, 65, 8, 58, 581stf2 17433 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → (𝑥(2nd𝑃)𝑥) = (1st ↾ (𝑥(Hom ‘𝑇)𝑥)))
7978fveq1d 6666 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((𝑥(2nd𝑃)𝑥)‘((Id‘𝑇)‘𝑥)) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑥))‘((Id‘𝑇)‘𝑥)))
8050adantl 482 . . . . . 6 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
8180fveq2d 6668 . . . . 5 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((Id‘𝐶)‘((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)) = ((Id‘𝐶)‘(1st𝑥)))
8277, 79, 813eqtr4d 2866 . . . 4 ((𝜑𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷))) → ((𝑥(2nd𝑃)𝑥)‘((Id‘𝑇)‘𝑥)) = ((Id‘𝐶)‘((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥)))
83283ad2ant1 1125 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑇 ∈ Cat)
84 simp21 1198 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)))
85 simp22 1199 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)))
86 simp23 1200 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷)))
87 simp3l 1193 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦))
88 simp3r 1194 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))
894, 5, 26, 83, 84, 85, 86, 87, 88catcocl 16946 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓) ∈ (𝑥(Hom ‘𝑇)𝑧))
9089fvresd 6684 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = (1st ‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)))
911, 4, 5, 26, 84, 85, 86, 87, 88, 27xpcco1st 17424 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (1st ‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st𝑔)(⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧))(1st𝑓)))
9290, 91eqtrd 2856 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st𝑔)(⟨(1st𝑥), (1st𝑦)⟩(comp‘𝐶)(1st𝑧))(1st𝑓)))
9363ad2ant1 1125 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝐶 ∈ Cat)
9473ad2ant1 1125 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝐷 ∈ Cat)
951, 4, 5, 93, 94, 8, 84, 861stf2 17433 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑥(2nd𝑃)𝑧) = (1st ↾ (𝑥(Hom ‘𝑇)𝑧)))
9695fveq1d 6666 . . . . 5 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑧)‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑧))‘(𝑔(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑓)))
9784fvresd 6684 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥) = (1st𝑥))
9885fvresd 6684 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦) = (1st𝑦))
9997, 98opeq12d 4805 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ⟨((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑥), ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑦)⟩ = ⟨(1st𝑥), (1st𝑦)⟩)
10086fvresd 6684 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))‘𝑧) = (1st𝑧))
10199, 100oveq12d 7163 . . . . . 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 17433 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑦(2nd𝑃)𝑧) = (1st ↾ (𝑦(Hom ‘𝑇)𝑧)))
103102fveq1d 6666 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑦(2nd𝑃)𝑧)‘𝑔) = ((1st ↾ (𝑦(Hom ‘𝑇)𝑧))‘𝑔))
10488fvresd 6684 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑦(Hom ‘𝑇)𝑧))‘𝑔) = (1st𝑔))
105103, 104eqtrd 2856 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑦(2nd𝑃)𝑧)‘𝑔) = (1st𝑔))
1061, 4, 5, 93, 94, 8, 84, 851stf2 17433 . . . . . . . 8 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (𝑥(2nd𝑃)𝑦) = (1st ↾ (𝑥(Hom ‘𝑇)𝑦)))
107106fveq1d 6666 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑦)‘𝑓) = ((1st ↾ (𝑥(Hom ‘𝑇)𝑦))‘𝑓))
10887fvresd 6684 . . . . . . 7 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((1st ↾ (𝑥(Hom ‘𝑇)𝑦))‘𝑓) = (1st𝑓))
109107, 108eqtrd 2856 . . . . . 6 ((𝜑 ∧ (𝑥 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑦 ∈ ((Base‘𝐶) × (Base‘𝐷)) ∧ 𝑧 ∈ ((Base‘𝐶) × (Base‘𝐷))) ∧ (𝑓 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑔 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥(2nd𝑃)𝑦)‘𝑓) = (1st𝑓))
110101, 105, 109oveq123d 7166 . . . . 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 2866 . . . 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 17125 . . 3 (𝜑 → (1st ↾ ((Base‘𝐶) × (Base‘𝐷)))(𝑇 Func 𝐶)(2nd𝑃))
113 df-br 5059 . . 3 ((1st ↾ ((Base‘𝐶) × (Base‘𝐷)))(𝑇 Func 𝐶)(2nd𝑃) ↔ ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ ∈ (𝑇 Func 𝐶))
114112, 113sylib 219 . 2 (𝜑 → ⟨(1st ↾ ((Base‘𝐶) × (Base‘𝐷))), (2nd𝑃)⟩ ∈ (𝑇 Func 𝐶))
11522, 114eqeltrd 2913 1 (𝜑𝑃 ∈ (𝑇 Func 𝐶))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396  w3a 1079   = wceq 1528  wcel 2105  Vcvv 3495  cop 4565   class class class wbr 5058   × cxp 5547  cres 5551  Fun wfun 6343   Fn wfn 6344  wf 6345  ontowfo 6347  cfv 6349  (class class class)co 7145  cmpo 7147  1st c1st 7678  2nd c2nd 7679  Basecbs 16473  Hom chom 16566  compcco 16567  Catccat 16925  Idccid 16926   Func cfunc 17114   ×c cxpc 17408   1stF c1stf 17409
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1787  ax-4 1801  ax-5 1902  ax-6 1961  ax-7 2006  ax-8 2107  ax-9 2115  ax-10 2136  ax-11 2151  ax-12 2167  ax-ext 2793  ax-rep 5182  ax-sep 5195  ax-nul 5202  ax-pow 5258  ax-pr 5321  ax-un 7450  ax-cnex 10582  ax-resscn 10583  ax-1cn 10584  ax-icn 10585  ax-addcl 10586  ax-addrcl 10587  ax-mulcl 10588  ax-mulrcl 10589  ax-mulcom 10590  ax-addass 10591  ax-mulass 10592  ax-distr 10593  ax-i2m1 10594  ax-1ne0 10595  ax-1rid 10596  ax-rnegex 10597  ax-rrecex 10598  ax-cnre 10599  ax-pre-lttri 10600  ax-pre-lttrn 10601  ax-pre-ltadd 10602  ax-pre-mulgt0 10603
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 842  df-3or 1080  df-3an 1081  df-tru 1531  df-fal 1541  df-ex 1772  df-nf 1776  df-sb 2061  df-mo 2618  df-eu 2650  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ne 3017  df-nel 3124  df-ral 3143  df-rex 3144  df-reu 3145  df-rmo 3146  df-rab 3147  df-v 3497  df-sbc 3772  df-csb 3883  df-dif 3938  df-un 3940  df-in 3942  df-ss 3951  df-pss 3953  df-nul 4291  df-if 4466  df-pw 4539  df-sn 4560  df-pr 4562  df-tp 4564  df-op 4566  df-uni 4833  df-int 4870  df-iun 4914  df-br 5059  df-opab 5121  df-mpt 5139  df-tr 5165  df-id 5454  df-eprel 5459  df-po 5468  df-so 5469  df-fr 5508  df-we 5510  df-xp 5555  df-rel 5556  df-cnv 5557  df-co 5558  df-dm 5559  df-rn 5560  df-res 5561  df-ima 5562  df-pred 6142  df-ord 6188  df-on 6189  df-lim 6190  df-suc 6191  df-iota 6308  df-fun 6351  df-fn 6352  df-f 6353  df-f1 6354  df-fo 6355  df-f1o 6356  df-fv 6357  df-riota 7103  df-ov 7148  df-oprab 7149  df-mpo 7150  df-om 7569  df-1st 7680  df-2nd 7681  df-wrecs 7938  df-recs 7999  df-rdg 8037  df-1o 8093  df-oadd 8097  df-er 8279  df-map 8398  df-ixp 8451  df-en 8499  df-dom 8500  df-sdom 8501  df-fin 8502  df-pnf 10666  df-mnf 10667  df-xr 10668  df-ltxr 10669  df-le 10670  df-sub 10861  df-neg 10862  df-nn 11628  df-2 11689  df-3 11690  df-4 11691  df-5 11692  df-6 11693  df-7 11694  df-8 11695  df-9 11696  df-n0 11887  df-z 11971  df-dec 12088  df-uz 12233  df-fz 12883  df-struct 16475  df-ndx 16476  df-slot 16477  df-base 16479  df-hom 16579  df-cco 16580  df-cat 16929  df-cid 16930  df-func 17118  df-xpc 17412  df-1stf 17413
This theorem is referenced by:  prf1st  17444  1st2ndprf  17446  uncfcl  17475  uncf1  17476  uncf2  17477  diagcl  17481  diag11  17483  diag12  17484  diag2  17485  yonedalem1  17512  yonedalem21  17513  yonedalem22  17518
  Copyright terms: Public domain W3C validator