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

Theorem upxp 22783
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 7106 . . . 4 (𝐴𝐷 → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ∈ V)
2 eueq 3644 . . . 4 ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ∈ V ↔ ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
31, 2sylib 217 . . 3 (𝐴𝐷 → ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
433ad2ant1 1132 . 2 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
5 ffn 6609 . . . . . . . 8 (:𝐴⟶(𝐵 × 𝐶) → Fn 𝐴)
653ad2ant1 1132 . . . . . . 7 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → Fn 𝐴)
76adantl 482 . . . . . 6 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → Fn 𝐴)
8 ffvelrn 6968 . . . . . . . . . . . . 13 ((𝐹:𝐴𝐵𝑥𝐴) → (𝐹𝑥) ∈ 𝐵)
9 ffvelrn 6968 . . . . . . . . . . . . 13 ((𝐺:𝐴𝐶𝑥𝐴) → (𝐺𝑥) ∈ 𝐶)
10 opelxpi 5627 . . . . . . . . . . . . 13 (((𝐹𝑥) ∈ 𝐵 ∧ (𝐺𝑥) ∈ 𝐶) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
118, 9, 10syl2an 596 . . . . . . . . . . . 12 (((𝐹:𝐴𝐵𝑥𝐴) ∧ (𝐺:𝐴𝐶𝑥𝐴)) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
1211anandirs 676 . . . . . . . . . . 11 (((𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑥𝐴) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
1312ralrimiva 3104 . . . . . . . . . 10 ((𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
14133adant1 1129 . . . . . . . . 9 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
15 eqid 2739 . . . . . . . . . 10 (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)
1615fmpt 6993 . . . . . . . . 9 (∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶) ↔ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶))
1714, 16sylib 217 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶))
1817ffnd 6610 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴)
1918adantr 481 . . . . . 6 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴)
20 xpss 5606 . . . . . . . . . . 11 (𝐵 × 𝐶) ⊆ (V × V)
21 ffvelrn 6968 . . . . . . . . . . 11 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
2220, 21sselid 3920 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
23223ad2antl1 1184 . . . . . . . . 9 (((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
2423adantll 711 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
25 fveq1 6782 . . . . . . . . . . . 12 (𝐹 = (𝑃) → (𝐹𝑧) = ((𝑃)‘𝑧))
26 upxp.1 . . . . . . . . . . . . . 14 𝑃 = (1st ↾ (𝐵 × 𝐶))
2726coeq1i 5771 . . . . . . . . . . . . 13 (𝑃) = ((1st ↾ (𝐵 × 𝐶)) ∘ )
2827fveq1i 6784 . . . . . . . . . . . 12 ((𝑃)‘𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧)
2925, 28eqtrdi 2795 . . . . . . . . . . 11 (𝐹 = (𝑃) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
30293ad2ant2 1133 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
3130ad2antlr 724 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
32 simpr1 1193 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → :𝐴⟶(𝐵 × 𝐶))
33 fvco3 6876 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘(𝑧)))
3432, 33sylan 580 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘(𝑧)))
35213ad2antl1 1184 . . . . . . . . . . 11 (((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
3635adantll 711 . . . . . . . . . 10 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
3736fvresd 6803 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘(𝑧)) = (1st ‘(𝑧)))
3831, 34, 373eqtrrd 2784 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (1st ‘(𝑧)) = (𝐹𝑧))
39 fveq1 6782 . . . . . . . . . . . 12 (𝐺 = (𝑄) → (𝐺𝑧) = ((𝑄)‘𝑧))
40 upxp.2 . . . . . . . . . . . . . 14 𝑄 = (2nd ↾ (𝐵 × 𝐶))
4140coeq1i 5771 . . . . . . . . . . . . 13 (𝑄) = ((2nd ↾ (𝐵 × 𝐶)) ∘ )
4241fveq1i 6784 . . . . . . . . . . . 12 ((𝑄)‘𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧)
4339, 42eqtrdi 2795 . . . . . . . . . . 11 (𝐺 = (𝑄) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
44433ad2ant3 1134 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
4544ad2antlr 724 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
46 fvco3 6876 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)))
4732, 46sylan 580 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)))
4836fvresd 6803 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)) = (2nd ‘(𝑧)))
4945, 47, 483eqtrrd 2784 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (2nd ‘(𝑧)) = (𝐺𝑧))
50 eqopi 7876 . . . . . . . 8 (((𝑧) ∈ (V × V) ∧ ((1st ‘(𝑧)) = (𝐹𝑧) ∧ (2nd ‘(𝑧)) = (𝐺𝑧))) → (𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
5124, 38, 49, 50syl12anc 834 . . . . . . 7 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
52 fveq2 6783 . . . . . . . . . 10 (𝑥 = 𝑧 → (𝐹𝑥) = (𝐹𝑧))
53 fveq2 6783 . . . . . . . . . 10 (𝑥 = 𝑧 → (𝐺𝑥) = (𝐺𝑧))
5452, 53opeq12d 4813 . . . . . . . . 9 (𝑥 = 𝑧 → ⟨(𝐹𝑥), (𝐺𝑥)⟩ = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
55 opex 5380 . . . . . . . . 9 ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ V
5654, 15, 55fvmpt 6884 . . . . . . . 8 (𝑧𝐴 → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
5756adantl 482 . . . . . . 7 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
5851, 57eqtr4d 2782 . . . . . 6 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) = ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧))
597, 19, 58eqfnfvd 6921 . . . . 5 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
6059ex 413 . . . 4 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
61 ffn 6609 . . . . . . . . 9 (𝐹:𝐴𝐵𝐹 Fn 𝐴)
62613ad2ant2 1133 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 Fn 𝐴)
63 fo1st 7860 . . . . . . . . . . 11 1st :V–onto→V
64 fofn 6699 . . . . . . . . . . 11 (1st :V–onto→V → 1st Fn V)
6563, 64ax-mp 5 . . . . . . . . . 10 1st Fn V
66 ssv 3946 . . . . . . . . . 10 (𝐵 × 𝐶) ⊆ V
67 fnssres 6564 . . . . . . . . . 10 ((1st Fn V ∧ (𝐵 × 𝐶) ⊆ V) → (1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶))
6865, 66, 67mp2an 689 . . . . . . . . 9 (1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶)
6917frnd 6617 . . . . . . . . 9 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶))
70 fnco 6558 . . . . . . . . 9 (((1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶) ∧ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴 ∧ ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶)) → ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
7168, 18, 69, 70mp3an2i 1465 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
72 fvco3 6876 . . . . . . . . . 10 (((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
7317, 72sylan 580 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
7456adantl 482 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
7574fveq2d 6787 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)) = ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
76 ffvelrn 6968 . . . . . . . . . . . . . 14 ((𝐹:𝐴𝐵𝑧𝐴) → (𝐹𝑧) ∈ 𝐵)
77 ffvelrn 6968 . . . . . . . . . . . . . 14 ((𝐺:𝐴𝐶𝑧𝐴) → (𝐺𝑧) ∈ 𝐶)
78 opelxpi 5627 . . . . . . . . . . . . . 14 (((𝐹𝑧) ∈ 𝐵 ∧ (𝐺𝑧) ∈ 𝐶) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
7976, 77, 78syl2an 596 . . . . . . . . . . . . 13 (((𝐹:𝐴𝐵𝑧𝐴) ∧ (𝐺:𝐴𝐶𝑧𝐴)) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
8079anandirs 676 . . . . . . . . . . . 12 (((𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
81803adantl1 1165 . . . . . . . . . . 11 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
8281fvresd 6803 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (1st ‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
83 fvex 6796 . . . . . . . . . . 11 (𝐹𝑧) ∈ V
84 fvex 6796 . . . . . . . . . . 11 (𝐺𝑧) ∈ V
8583, 84op1st 7848 . . . . . . . . . 10 (1st ‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐹𝑧)
8682, 85eqtrdi 2795 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐹𝑧))
8773, 75, 863eqtrrd 2784 . . . . . . . 8 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧))
8862, 71, 87eqfnfvd 6921 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 = ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
8926coeq1i 5771 . . . . . . 7 (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) = ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
9088, 89eqtr4di 2797 . . . . . 6 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
91 ffn 6609 . . . . . . . . 9 (𝐺:𝐴𝐶𝐺 Fn 𝐴)
92913ad2ant3 1134 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 Fn 𝐴)
93 fo2nd 7861 . . . . . . . . . . 11 2nd :V–onto→V
94 fofn 6699 . . . . . . . . . . 11 (2nd :V–onto→V → 2nd Fn V)
9593, 94ax-mp 5 . . . . . . . . . 10 2nd Fn V
96 fnssres 6564 . . . . . . . . . 10 ((2nd Fn V ∧ (𝐵 × 𝐶) ⊆ V) → (2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶))
9795, 66, 96mp2an 689 . . . . . . . . 9 (2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶)
98 fnco 6558 . . . . . . . . 9 (((2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶) ∧ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴 ∧ ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶)) → ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
9997, 18, 69, 98mp3an2i 1465 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
100 fvco3 6876 . . . . . . . . . 10 (((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
10117, 100sylan 580 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
10274fveq2d 6787 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)) = ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
10381fvresd 6803 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (2nd ‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
10483, 84op2nd 7849 . . . . . . . . . 10 (2nd ‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐺𝑧)
105103, 104eqtrdi 2795 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐺𝑧))
106101, 102, 1053eqtrrd 2784 . . . . . . . 8 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧))
10792, 99, 106eqfnfvd 6921 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 = ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
10840coeq1i 5771 . . . . . . 7 (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) = ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
109107, 108eqtr4di 2797 . . . . . 6 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
11017, 90, 1093jca 1127 . . . . 5 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) ∧ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
111 feq1 6590 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (:𝐴⟶(𝐵 × 𝐶) ↔ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶)))
112 coeq2 5770 . . . . . . 7 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝑃) = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
113112eqeq2d 2750 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝐹 = (𝑃) ↔ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
114 coeq2 5770 . . . . . . 7 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝑄) = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
115114eqeq2d 2750 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝐺 = (𝑄) ↔ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
116111, 113, 1153anbi123d 1435 . . . . 5 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) ∧ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))))
117110, 116syl5ibrcom 246 . . . 4 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))))
11860, 117impbid 211 . . 3 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
119118eubidv 2587 . 2 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (∃!(:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
1204, 119mpbird 256 1 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∃!(:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396  w3a 1086   = wceq 1539  wcel 2107  ∃!weu 2569  wral 3065  Vcvv 3433  wss 3888  cop 4568  cmpt 5158   × cxp 5588  ran crn 5591  cres 5592  ccom 5594   Fn wfn 6432  wf 6433  ontowfo 6435  cfv 6437  1st c1st 7838  2nd c2nd 7839
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2155  ax-12 2172  ax-ext 2710  ax-rep 5210  ax-sep 5224  ax-nul 5231  ax-pr 5353  ax-un 7597
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-nf 1787  df-sb 2069  df-mo 2541  df-eu 2570  df-clab 2717  df-cleq 2731  df-clel 2817  df-nfc 2890  df-ne 2945  df-ral 3070  df-rex 3071  df-reu 3073  df-rab 3074  df-v 3435  df-sbc 3718  df-csb 3834  df-dif 3891  df-un 3893  df-in 3895  df-ss 3905  df-nul 4258  df-if 4461  df-sn 4563  df-pr 4565  df-op 4569  df-uni 4841  df-iun 4927  df-br 5076  df-opab 5138  df-mpt 5159  df-id 5490  df-xp 5596  df-rel 5597  df-cnv 5598  df-co 5599  df-dm 5600  df-rn 5601  df-res 5602  df-ima 5603  df-iota 6395  df-fun 6439  df-fn 6440  df-f 6441  df-f1 6442  df-fo 6443  df-f1o 6444  df-fv 6445  df-1st 7840  df-2nd 7841
This theorem is referenced by:  uptx  22785  txcn  22786
  Copyright terms: Public domain W3C validator