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

Theorem upxp 23598
Description: Universal property of the Cartesian product considered as a categorical product in the category of sets. (Contributed by Jeff Madsen, 2-Sep-2009.) (Revised by Mario Carneiro, 27-Dec-2014.)
Hypotheses
Ref Expression
upxp.1 𝑃 = (1st ↾ (𝐵 × 𝐶))
upxp.2 𝑄 = (2nd ↾ (𝐵 × 𝐶))
Assertion
Ref Expression
upxp ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∃!(:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)))
Distinct variable groups:   𝐴,   𝐵,   𝐶,   ,𝐹   ,𝐺   𝐷,
Allowed substitution hints:   𝑃()   𝑄()

Proof of Theorem upxp
Dummy variables 𝑥 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 mptexg 7169 . . . 4 (𝐴𝐷 → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ∈ V)
2 eueq 3655 . . . 4 ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ∈ V ↔ ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
31, 2sylib 218 . . 3 (𝐴𝐷 → ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
433ad2ant1 1134 . 2 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
5 ffn 6662 . . . . . . . 8 (:𝐴⟶(𝐵 × 𝐶) → Fn 𝐴)
653ad2ant1 1134 . . . . . . 7 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → Fn 𝐴)
76adantl 481 . . . . . 6 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → Fn 𝐴)
8 ffvelcdm 7027 . . . . . . . . . . . . 13 ((𝐹:𝐴𝐵𝑥𝐴) → (𝐹𝑥) ∈ 𝐵)
9 ffvelcdm 7027 . . . . . . . . . . . . 13 ((𝐺:𝐴𝐶𝑥𝐴) → (𝐺𝑥) ∈ 𝐶)
10 opelxpi 5661 . . . . . . . . . . . . 13 (((𝐹𝑥) ∈ 𝐵 ∧ (𝐺𝑥) ∈ 𝐶) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
118, 9, 10syl2an 597 . . . . . . . . . . . 12 (((𝐹:𝐴𝐵𝑥𝐴) ∧ (𝐺:𝐴𝐶𝑥𝐴)) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
1211anandirs 680 . . . . . . . . . . 11 (((𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑥𝐴) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
1312ralrimiva 3130 . . . . . . . . . 10 ((𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
14133adant1 1131 . . . . . . . . 9 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
15 eqid 2737 . . . . . . . . . 10 (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)
1615fmpt 7056 . . . . . . . . 9 (∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶) ↔ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶))
1714, 16sylib 218 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶))
1817ffnd 6663 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴)
1918adantr 480 . . . . . 6 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴)
20 xpss 5640 . . . . . . . . . . 11 (𝐵 × 𝐶) ⊆ (V × V)
21 ffvelcdm 7027 . . . . . . . . . . 11 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
2220, 21sselid 3920 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
23223ad2antl1 1187 . . . . . . . . 9 (((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
2423adantll 715 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
25 fveq1 6833 . . . . . . . . . . . 12 (𝐹 = (𝑃) → (𝐹𝑧) = ((𝑃)‘𝑧))
26 upxp.1 . . . . . . . . . . . . . 14 𝑃 = (1st ↾ (𝐵 × 𝐶))
2726coeq1i 5808 . . . . . . . . . . . . 13 (𝑃) = ((1st ↾ (𝐵 × 𝐶)) ∘ )
2827fveq1i 6835 . . . . . . . . . . . 12 ((𝑃)‘𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧)
2925, 28eqtrdi 2788 . . . . . . . . . . 11 (𝐹 = (𝑃) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
30293ad2ant2 1135 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
3130ad2antlr 728 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
32 simpr1 1196 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → :𝐴⟶(𝐵 × 𝐶))
33 fvco3 6933 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘(𝑧)))
3432, 33sylan 581 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘(𝑧)))
35213ad2antl1 1187 . . . . . . . . . . 11 (((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
3635adantll 715 . . . . . . . . . 10 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
3736fvresd 6854 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘(𝑧)) = (1st ‘(𝑧)))
3831, 34, 373eqtrrd 2777 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (1st ‘(𝑧)) = (𝐹𝑧))
39 fveq1 6833 . . . . . . . . . . . 12 (𝐺 = (𝑄) → (𝐺𝑧) = ((𝑄)‘𝑧))
40 upxp.2 . . . . . . . . . . . . . 14 𝑄 = (2nd ↾ (𝐵 × 𝐶))
4140coeq1i 5808 . . . . . . . . . . . . 13 (𝑄) = ((2nd ↾ (𝐵 × 𝐶)) ∘ )
4241fveq1i 6835 . . . . . . . . . . . 12 ((𝑄)‘𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧)
4339, 42eqtrdi 2788 . . . . . . . . . . 11 (𝐺 = (𝑄) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
44433ad2ant3 1136 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
4544ad2antlr 728 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
46 fvco3 6933 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)))
4732, 46sylan 581 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)))
4836fvresd 6854 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)) = (2nd ‘(𝑧)))
4945, 47, 483eqtrrd 2777 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (2nd ‘(𝑧)) = (𝐺𝑧))
50 eqopi 7971 . . . . . . . 8 (((𝑧) ∈ (V × V) ∧ ((1st ‘(𝑧)) = (𝐹𝑧) ∧ (2nd ‘(𝑧)) = (𝐺𝑧))) → (𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
5124, 38, 49, 50syl12anc 837 . . . . . . 7 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
52 fveq2 6834 . . . . . . . . . 10 (𝑥 = 𝑧 → (𝐹𝑥) = (𝐹𝑧))
53 fveq2 6834 . . . . . . . . . 10 (𝑥 = 𝑧 → (𝐺𝑥) = (𝐺𝑧))
5452, 53opeq12d 4825 . . . . . . . . 9 (𝑥 = 𝑧 → ⟨(𝐹𝑥), (𝐺𝑥)⟩ = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
55 opex 5411 . . . . . . . . 9 ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ V
5654, 15, 55fvmpt 6941 . . . . . . . 8 (𝑧𝐴 → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
5756adantl 481 . . . . . . 7 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
5851, 57eqtr4d 2775 . . . . . 6 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) = ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧))
597, 19, 58eqfnfvd 6980 . . . . 5 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
6059ex 412 . . . 4 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
61 ffn 6662 . . . . . . . . 9 (𝐹:𝐴𝐵𝐹 Fn 𝐴)
62613ad2ant2 1135 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 Fn 𝐴)
63 fo1st 7955 . . . . . . . . . . 11 1st :V–onto→V
64 fofn 6748 . . . . . . . . . . 11 (1st :V–onto→V → 1st Fn V)
6563, 64ax-mp 5 . . . . . . . . . 10 1st Fn V
66 ssv 3947 . . . . . . . . . 10 (𝐵 × 𝐶) ⊆ V
67 fnssres 6615 . . . . . . . . . 10 ((1st Fn V ∧ (𝐵 × 𝐶) ⊆ V) → (1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶))
6865, 66, 67mp2an 693 . . . . . . . . 9 (1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶)
6917frnd 6670 . . . . . . . . 9 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶))
70 fnco 6610 . . . . . . . . 9 (((1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶) ∧ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴 ∧ ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶)) → ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
7168, 18, 69, 70mp3an2i 1469 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
72 fvco3 6933 . . . . . . . . . 10 (((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
7317, 72sylan 581 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
7456adantl 481 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
7574fveq2d 6838 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)) = ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
76 ffvelcdm 7027 . . . . . . . . . . . . . 14 ((𝐹:𝐴𝐵𝑧𝐴) → (𝐹𝑧) ∈ 𝐵)
77 ffvelcdm 7027 . . . . . . . . . . . . . 14 ((𝐺:𝐴𝐶𝑧𝐴) → (𝐺𝑧) ∈ 𝐶)
78 opelxpi 5661 . . . . . . . . . . . . . 14 (((𝐹𝑧) ∈ 𝐵 ∧ (𝐺𝑧) ∈ 𝐶) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
7976, 77, 78syl2an 597 . . . . . . . . . . . . 13 (((𝐹:𝐴𝐵𝑧𝐴) ∧ (𝐺:𝐴𝐶𝑧𝐴)) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
8079anandirs 680 . . . . . . . . . . . 12 (((𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
81803adantl1 1168 . . . . . . . . . . 11 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
8281fvresd 6854 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (1st ‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
83 fvex 6847 . . . . . . . . . . 11 (𝐹𝑧) ∈ V
84 fvex 6847 . . . . . . . . . . 11 (𝐺𝑧) ∈ V
8583, 84op1st 7943 . . . . . . . . . 10 (1st ‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐹𝑧)
8682, 85eqtrdi 2788 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐹𝑧))
8773, 75, 863eqtrrd 2777 . . . . . . . 8 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧))
8862, 71, 87eqfnfvd 6980 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 = ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
8926coeq1i 5808 . . . . . . 7 (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) = ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
9088, 89eqtr4di 2790 . . . . . 6 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
91 ffn 6662 . . . . . . . . 9 (𝐺:𝐴𝐶𝐺 Fn 𝐴)
92913ad2ant3 1136 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 Fn 𝐴)
93 fo2nd 7956 . . . . . . . . . . 11 2nd :V–onto→V
94 fofn 6748 . . . . . . . . . . 11 (2nd :V–onto→V → 2nd Fn V)
9593, 94ax-mp 5 . . . . . . . . . 10 2nd Fn V
96 fnssres 6615 . . . . . . . . . 10 ((2nd Fn V ∧ (𝐵 × 𝐶) ⊆ V) → (2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶))
9795, 66, 96mp2an 693 . . . . . . . . 9 (2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶)
98 fnco 6610 . . . . . . . . 9 (((2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶) ∧ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴 ∧ ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶)) → ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
9997, 18, 69, 98mp3an2i 1469 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
100 fvco3 6933 . . . . . . . . . 10 (((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
10117, 100sylan 581 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
10274fveq2d 6838 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)) = ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
10381fvresd 6854 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (2nd ‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
10483, 84op2nd 7944 . . . . . . . . . 10 (2nd ‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐺𝑧)
105103, 104eqtrdi 2788 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐺𝑧))
106101, 102, 1053eqtrrd 2777 . . . . . . . 8 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧))
10792, 99, 106eqfnfvd 6980 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 = ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
10840coeq1i 5808 . . . . . . 7 (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) = ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
109107, 108eqtr4di 2790 . . . . . 6 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
11017, 90, 1093jca 1129 . . . . 5 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) ∧ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
111 feq1 6640 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (:𝐴⟶(𝐵 × 𝐶) ↔ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶)))
112 coeq2 5807 . . . . . . 7 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝑃) = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
113112eqeq2d 2748 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝐹 = (𝑃) ↔ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
114 coeq2 5807 . . . . . . 7 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝑄) = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
115114eqeq2d 2748 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝐺 = (𝑄) ↔ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
116111, 113, 1153anbi123d 1439 . . . . 5 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) ∧ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))))
117110, 116syl5ibrcom 247 . . . 4 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))))
11860, 117impbid 212 . . 3 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
119118eubidv 2587 . 2 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (∃!(:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
1204, 119mpbird 257 1 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∃!(:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  w3a 1087   = wceq 1542  wcel 2114  ∃!weu 2569  wral 3052  Vcvv 3430  wss 3890  cop 4574  cmpt 5167   × cxp 5622  ran crn 5625  cres 5626  ccom 5628   Fn wfn 6487  wf 6488  ontowfo 6490  cfv 6492  1st c1st 7933  2nd c2nd 7934
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-rep 5212  ax-sep 5231  ax-nul 5241  ax-pr 5370  ax-un 7682
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-ral 3053  df-rex 3063  df-reu 3344  df-rab 3391  df-v 3432  df-sbc 3730  df-csb 3839  df-dif 3893  df-un 3895  df-in 3897  df-ss 3907  df-nul 4275  df-if 4468  df-sn 4569  df-pr 4571  df-op 4575  df-uni 4852  df-iun 4936  df-br 5087  df-opab 5149  df-mpt 5168  df-id 5519  df-xp 5630  df-rel 5631  df-cnv 5632  df-co 5633  df-dm 5634  df-rn 5635  df-res 5636  df-ima 5637  df-iota 6448  df-fun 6494  df-fn 6495  df-f 6496  df-f1 6497  df-fo 6498  df-f1o 6499  df-fv 6500  df-1st 7935  df-2nd 7936
This theorem is referenced by:  uptx  23600  txcn  23601
  Copyright terms: Public domain W3C validator