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

Theorem upxp 21236
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 6389 . . . 4 (𝐴𝐷 → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ∈ V)
2 eueq 3345 . . . 4 ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ∈ V ↔ ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
31, 2sylib 207 . . 3 (𝐴𝐷 → ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
433ad2ant1 1075 . 2 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
5 ffn 5958 . . . . . . . 8 (:𝐴⟶(𝐵 × 𝐶) → Fn 𝐴)
653ad2ant1 1075 . . . . . . 7 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → Fn 𝐴)
76adantl 481 . . . . . 6 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → Fn 𝐴)
8 ffvelrn 6265 . . . . . . . . . . . . 13 ((𝐹:𝐴𝐵𝑥𝐴) → (𝐹𝑥) ∈ 𝐵)
9 ffvelrn 6265 . . . . . . . . . . . . 13 ((𝐺:𝐴𝐶𝑥𝐴) → (𝐺𝑥) ∈ 𝐶)
10 opelxpi 5072 . . . . . . . . . . . . 13 (((𝐹𝑥) ∈ 𝐵 ∧ (𝐺𝑥) ∈ 𝐶) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
118, 9, 10syl2an 493 . . . . . . . . . . . 12 (((𝐹:𝐴𝐵𝑥𝐴) ∧ (𝐺:𝐴𝐶𝑥𝐴)) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
1211anandirs 870 . . . . . . . . . . 11 (((𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑥𝐴) → ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
1312ralrimiva 2949 . . . . . . . . . 10 ((𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
14133adant1 1072 . . . . . . . . 9 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶))
15 eqid 2610 . . . . . . . . . 10 (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)
1615fmpt 6289 . . . . . . . . 9 (∀𝑥𝐴 ⟨(𝐹𝑥), (𝐺𝑥)⟩ ∈ (𝐵 × 𝐶) ↔ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶))
1714, 16sylib 207 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶))
18 ffn 5958 . . . . . . . 8 ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴)
1917, 18syl 17 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴)
2019adantr 480 . . . . . 6 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴)
21 xpss 5149 . . . . . . . . . . 11 (𝐵 × 𝐶) ⊆ (V × V)
22 ffvelrn 6265 . . . . . . . . . . 11 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
2321, 22sseldi 3566 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
24233ad2antl1 1216 . . . . . . . . 9 (((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
2524adantll 746 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) ∈ (V × V))
26 fveq1 6102 . . . . . . . . . . . 12 (𝐹 = (𝑃) → (𝐹𝑧) = ((𝑃)‘𝑧))
27 upxp.1 . . . . . . . . . . . . . 14 𝑃 = (1st ↾ (𝐵 × 𝐶))
2827coeq1i 5203 . . . . . . . . . . . . 13 (𝑃) = ((1st ↾ (𝐵 × 𝐶)) ∘ )
2928fveq1i 6104 . . . . . . . . . . . 12 ((𝑃)‘𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧)
3026, 29syl6eq 2660 . . . . . . . . . . 11 (𝐹 = (𝑃) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
31303ad2ant2 1076 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
3231ad2antlr 759 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
33 simpr1 1060 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → :𝐴⟶(𝐵 × 𝐶))
34 fvco3 6185 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘(𝑧)))
3533, 34sylan 487 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘(𝑧)))
36223ad2antl1 1216 . . . . . . . . . . 11 (((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
3736adantll 746 . . . . . . . . . 10 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) ∈ (𝐵 × 𝐶))
38 fvres 6117 . . . . . . . . . 10 ((𝑧) ∈ (𝐵 × 𝐶) → ((1st ↾ (𝐵 × 𝐶))‘(𝑧)) = (1st ‘(𝑧)))
3937, 38syl 17 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘(𝑧)) = (1st ‘(𝑧)))
4032, 35, 393eqtrrd 2649 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (1st ‘(𝑧)) = (𝐹𝑧))
41 fveq1 6102 . . . . . . . . . . . 12 (𝐺 = (𝑄) → (𝐺𝑧) = ((𝑄)‘𝑧))
42 upxp.2 . . . . . . . . . . . . . 14 𝑄 = (2nd ↾ (𝐵 × 𝐶))
4342coeq1i 5203 . . . . . . . . . . . . 13 (𝑄) = ((2nd ↾ (𝐵 × 𝐶)) ∘ )
4443fveq1i 6104 . . . . . . . . . . . 12 ((𝑄)‘𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧)
4541, 44syl6eq 2660 . . . . . . . . . . 11 (𝐺 = (𝑄) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
46453ad2ant3 1077 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
4746ad2antlr 759 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧))
48 fvco3 6185 . . . . . . . . . 10 ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)))
4933, 48sylan 487 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ )‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)))
50 fvres 6117 . . . . . . . . . 10 ((𝑧) ∈ (𝐵 × 𝐶) → ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)) = (2nd ‘(𝑧)))
5137, 50syl 17 . . . . . . . . 9 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘(𝑧)) = (2nd ‘(𝑧)))
5247, 49, 513eqtrrd 2649 . . . . . . . 8 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (2nd ‘(𝑧)) = (𝐺𝑧))
53 eqopi 7093 . . . . . . . 8 (((𝑧) ∈ (V × V) ∧ ((1st ‘(𝑧)) = (𝐹𝑧) ∧ (2nd ‘(𝑧)) = (𝐺𝑧))) → (𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
5425, 40, 52, 53syl12anc 1316 . . . . . . 7 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
55 fveq2 6103 . . . . . . . . . 10 (𝑥 = 𝑧 → (𝐹𝑥) = (𝐹𝑧))
56 fveq2 6103 . . . . . . . . . 10 (𝑥 = 𝑧 → (𝐺𝑥) = (𝐺𝑧))
5755, 56opeq12d 4348 . . . . . . . . 9 (𝑥 = 𝑧 → ⟨(𝐹𝑥), (𝐺𝑥)⟩ = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
58 opex 4859 . . . . . . . . 9 ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ V
5957, 15, 58fvmpt 6191 . . . . . . . 8 (𝑧𝐴 → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
6059adantl 481 . . . . . . 7 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
6154, 60eqtr4d 2647 . . . . . 6 ((((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) ∧ 𝑧𝐴) → (𝑧) = ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧))
627, 20, 61eqfnfvd 6222 . . . . 5 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))) → = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
6362ex 449 . . . 4 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) → = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
64 ffn 5958 . . . . . . . . 9 (𝐹:𝐴𝐵𝐹 Fn 𝐴)
65643ad2ant2 1076 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 Fn 𝐴)
66 fo1st 7079 . . . . . . . . . . . 12 1st :V–onto→V
67 fofn 6030 . . . . . . . . . . . 12 (1st :V–onto→V → 1st Fn V)
6866, 67ax-mp 5 . . . . . . . . . . 11 1st Fn V
69 ssv 3588 . . . . . . . . . . 11 (𝐵 × 𝐶) ⊆ V
70 fnssres 5918 . . . . . . . . . . 11 ((1st Fn V ∧ (𝐵 × 𝐶) ⊆ V) → (1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶))
7168, 69, 70mp2an 704 . . . . . . . . . 10 (1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶)
7271a1i 11 . . . . . . . . 9 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶))
73 frn 5966 . . . . . . . . . 10 ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) → ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶))
7417, 73syl 17 . . . . . . . . 9 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶))
75 fnco 5913 . . . . . . . . 9 (((1st ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶) ∧ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴 ∧ ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶)) → ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
7672, 19, 74, 75syl3anc 1318 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
77 fvco3 6185 . . . . . . . . . 10 (((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
7817, 77sylan 487 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
7959adantl 481 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧) = ⟨(𝐹𝑧), (𝐺𝑧)⟩)
8079fveq2d 6107 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)) = ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
81 ffvelrn 6265 . . . . . . . . . . . . . 14 ((𝐹:𝐴𝐵𝑧𝐴) → (𝐹𝑧) ∈ 𝐵)
82 ffvelrn 6265 . . . . . . . . . . . . . 14 ((𝐺:𝐴𝐶𝑧𝐴) → (𝐺𝑧) ∈ 𝐶)
83 opelxpi 5072 . . . . . . . . . . . . . 14 (((𝐹𝑧) ∈ 𝐵 ∧ (𝐺𝑧) ∈ 𝐶) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
8481, 82, 83syl2an 493 . . . . . . . . . . . . 13 (((𝐹:𝐴𝐵𝑧𝐴) ∧ (𝐺:𝐴𝐶𝑧𝐴)) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
8584anandirs 870 . . . . . . . . . . . 12 (((𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
86853adantl1 1210 . . . . . . . . . . 11 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶))
87 fvres 6117 . . . . . . . . . . 11 (⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶) → ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (1st ‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
8886, 87syl 17 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (1st ‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
89 fvex 6113 . . . . . . . . . . 11 (𝐹𝑧) ∈ V
90 fvex 6113 . . . . . . . . . . 11 (𝐺𝑧) ∈ V
9189, 90op1st 7067 . . . . . . . . . 10 (1st ‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐹𝑧)
9288, 91syl6eq 2660 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((1st ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐹𝑧))
9378, 80, 923eqtrrd 2649 . . . . . . . 8 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (𝐹𝑧) = (((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧))
9465, 76, 93eqfnfvd 6222 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 = ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
9527coeq1i 5203 . . . . . . 7 (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) = ((1st ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
9694, 95syl6eqr 2662 . . . . . 6 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
97 ffn 5958 . . . . . . . . 9 (𝐺:𝐴𝐶𝐺 Fn 𝐴)
98973ad2ant3 1077 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 Fn 𝐴)
99 fo2nd 7080 . . . . . . . . . . . 12 2nd :V–onto→V
100 fofn 6030 . . . . . . . . . . . 12 (2nd :V–onto→V → 2nd Fn V)
10199, 100ax-mp 5 . . . . . . . . . . 11 2nd Fn V
102 fnssres 5918 . . . . . . . . . . 11 ((2nd Fn V ∧ (𝐵 × 𝐶) ⊆ V) → (2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶))
103101, 69, 102mp2an 704 . . . . . . . . . 10 (2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶)
104103a1i 11 . . . . . . . . 9 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶))
105 fnco 5913 . . . . . . . . 9 (((2nd ↾ (𝐵 × 𝐶)) Fn (𝐵 × 𝐶) ∧ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) Fn 𝐴 ∧ ran (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) ⊆ (𝐵 × 𝐶)) → ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
106104, 19, 74, 105syl3anc 1318 . . . . . . . 8 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) Fn 𝐴)
107 fvco3 6185 . . . . . . . . . 10 (((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
10817, 107sylan 487 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧) = ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)))
10979fveq2d 6107 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)‘𝑧)) = ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
110 fvres 6117 . . . . . . . . . . 11 (⟨(𝐹𝑧), (𝐺𝑧)⟩ ∈ (𝐵 × 𝐶) → ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (2nd ‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
11186, 110syl 17 . . . . . . . . . 10 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (2nd ‘⟨(𝐹𝑧), (𝐺𝑧)⟩))
11289, 90op2nd 7068 . . . . . . . . . 10 (2nd ‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐺𝑧)
113111, 112syl6eq 2660 . . . . . . . . 9 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → ((2nd ↾ (𝐵 × 𝐶))‘⟨(𝐹𝑧), (𝐺𝑧)⟩) = (𝐺𝑧))
114108, 109, 1133eqtrrd 2649 . . . . . . . 8 (((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) ∧ 𝑧𝐴) → (𝐺𝑧) = (((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))‘𝑧))
11598, 106, 114eqfnfvd 6222 . . . . . . 7 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 = ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
11642coeq1i 5203 . . . . . . 7 (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) = ((2nd ↾ (𝐵 × 𝐶)) ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))
117115, 116syl6eqr 2662 . . . . . 6 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
11817, 96, 1173jca 1235 . . . . 5 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) ∧ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
119 feq1 5939 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (:𝐴⟶(𝐵 × 𝐶) ↔ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶)))
120 coeq2 5202 . . . . . . 7 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝑃) = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
121120eqeq2d 2620 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝐹 = (𝑃) ↔ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
122 coeq2 5202 . . . . . . 7 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝑄) = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
123122eqeq2d 2620 . . . . . 6 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (𝐺 = (𝑄) ↔ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩))))
124119, 121, 1233anbi123d 1391 . . . . 5 ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ ((𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩):𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)) ∧ 𝐺 = (𝑄 ∘ (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))))
125118, 124syl5ibrcom 236 . . . 4 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ( = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩) → (:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄))))
12663, 125impbid 201 . . 3 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ((:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
127126eubidv 2478 . 2 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → (∃!(:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)) ↔ ∃! = (𝑥𝐴 ↦ ⟨(𝐹𝑥), (𝐺𝑥)⟩)))
1284, 127mpbird 246 1 ((𝐴𝐷𝐹:𝐴𝐵𝐺:𝐴𝐶) → ∃!(:𝐴⟶(𝐵 × 𝐶) ∧ 𝐹 = (𝑃) ∧ 𝐺 = (𝑄)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 383  w3a 1031   = wceq 1475  wcel 1977  ∃!weu 2458  wral 2896  Vcvv 3173  wss 3540  cop 4131  cmpt 4643   × cxp 5036  ran crn 5039  cres 5040  ccom 5042   Fn wfn 5799  wf 5800  ontowfo 5802  cfv 5804  1st c1st 7057  2nd c2nd 7058
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-rep 4699  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-ral 2901  df-rex 2902  df-reu 2903  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-id 4953  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-1st 7059  df-2nd 7060
This theorem is referenced by:  uptx  21238  txcn  21239
  Copyright terms: Public domain W3C validator