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

Theorem pw2en 4426
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 2735 . 2 |- P~A e. V
31opabex2 3596 . . 3 |- {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} e. V
43a1i 8 . 2 |- (x e. P~A -> {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} e. V)
5 visset 1804 . . . . 5 |- y e. V
65cnvex 3506 . . . 4 |- `'y e. V
7 imaexg 3400 . . . 4 |- (`'y e. V -> (`'y"{{(/)}}) e. V)
86, 7ax-mp 7 . . 3 |- (`'y"{{(/)}}) e. V
98a1i 8 . 2 |- (y e. (2o ^m A) -> (`'y"{{(/)}}) e. V)
10 sseqin2 2219 . . . . . . . . 9 |- (x (_ A <-> (A i^i x) = x)
1110biimp 151 . . . . . . . 8 |- (x (_ A -> (A i^i x) = x)
1211eqeq1d 1475 . . . . . . 7 |- (x (_ A -> ((A i^i x) = (`'y"{{(/)}}) <-> x = (`'y"{{(/)}})))
13 eleq2 1527 . . . . . . . . . 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)})}))
14 p0ex 2760 . . . . . . . . . . . 12 |- {(/)} e. V
15 visset 1804 . . . . . . . . . . . 12 |- u e. V
1614, 15elimasn 3410 . . . . . . . . . . 11 |- (u e. (`'y"{{(/)}}) <-> <.{(/)}, u>. e. `'y)
1714, 15opelcnv 3287 . . . . . . . . . . 11 |- (<.{(/)}, u>. e. `'y <-> <.u, {(/)}>. e. y)
1816, 17bitr 173 . . . . . . . . . 10 |- (u e. (`'y"{{(/)}}) <-> <.u, {(/)}>. e. y)
1913, 18syl5bb 530 . . . . . . . . 9 |- (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)})}))
20 eq2ab 1565 . . . . . . . . . . . 12 |- ({v | v = (/)} = {v | (v = (/) /\ u e. x)} <-> A.v(v = (/) <-> (v = (/) /\ u e. x)))
21 df-sn 2402 . . . . . . . . . . . . 13 |- {(/)} = {v | v = (/)}
2221eqeq1i 1474 . . . . . . . . . . . 12 |- ({(/)} = {v | (v = (/) /\ u e. x)} <-> {v | v = (/)} = {v | (v = (/) /\ u e. x)})
23 iba 640 . . . . . . . . . . . . . 14 |- (u e. x -> (v = (/) <-> (v = (/) /\ u e. x)))
242319.21aiv 1281 . . . . . . . . . . . . 13 |- (u e. x -> A.v(v = (/) <-> (v = (/) /\ u e. x)))
25 0ex 2701 . . . . . . . . . . . . . . 15 |- (/) e. V
26 eqeq1 1473 . . . . . . . . . . . . . . . 16 |- (v = (/) -> (v = (/) <-> (/) = (/)))
2726anbi1d 615 . . . . . . . . . . . . . . . 16 |- (v = (/) -> ((v = (/) /\ u e. x) <-> ((/) = (/) /\ u e. x)))
2826, 27bibi12d 627 . . . . . . . . . . . . . . 15 |- (v = (/) -> ((v = (/) <-> (v = (/) /\ u e. x)) <-> ((/) = (/) <-> ((/) = (/) /\ u e. x))))
2925, 28cla4v 1859 . . . . . . . . . . . . . 14 |- (A.v(v = (/) <-> (v = (/) /\ u e. x)) -> ((/) = (/) <-> ((/) = (/) /\ u e. x)))
30 eqid 1468 . . . . . . . . . . . . . . . 16 |- (/) = (/)
3130a1bi 197 . . . . . . . . . . . . . . 15 |- (u e. x <-> ((/) = (/) -> u e. x))
32 pm4.71 633 . . . . . . . . . . . . . . 15 |- (((/) = (/) -> u e. x) <-> ((/) = (/) <-> ((/) = (/) /\ u e. x)))
3331, 32bitr 173 . . . . . . . . . . . . . 14 |- (u e. x <-> ((/) = (/) <-> ((/) = (/) /\ u e. x)))
3429, 33sylibr 200 . . . . . . . . . . . . 13 |- (A.v(v = (/) <-> (v = (/) /\ u e. x)) -> u e. x)
3524, 34impbi 157 . . . . . . . . . . . 12 |- (u e. x <-> A.v(v = (/) <-> (v = (/) /\ u e. x)))
3620, 22, 353bitr4r 184 . . . . . . . . . . 11 |- (u e. x <-> {(/)} = {v | (v = (/) /\ u e. x)})
3736anbi2i 479 . . . . . . . . . 10 |- ((u e. A /\ u e. x) <-> (u e. A /\ {(/)} = {v | (v = (/) /\ u e. x)}))
38 elin 2197 . . . . . . . . . 10 |- (u e. (A i^i x) <-> (u e. A /\ u e. x))
39 eleq1 1526 . . . . . . . . . . . 12 |- (z = u -> (z e. A <-> u e. A))
40 eleq1 1526 . . . . . . . . . . . . . . 15 |- (z = u -> (z e. x <-> u e. x))
4140anbi2d 614 . . . . . . . . . . . . . 14 |- (z = u -> ((v = (/) /\ z e. x) <-> (v = (/) /\ u e. x)))
4241abbidv 1569 . . . . . . . . . . . . 13 |- (z = u -> {v | (v = (/) /\ z e. x)} = {v | (v = (/) /\ u e. x)})
4342eqeq2d 1478 . . . . . . . . . . . 12 |- (z = u -> (w = {v | (v = (/) /\ z e. x)} <-> w = {v | (v = (/) /\ u e. x)}))
4439, 43anbi12d 626 . . . . . . . . . . 11 |- (z = u -> ((z e. A /\ w = {v | (v = (/) /\ z e. x)}) <-> (u e. A /\ w = {v | (v = (/) /\ u e. x)})))
45 eqeq1 1473 . . . . . . . . . . . 12 |- (w = {(/)} -> (w = {v | (v = (/) /\ u e. x)} <-> {(/)} = {v | (v = (/) /\ u e. x)}))
4645anbi2d 614 . . . . . . . . . . 11 |- (w = {(/)} -> ((u e. A /\ w = {v | (v = (/) /\ u e. x)}) <-> (u e. A /\ {(/)} = {v | (v = (/) /\ u e. x)})))
4715, 14, 44, 46opelopab 2809 . . . . . . . . . 10 |- (<.u, {(/)}>. e. {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} <-> (u e. A /\ {(/)} = {v | (v = (/) /\ u e. x)}))
4837, 38, 473bitr4 183 . . . . . . . . 9 |- (u e. (A i^i x) <-> <.u, {(/)}>. e. {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})})
4919, 48syl6rbbr 537 . . . . . . . 8 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (u e. (A i^i x) <-> u e. (`'y"{{(/)}})))
5049eqrdv 1466 . . . . . . 7 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (A i^i x) = (`'y"{{(/)}}))
5112, 50syl5cbi 209 . . . . . 6 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> (x (_ A -> x = (`'y"{{(/)}})))
52 sseq1 2072 . . . . . . 7 |- (x = (`'y"{{(/)}}) -> (x (_ A <-> (`'y"{{(/)}}) (_ A))
53 imassrn 3399 . . . . . . . 8 |- (`'y"{{(/)}}) (_ ran `' y
5421, 14eqeltrr 1537 . . . . . . . . . . . . . 14 |- {v | v = (/)} e. V
55 pm3.26 319 . . . . . . . . . . . . . . 15 |- ((v = (/) /\ z e. x) -> v = (/))
5655ss2abi 2110 . . . . . . . . . . . . . 14 |- {v | (v = (/) /\ z e. x)} (_ {v | v = (/)}
5754, 56ssexi 2710 . . . . . . . . . . . . 13 |- {v | (v = (/) /\ z e. x)} e. V
58 eqid 1468 . . . . . . . . . . . . 13 |- {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})}
5957, 58fnopab2 3604 . . . . . . . . . . . 12 |- {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} Fn A
60 fneq1 3568 . . . . . . . . . . . 12 |- (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))
6159, 60mpbiri 194 . . . . . . . . . . 11 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> y Fn A)
62 fndm 3573 . . . . . . . . . . 11 |- (y Fn A -> dom y = A)
6361, 62syl 10 . . . . . . . . . 10 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> dom y = A)
64 dfdm4 3294 . . . . . . . . . 10 |- dom y = ran `' y
6563, 64syl5eqr 1513 . . . . . . . . 9 |- (y = {<.z, w>. | (z e. A /\ w = {v | (v = (/) /\ z e. x)})} -> ran `' y = A)
6665sseq2d 2079 . . . . . . . 8 |- (y = {<.z, w>. | (z e. A