HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem pw2en 3348
Description: The power set of a set is equinumerous to set exponentiation with a base of ordinal 2. Proposition 10.44 of [TakeutiZaring] p. 96. (This proof seems excessively long. An attempt to find a shorter one is on my to-do list.)
Hypothesis
Ref Expression
pw2en.1 |- A e. V
Assertion
Ref Expression
pw2en |- P~A ~~ (2o ^m A)

Proof of Theorem pw2en
StepHypRef Expression
1 pw2en.1 . . 3 |- A e. V
21pwex 1806 . 2 |- P~A e. V
3 moeq 1431 . . . . 5 |- E*w w = {v | (v = (/) /\ z e. x)}
43a1i 7 . . . 4 |- (z e. A -> E*w w = {v | (v = (/) /\ z e. x)})
51, 4funopabex 2742 . . 3 |- {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} e. V
65a1i 7 . 2 |- (x e. P~A -> {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} e. V)
7 visset 1350 . . . . 5 |- y e. V
87cnvex 2670 . . . 4 |- `'y e. V
9 imaexg 2612 . . . 4 |- (`'y e. V -> (`'y"{{(/)}}) e. V)
108, 9ax-mp 6 . . 3 |- (`'y"{{(/)}}) e. V
1110a1i 7 . 2 |- (y e. (2o ^m A) -> (`'y"{{(/)}}) e. V)
12 sseqin2 1656 . . . . . . . . . 10 |- (x (_ A <-> (A i^i x) = x)
1312biimp 133 . . . . . . . . 9 |- (x (_ A -> (A i^i x) = x)
1413cleq1d 1109 . . . . . . . 8 |- (x (_ A -> ((A i^i x) = (`'y"{{(/)}}) <-> x = (`'y"{{(/)}})))
15 eleq2 1150 . . . . . . . . . . 11 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (<.u, {(/)}>. e. y <-> <.u, {(/)}>. e. {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})}))
16 p0ex 1885 . . . . . . . . . . . . 13 |- {(/)} e. V
17 visset 1350 . . . . . . . . . . . . 13 |- u e. V
1816, 17elimasn 2617 . . . . . . . . . . . 12 |- (u e. (`'y"{{(/)}}) <-> <.{(/)}, u>. e. `'y)
1916, 17opelcnv 2518 . . . . . . . . . . . 12 |- (<.{(/)}, u>. e. `'y <-> <.u, {(/)}>. e. y)
2018, 19bitr 151 . . . . . . . . . . 11 |- (u e. (`'y"{{(/)}}) <-> <.u, {(/)}>. e. y)
2115, 20syl5bb 410 . . . . . . . . . 10 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (u e. (`'y"{{(/)}}) <-> <.u, {(/)}>. e. {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})}))
22 cleq2ab 1179 . . . . . . . . . . . . 13 |- ({v | v = (/)} = {v | (v = (/) /\ u e. x)} <-> A.v(v = (/) <-> (v = (/) /\ u e. x)))
23 df-sn 1811 . . . . . . . . . . . . . 14 |- {(/)} = {v | v = (/)}
2423cleq1i 1108 . . . . . . . . . . . . 13 |- ({(/)} = {v | (v = (/) /\ u e. x)} <-> {v | v = (/)} = {v | (v = (/) /\ u e. x)})
25 iba 486 . . . . . . . . . . . . . . 15 |- (u e. x -> (v = (/) <-> (v = (/) /\ u e. x)))
262519.21aiv 943 . . . . . . . . . . . . . 14 |- (u e. x -> A.v(v = (/) <-> (v = (/) /\ u e. x)))
27 0ex 1745 . . . . . . . . . . . . . . . 16 |- (/) e. V
28 cleq1 1107 . . . . . . . . . . . . . . . . 17 |- (v = (/) -> (v = (/) <-> (/) = (/)))
2928anbi1d 469 . . . . . . . . . . . . . . . . 17 |- (v = (/) -> ((v = (/) /\ u e. x) <-> ((/) = (/) /\ u e. x)))
3028, 29bibi12d 477 . . . . . . . . . . . . . . . 16 |- (v = (/) -> ((v = (/) <-> (v = (/) /\ u e. x)) <-> ((/) = (/) <-> ((/) = (/) /\ u e. x))))
3127, 30cla4v 1400 . . . . . . . . . . . . . . 15 |- (A.v(v = (/) <-> (v = (/) /\ u e. x)) -> ((/) = (/) <-> ((/) = (/) /\ u e. x)))
32 cleqid 1102 . . . . . . . . . . . . . . . . 17 |- (/) = (/)
3332a1bi 172 . . . . . . . . . . . . . . . 16 |- (u e. x <-> ((/) = (/) -> u e. x))
34 pm4.71 481 . . . . . . . . . . . . . . . 16 |- (((/) = (/) -> u e. x) <-> ((/) = (/) <-> ((/) = (/) /\ u e. x)))
3533, 34bitr 151 . . . . . . . . . . . . . . 15 |- (u e. x <-> ((/) = (/) <-> ((/) = (/) /\ u e. x)))
3631, 35sylibr 175 . . . . . . . . . . . . . 14 |- (A.v(v = (/) <-> (v = (/) /\ u e. x)) -> u e. x)
3726, 36impbi 139 . . . . . . . . . . . . 13 |- (u e. x <-> A.v(v = (/) <-> (v = (/) /\ u e. x)))
3822, 24, 373bitr4r 159 . . . . . . . . . . . 12 |- (u e. x <-> {(/)} = {v | (v = (/) /\ u e. x)})
3938anbi2i 367 . . . . . . . . . . 11 |- ((u e. A /\ u e. x) <-> (u e. A /\ {(/)} = {v | (v = (/) /\ u e. x)}))
40 elin 1635 . . . . . . . . . . 11 |- (u e. (A i^i x) <-> (u e. A /\ u e. x))
41 eleq1 1149 . . . . . . . . . . . . 13 |- (z = u -> (z e. A <-> u e. A))
42 eleq1 1149 . . . . . . . . . . . . . . . 16 |- (z = u -> (z e. x <-> u e. x))
4342anbi2d 468 . . . . . . . . . . . . . . 15 |- (z = u -> ((v = (/) /\ z e. x) <-> (v = (/) /\ u e. x)))
4443biabdv 1183 . . . . . . . . . . . . . 14 |- (z = u -> {v | (v = (/) /\ z e. x)} = {v | (v = (/) /\ u e. x)})
4544cleq2d 1112 . . . . . . . . . . . . 13 |- (z = u -> (w = {v | (v = (/) /\ z e. x)} <-> w = {v | (v = (/) /\ u e. x)}))
4641, 45anbi12d 476 . . . . . . . . . . . 12 |- (z = u -> ((z e. A /\ w = {v | (v = (/) /\ z e. x)}) <-> (u e. A /\ w = {v | (v = (/) /\ u e. x)})))
47 cleq1 1107 . . . . . . . . . . . . 13 |- (w = {(/)} -> (w = {v | (v = (/) /\ u e. x)} <-> {(/)} = {v | (v = (/) /\ u e. x)}))
4847anbi2d 468 . . . . . . . . . . . 12 |- (w = {(/)} -> ((u e. A /\ w = {v | (v = (/) /\ u e. x)}) <-> (u e. A /\ {(/)} = {v | (v = (/) /\ u e. x)})))
4917, 16, 46, 48opelopab 2117 . . . . . . . . . . 11 |- (<.u, {(/)}>. e. {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} <-> (u e. A /\ {(/)} = {v | (v = (/) /\ u e. x)}))
5039, 40, 493bitr4 158 . . . . . . . . . 10 |- (u e. (A i^i x) <-> <.u, {(/)}>. e. {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})})
5121, 50syl6rbbr 417 . . . . . . . . 9 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (u e. (A i^i x) <-> u e. (`'y"{{(/)}})))
5251cleqrd 1100 . . . . . . . 8 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (A i^i x) = (`'y"{{(/)}}))
5314, 52syl5bi 183 . . . . . . 7 |- (x (_ A -> (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> x = (`'y"{{(/)}})))
5453com12 13 . . . . . 6 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (x (_ A -> x = (`'y"{{(/)}})))
55 sseq1 1521 . . . . . . . 8 |- (x = (`'y"{{(/)}}) -> (x (_ A <-> (`'y"{{(/)}}) (_ A))
56 imassrn 2611 . . . . . . . . 9 |- (`'y"{{(/)}}) (_ ran `'y
5723, 16eqeltrr 1160 . . . . . . . . . . . . . . 15 |- {v | v = (/)} e. V
58 pm3.26 256 . . . . . . . . . . . . . . . 16 |- ((v = (/) /\ z e. x) -> v = (/))
5958ss2abi 1552 . . . . . . . . . . . . . . 15 |- {v | (v = (/) /\ z e. x)} (_ {v | v = (/)}
6057, 59ssexi 1701 . . . . . . . . . . . . . 14 |- {v | (v = (/) /\ z e. x)} e. V
61 cleqid 1102 . . . . . . . . . . . . . 14 |- {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})}
6260, 61fnopab2 2747 . . . . . . . . . . . . 13 |- {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} Fn A
63 fneq1 2718 . . . . . . . . . . . . 13 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (y Fn A <-> {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} Fn A))
6462, 63mpbiri 169 . . . . . . . . . . . 12 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> y Fn A)
65 fndm 2723 . . . . . . . . . . . 12 |- (y Fn A -> dom y = A)
6664, 65syl 12 . . . . . . . . . . 11 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> dom y = A)
67 dfdm4 2525 . . . . . . . . . . 11 |- dom y = ran `'y
6866, 67syl5eqr 1138 . . . . . . . . . 10 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})