Metamath Proof Explorer


Theorem reuop

Description: There is a unique ordered pair fulfilling a wff iff there are uniquely two sets fulfilling a corresponding wff. (Contributed by AV, 23-Jun-2023)

Ref Expression
Hypotheses reu3op.a ⊢ p = a b → ψ ↔ χ
reuop.x ⊢ p = x y → ψ ↔ θ
Assertion reuop ⊢ ∃! p ∈ X × Y ψ ↔ ∃ a ∈ X ∃ b ∈ Y χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b

Proof

Step Hyp Ref Expression
1 reu3op.a ⊢ p = a b → ψ ↔ χ
2 reuop.x ⊢ p = x y → ψ ↔ θ
3 nfsbc1v ⊢ Ⅎ p [˙q / p]˙ ψ
4 nfsbc1v ⊢ Ⅎ p [˙w / p]˙ ψ
5 sbceq1a ⊢ p = w → ψ ↔ [˙w / p]˙ ψ
6 dfsbcq ⊢ w = q → [˙w / p]˙ ψ ↔ [˙q / p]˙ ψ
7 3 4 5 6 reu8nf ⊢ ∃! p ∈ X × Y ψ ↔ ∃ p ∈ X × Y ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q
8 elxp2 ⊢ p ∈ X × Y ↔ ∃ a ∈ X ∃ b ∈ Y p = a b
9 1 biimpcd ⊢ ψ → p = a b → χ
10 9 adantr ⊢ ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → p = a b → χ
11 10 adantr ⊢ ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ∧ a ∈ X ∧ b ∈ Y → p = a b → χ
12 11 imp ⊢ ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ∧ a ∈ X ∧ b ∈ Y ∧ p = a b → χ
13 opelxpi ⊢ x ∈ X ∧ y ∈ Y → x y ∈ X × Y
14 dfsbcq ⊢ q = x y → [˙q / p]˙ ψ ↔ [˙ x y / p]˙ ψ
15 eqeq2 ⊢ q = x y → p = q ↔ p = x y
16 14 15 imbi12d ⊢ q = x y → [˙q / p]˙ ψ → p = q ↔ [˙ x y / p]˙ ψ → p = x y
17 16 adantl ⊢ x ∈ X ∧ y ∈ Y ∧ q = x y → [˙q / p]˙ ψ → p = q ↔ [˙ x y / p]˙ ψ → p = x y
18 13 17 rspcdv ⊢ x ∈ X ∧ y ∈ Y → ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → [˙ x y / p]˙ ψ → p = x y
19 18 adantr ⊢ x ∈ X ∧ y ∈ Y ∧ ψ → ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → [˙ x y / p]˙ ψ → p = x y
20 opex ⊢ x y ∈ V
21 20 2 sbcie ⊢ [˙ x y / p]˙ ψ ↔ θ
22 pm2.27 ⊢ [˙ x y / p]˙ ψ → [˙ x y / p]˙ ψ → p = x y → p = x y
23 21 22 sylbir ⊢ θ → [˙ x y / p]˙ ψ → p = x y → p = x y
24 eqcom ⊢ x y = p ↔ p = x y
25 23 24 imbitrrdi ⊢ θ → [˙ x y / p]˙ ψ → p = x y → x y = p
26 25 com12 ⊢ [˙ x y / p]˙ ψ → p = x y → θ → x y = p
27 eqeq2 ⊢ a b = p → x y = a b ↔ x y = p
28 27 eqcoms ⊢ p = a b → x y = a b ↔ x y = p
29 28 imbi2d ⊢ p = a b → θ → x y = a b ↔ θ → x y = p
30 26 29 syl5ibrcom ⊢ [˙ x y / p]˙ ψ → p = x y → p = a b → θ → x y = a b
31 30 a1d ⊢ [˙ x y / p]˙ ψ → p = x y → a ∈ X ∧ b ∈ Y → p = a b → θ → x y = a b
32 19 31 syl6 ⊢ x ∈ X ∧ y ∈ Y ∧ ψ → ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → a ∈ X ∧ b ∈ Y → p = a b → θ → x y = a b
33 32 expimpd ⊢ x ∈ X ∧ y ∈ Y → ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → a ∈ X ∧ b ∈ Y → p = a b → θ → x y = a b
34 33 imp4c ⊢ x ∈ X ∧ y ∈ Y → ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ∧ a ∈ X ∧ b ∈ Y ∧ p = a b → θ → x y = a b
35 34 impcom ⊢ ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ∧ a ∈ X ∧ b ∈ Y ∧ p = a b ∧ x ∈ X ∧ y ∈ Y → θ → x y = a b
36 35 ralrimivva ⊢ ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ∧ a ∈ X ∧ b ∈ Y ∧ p = a b → ∀ x ∈ X ∀ y ∈ Y θ → x y = a b
37 12 36 jca ⊢ ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ∧ a ∈ X ∧ b ∈ Y ∧ p = a b → χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b
38 37 ex ⊢ ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ∧ a ∈ X ∧ b ∈ Y → p = a b → χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b
39 38 reximdvva ⊢ ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → ∃ a ∈ X ∃ b ∈ Y p = a b → ∃ a ∈ X ∃ b ∈ Y χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b
40 39 com12 ⊢ ∃ a ∈ X ∃ b ∈ Y p = a b → ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → ∃ a ∈ X ∃ b ∈ Y χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b
41 8 40 sylbi ⊢ p ∈ X × Y → ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → ∃ a ∈ X ∃ b ∈ Y χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b
42 41 rexlimiv ⊢ ∃ p ∈ X × Y ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q → ∃ a ∈ X ∃ b ∈ Y χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b
43 opelxpi ⊢ a ∈ X ∧ b ∈ Y → a b ∈ X × Y
44 43 adantr ⊢ a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → a b ∈ X × Y
45 simprl ⊢ a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → χ
46 nfsbc1v ⊢ Ⅎ x [˙c / x]˙ θ
47 nfv ⊢ Ⅎ x c y = a b
48 46 47 nfim ⊢ Ⅎ x [˙c / x]˙ θ → c y = a b
49 nfsbc1v ⊢ Ⅎ y [˙d / y]˙ [˙c / x]˙ θ
50 nfv ⊢ Ⅎ y c d = a b
51 49 50 nfim ⊢ Ⅎ y [˙d / y]˙ [˙c / x]˙ θ → c d = a b
52 sbceq1a ⊢ x = c → θ ↔ [˙c / x]˙ θ
53 opeq1 ⊢ x = c → x y = c y
54 53 eqeq1d ⊢ x = c → x y = a b ↔ c y = a b
55 52 54 imbi12d ⊢ x = c → θ → x y = a b ↔ [˙c / x]˙ θ → c y = a b
56 sbceq1a ⊢ y = d → [˙c / x]˙ θ ↔ [˙d / y]˙ [˙c / x]˙ θ
57 opeq2 ⊢ y = d → c y = c d
58 57 eqeq1d ⊢ y = d → c y = a b ↔ c d = a b
59 56 58 imbi12d ⊢ y = d → [˙c / x]˙ θ → c y = a b ↔ [˙d / y]˙ [˙c / x]˙ θ → c d = a b
60 48 51 55 59 rspc2 ⊢ c ∈ X ∧ d ∈ Y → ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → [˙d / y]˙ [˙c / x]˙ θ → c d = a b
61 60 ad2antlr ⊢ a ∈ X ∧ b ∈ Y ∧ c ∈ X ∧ d ∈ Y ∧ χ → ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → [˙d / y]˙ [˙c / x]˙ θ → c d = a b
62 2 sbcop ⊢ [˙d / y]˙ [˙c / x]˙ θ ↔ [˙ c d / p]˙ ψ
63 pm2.27 ⊢ [˙d / y]˙ [˙c / x]˙ θ → [˙d / y]˙ [˙c / x]˙ θ → c d = a b → c d = a b
64 62 63 sylbir ⊢ [˙ c d / p]˙ ψ → [˙d / y]˙ [˙c / x]˙ θ → c d = a b → c d = a b
65 eqcom ⊢ a b = c d ↔ c d = a b
66 64 65 imbitrrdi ⊢ [˙ c d / p]˙ ψ → [˙d / y]˙ [˙c / x]˙ θ → c d = a b → a b = c d
67 66 com12 ⊢ [˙d / y]˙ [˙c / x]˙ θ → c d = a b → [˙ c d / p]˙ ψ → a b = c d
68 61 67 syl6 ⊢ a ∈ X ∧ b ∈ Y ∧ c ∈ X ∧ d ∈ Y ∧ χ → ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → [˙ c d / p]˙ ψ → a b = c d
69 68 expimpd ⊢ a ∈ X ∧ b ∈ Y ∧ c ∈ X ∧ d ∈ Y → χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → [˙ c d / p]˙ ψ → a b = c d
70 69 expcom ⊢ c ∈ X ∧ d ∈ Y → a ∈ X ∧ b ∈ Y → χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → [˙ c d / p]˙ ψ → a b = c d
71 70 impd ⊢ c ∈ X ∧ d ∈ Y → a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → [˙ c d / p]˙ ψ → a b = c d
72 71 impcom ⊢ a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b ∧ c ∈ X ∧ d ∈ Y → [˙ c d / p]˙ ψ → a b = c d
73 dfsbcq ⊢ q = c d → [˙q / p]˙ ψ ↔ [˙ c d / p]˙ ψ
74 eqeq2 ⊢ q = c d → a b = q ↔ a b = c d
75 73 74 imbi12d ⊢ q = c d → [˙q / p]˙ ψ → a b = q ↔ [˙ c d / p]˙ ψ → a b = c d
76 72 75 syl5ibrcom ⊢ a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b ∧ c ∈ X ∧ d ∈ Y → q = c d → [˙q / p]˙ ψ → a b = q
77 76 rexlimdvva ⊢ a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → ∃ c ∈ X ∃ d ∈ Y q = c d → [˙q / p]˙ ψ → a b = q
78 elxp2 ⊢ q ∈ X × Y ↔ ∃ c ∈ X ∃ d ∈ Y q = c d
79 78 biimpi ⊢ q ∈ X × Y → ∃ c ∈ X ∃ d ∈ Y q = c d
80 77 79 impel ⊢ a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b ∧ q ∈ X × Y → [˙q / p]˙ ψ → a b = q
81 80 ralrimiva ⊢ a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → ∀ q ∈ X × Y [˙q / p]˙ ψ → a b = q
82 nfv ⊢ Ⅎ p χ
83 nfcv ⊢ Ⅎ _ p X × Y
84 nfv ⊢ Ⅎ p a b = q
85 3 84 nfim ⊢ Ⅎ p [˙q / p]˙ ψ → a b = q
86 83 85 nfralw ⊢ Ⅎ p ∀ q ∈ X × Y [˙q / p]˙ ψ → a b = q
87 82 86 nfan ⊢ Ⅎ p χ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → a b = q
88 eqeq1 ⊢ p = a b → p = q ↔ a b = q
89 88 imbi2d ⊢ p = a b → [˙q / p]˙ ψ → p = q ↔ [˙q / p]˙ ψ → a b = q
90 89 ralbidv ⊢ p = a b → ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ↔ ∀ q ∈ X × Y [˙q / p]˙ ψ → a b = q
91 1 90 anbi12d ⊢ p = a b → ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ↔ χ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → a b = q
92 87 91 rspce ⊢ a b ∈ X × Y ∧ χ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → a b = q → ∃ p ∈ X × Y ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q
93 44 45 81 92 syl12anc ⊢ a ∈ X ∧ b ∈ Y ∧ χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → ∃ p ∈ X × Y ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q
94 93 ex ⊢ a ∈ X ∧ b ∈ Y → χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → ∃ p ∈ X × Y ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q
95 94 rexlimivv ⊢ ∃ a ∈ X ∃ b ∈ Y χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b → ∃ p ∈ X × Y ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q
96 42 95 impbii ⊢ ∃ p ∈ X × Y ψ ∧ ∀ q ∈ X × Y [˙q / p]˙ ψ → p = q ↔ ∃ a ∈ X ∃ b ∈ Y χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b
97 7 96 bitri ⊢ ∃! p ∈ X × Y ψ ↔ ∃ a ∈ X ∃ b ∈ Y χ ∧ ∀ x ∈ X ∀ y ∈ Y θ → x y = a b