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

Theorem ackbijnn 14560
Description: Translate the Ackermann bijection ackbij1 9060 onto the positive integers. (Contributed by Mario Carneiro, 16-Jan-2015.)
Hypothesis
Ref Expression
ackbijnn.1  |-  F  =  ( x  e.  ( ~P NN0  i^i  Fin )  |->  sum_ y  e.  x  ( 2 ^ y
) )
Assertion
Ref Expression
ackbijnn  |-  F :
( ~P NN0  i^i  Fin ) -1-1-onto-> NN0
Distinct variable group:    x, y
Allowed substitution hints:    F( x, y)

Proof of Theorem ackbijnn
Dummy variables  w  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 hashgval2 13167 . . . 4  |-  ( #  |` 
om )  =  ( rec ( ( x  e.  _V  |->  ( x  +  1 ) ) ,  0 )  |`  om )
21hashgf1o 12770 . . 3  |-  ( #  |` 
om ) : om -1-1-onto-> NN0
3 sneq 4187 . . . . . . . . . 10  |-  ( w  =  y  ->  { w }  =  { y } )
4 pweq 4161 . . . . . . . . . 10  |-  ( w  =  y  ->  ~P w  =  ~P y
)
53, 4xpeq12d 5140 . . . . . . . . 9  |-  ( w  =  y  ->  ( { w }  X.  ~P w )  =  ( { y }  X.  ~P y ) )
65cbviunv 4559 . . . . . . . 8  |-  U_ w  e.  z  ( {
w }  X.  ~P w )  =  U_ y  e.  z  ( { y }  X.  ~P y )
7 iuneq1 4534 . . . . . . . 8  |-  ( z  =  x  ->  U_ y  e.  z  ( {
y }  X.  ~P y )  =  U_ y  e.  x  ( { y }  X.  ~P y ) )
86, 7syl5eq 2668 . . . . . . 7  |-  ( z  =  x  ->  U_ w  e.  z  ( {
w }  X.  ~P w )  =  U_ y  e.  x  ( { y }  X.  ~P y ) )
98fveq2d 6195 . . . . . 6  |-  ( z  =  x  ->  ( card `  U_ w  e.  z  ( { w }  X.  ~P w ) )  =  ( card `  U_ y  e.  x  ( { y }  X.  ~P y ) ) )
109cbvmptv 4750 . . . . 5  |-  ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( { w }  X.  ~P w ) ) )  =  ( x  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ y  e.  x  ( { y }  X.  ~P y ) ) )
1110ackbij1 9060 . . . 4  |-  ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( { w }  X.  ~P w ) ) ) : ( ~P
om  i^i  Fin ) -1-1-onto-> om
12 f1ocnv 6149 . . . . . 6  |-  ( (
#  |`  om ) : om -1-1-onto-> NN0  ->  `' ( #  |`  om ) : NN0 -1-1-onto-> om )
132, 12ax-mp 5 . . . . 5  |-  `' (
#  |`  om ) : NN0
-1-1-onto-> om
14 f1opwfi 8270 . . . . 5  |-  ( `' ( #  |`  om ) : NN0
-1-1-onto-> om  ->  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) : ( ~P NN0  i^i  Fin ) -1-1-onto-> ( ~P om  i^i  Fin ) )
1513, 14ax-mp 5 . . . 4  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  |->  ( `' ( #  |`  om ) " x ) ) : ( ~P NN0  i^i 
Fin ) -1-1-onto-> ( ~P om  i^i  Fin )
16 f1oco 6159 . . . 4  |-  ( ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) ) : ( ~P om  i^i  Fin ) -1-1-onto-> om  /\  ( x  e.  ( ~P NN0  i^i 
Fin )  |->  ( `' ( #  |`  om ) " x ) ) : ( ~P NN0  i^i 
Fin ) -1-1-onto-> ( ~P om  i^i  Fin ) )  ->  (
( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) : ( ~P NN0  i^i 
Fin ) -1-1-onto-> om )
1711, 15, 16mp2an 708 . . 3  |-  ( ( z  e.  ( ~P
om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) : ( ~P NN0  i^i 
Fin ) -1-1-onto-> om
18 f1oco 6159 . . 3  |-  ( ( ( #  |`  om ) : om -1-1-onto-> NN0  /\  ( ( z  e.  ( ~P
om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) : ( ~P NN0  i^i 
Fin ) -1-1-onto-> om )  ->  (
( #  |`  om )  o.  ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) ) : ( ~P
NN0  i^i  Fin ) -1-1-onto-> NN0 )
192, 17, 18mp2an 708 . 2  |-  ( (
#  |`  om )  o.  ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) ) : ( ~P
NN0  i^i  Fin ) -1-1-onto-> NN0
20 inss2 3834 . . . . . . . . . 10  |-  ( ~P
om  i^i  Fin )  C_ 
Fin
21 f1of 6137 . . . . . . . . . . . . 13  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  |->  ( `' ( #  |` 
om ) " x
) ) : ( ~P NN0  i^i  Fin )
-1-1-onto-> ( ~P om  i^i  Fin )  ->  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) : ( ~P NN0  i^i  Fin ) --> ( ~P om  i^i  Fin ) )
2215, 21ax-mp 5 . . . . . . . . . . . 12  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  |->  ( `' ( #  |`  om ) " x ) ) : ( ~P NN0  i^i 
Fin ) --> ( ~P
om  i^i  Fin )
23 eqid 2622 . . . . . . . . . . . . 13  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  |->  ( `' ( #  |`  om ) " x ) )  =  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) )
2423fmpt 6381 . . . . . . . . . . . 12  |-  ( A. x  e.  ( ~P NN0  i^i  Fin ) ( `' ( #  |`  om ) " x )  e.  ( ~P om  i^i  Fin )  <->  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) : ( ~P NN0  i^i  Fin ) --> ( ~P om  i^i  Fin ) )
2522, 24mpbir 221 . . . . . . . . . . 11  |-  A. x  e.  ( ~P NN0  i^i  Fin ) ( `' (
#  |`  om ) "
x )  e.  ( ~P om  i^i  Fin )
2625rspec 2931 . . . . . . . . . 10  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  ( `' ( #  |`  om ) " x )  e.  ( ~P om  i^i  Fin ) )
2720, 26sseldi 3601 . . . . . . . . 9  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  ( `' ( #  |`  om ) " x )  e. 
Fin )
28 snfi 8038 . . . . . . . . . . 11  |-  { w }  e.  Fin
29 cnvimass 5485 . . . . . . . . . . . . . . 15  |-  ( `' ( #  |`  om ) " x )  C_  dom  ( #  |`  om )
30 dmhashres 13129 . . . . . . . . . . . . . . 15  |-  dom  ( #  |`  om )  =  om
3129, 30sseqtri 3637 . . . . . . . . . . . . . 14  |-  ( `' ( #  |`  om ) " x )  C_  om
32 onfin2 8152 . . . . . . . . . . . . . . 15  |-  om  =  ( On  i^i  Fin )
33 inss2 3834 . . . . . . . . . . . . . . 15  |-  ( On 
i^i  Fin )  C_  Fin
3432, 33eqsstri 3635 . . . . . . . . . . . . . 14  |-  om  C_  Fin
3531, 34sstri 3612 . . . . . . . . . . . . 13  |-  ( `' ( #  |`  om ) " x )  C_  Fin
36 simpr 477 . . . . . . . . . . . . 13  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  w  e.  ( `' ( #  |`  om ) " x ) )  ->  w  e.  ( `' ( #  |`  om ) " x ) )
3735, 36sseldi 3601 . . . . . . . . . . . 12  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  w  e.  ( `' ( #  |`  om ) " x ) )  ->  w  e.  Fin )
38 pwfi 8261 . . . . . . . . . . . 12  |-  ( w  e.  Fin  <->  ~P w  e.  Fin )
3937, 38sylib 208 . . . . . . . . . . 11  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  w  e.  ( `' ( #  |`  om ) " x ) )  ->  ~P w  e. 
Fin )
40 xpfi 8231 . . . . . . . . . . 11  |-  ( ( { w }  e.  Fin  /\  ~P w  e. 
Fin )  ->  ( { w }  X.  ~P w )  e.  Fin )
4128, 39, 40sylancr 695 . . . . . . . . . 10  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  w  e.  ( `' ( #  |`  om ) " x ) )  ->  ( { w }  X.  ~P w )  e.  Fin )
4241ralrimiva 2966 . . . . . . . . 9  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  A. w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w )  e.  Fin )
43 iunfi 8254 . . . . . . . . 9  |-  ( ( ( `' ( #  |` 
om ) " x
)  e.  Fin  /\  A. w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w )  e.  Fin )  ->  U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w )  e.  Fin )
4427, 42, 43syl2anc 693 . . . . . . . 8  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w )  e.  Fin )
45 ficardom 8787 . . . . . . . 8  |-  ( U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w )  e.  Fin  ->  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) )  e.  om )
4644, 45syl 17 . . . . . . 7  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) )  e.  om )
47 fvres 6207 . . . . . . 7  |-  ( (
card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) )  e.  om  ->  ( ( #  |`  om ) `  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) )  =  (
# `  ( card ` 
U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w ) ) ) )
4846, 47syl 17 . . . . . 6  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  (
( #  |`  om ) `  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) )  =  (
# `  ( card ` 
U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w ) ) ) )
49 hashcard 13146 . . . . . . 7  |-  ( U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w )  e.  Fin  ->  ( # `  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) )  =  (
# `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) )
5044, 49syl 17 . . . . . 6  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  ( # `
 ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) )  =  (
# `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) )
51 xp1st 7198 . . . . . . . . . . . 12  |-  ( z  e.  ( { w }  X.  ~P w )  ->  ( 1st `  z
)  e.  { w } )
52 elsni 4194 . . . . . . . . . . . 12  |-  ( ( 1st `  z )  e.  { w }  ->  ( 1st `  z
)  =  w )
5351, 52syl 17 . . . . . . . . . . 11  |-  ( z  e.  ( { w }  X.  ~P w )  ->  ( 1st `  z
)  =  w )
5453rgen 2922 . . . . . . . . . 10  |-  A. z  e.  ( { w }  X.  ~P w ) ( 1st `  z )  =  w
5554rgenw 2924 . . . . . . . . 9  |-  A. w  e.  ( `' ( #  |` 
om ) " x
) A. z  e.  ( { w }  X.  ~P w ) ( 1st `  z )  =  w
56 invdisj 4638 . . . . . . . . 9  |-  ( A. w  e.  ( `' ( #  |`  om ) " x ) A. z  e.  ( {
w }  X.  ~P w ) ( 1st `  z )  =  w  -> Disj  w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w ) )
5755, 56mp1i 13 . . . . . . . 8  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  -> Disj  w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) )
5827, 41, 57hashiun 14554 . . . . . . 7  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  ( # `
 U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w ) )  = 
sum_ w  e.  ( `' ( #  |`  om ) " x ) (
# `  ( {
w }  X.  ~P w ) ) )
59 sneq 4187 . . . . . . . . . 10  |-  ( w  =  ( `' (
#  |`  om ) `  y )  ->  { w }  =  { ( `' ( #  |`  om ) `  y ) } )
60 pweq 4161 . . . . . . . . . 10  |-  ( w  =  ( `' (
#  |`  om ) `  y )  ->  ~P w  =  ~P ( `' ( #  |`  om ) `  y ) )
6159, 60xpeq12d 5140 . . . . . . . . 9  |-  ( w  =  ( `' (
#  |`  om ) `  y )  ->  ( { w }  X.  ~P w )  =  ( { ( `' (
#  |`  om ) `  y ) }  X.  ~P ( `' ( #  |` 
om ) `  y
) ) )
6261fveq2d 6195 . . . . . . . 8  |-  ( w  =  ( `' (
#  |`  om ) `  y )  ->  ( # `
 ( { w }  X.  ~P w ) )  =  ( # `  ( { ( `' ( #  |`  om ) `  y ) }  X.  ~P ( `' ( #  |` 
om ) `  y
) ) ) )
63 inss2 3834 . . . . . . . . 9  |-  ( ~P
NN0  i^i  Fin )  C_ 
Fin
6463sseli 3599 . . . . . . . 8  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  x  e.  Fin )
65 f1of1 6136 . . . . . . . . . 10  |-  ( `' ( #  |`  om ) : NN0
-1-1-onto-> om  ->  `' ( #  |` 
om ) : NN0 -1-1-> om )
6613, 65ax-mp 5 . . . . . . . . 9  |-  `' (
#  |`  om ) : NN0 -1-1-> om
67 inss1 3833 . . . . . . . . . . 11  |-  ( ~P
NN0  i^i  Fin )  C_ 
~P NN0
6867sseli 3599 . . . . . . . . . 10  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  x  e.  ~P NN0 )
6968elpwid 4170 . . . . . . . . 9  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  x  C_ 
NN0 )
70 f1ores 6151 . . . . . . . . 9  |-  ( ( `' ( #  |`  om ) : NN0 -1-1-> om  /\  x  C_ 
NN0 )  ->  ( `' ( #  |`  om )  |`  x ) : x -1-1-onto-> ( `' ( #  |`  om ) " x ) )
7166, 69, 70sylancr 695 . . . . . . . 8  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  ( `' ( #  |`  om )  |`  x ) : x -1-1-onto-> ( `' ( #  |`  om ) " x ) )
72 fvres 6207 . . . . . . . . 9  |-  ( y  e.  x  ->  (
( `' ( #  |` 
om )  |`  x
) `  y )  =  ( `' (
#  |`  om ) `  y ) )
7372adantl 482 . . . . . . . 8  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( ( `' ( #  |`  om )  |`  x ) `  y
)  =  ( `' ( #  |`  om ) `  y ) )
74 hashcl 13147 . . . . . . . . 9  |-  ( ( { w }  X.  ~P w )  e.  Fin  ->  ( # `  ( { w }  X.  ~P w ) )  e. 
NN0 )
75 nn0cn 11302 . . . . . . . . 9  |-  ( (
# `  ( {
w }  X.  ~P w ) )  e. 
NN0  ->  ( # `  ( { w }  X.  ~P w ) )  e.  CC )
7641, 74, 753syl 18 . . . . . . . 8  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  w  e.  ( `' ( #  |`  om ) " x ) )  ->  ( # `  ( { w }  X.  ~P w ) )  e.  CC )
7762, 64, 71, 73, 76fsumf1o 14454 . . . . . . 7  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  sum_ w  e.  ( `' ( #  |` 
om ) " x
) ( # `  ( { w }  X.  ~P w ) )  = 
sum_ y  e.  x  ( # `  ( { ( `' ( #  |` 
om ) `  y
) }  X.  ~P ( `' ( #  |`  om ) `  y ) ) ) )
78 snfi 8038 . . . . . . . . . 10  |-  { ( `' ( #  |`  om ) `  y ) }  e.  Fin
7969sselda 3603 . . . . . . . . . . . . 13  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  y  e.  NN0 )
80 f1of 6137 . . . . . . . . . . . . . . 15  |-  ( `' ( #  |`  om ) : NN0
-1-1-onto-> om  ->  `' ( #  |` 
om ) : NN0 --> om )
8113, 80ax-mp 5 . . . . . . . . . . . . . 14  |-  `' (
#  |`  om ) : NN0 --> om
8281ffvelrni 6358 . . . . . . . . . . . . 13  |-  ( y  e.  NN0  ->  ( `' ( #  |`  om ) `  y )  e.  om )
8379, 82syl 17 . . . . . . . . . . . 12  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( `' ( #  |`  om ) `  y )  e.  om )
8434, 83sseldi 3601 . . . . . . . . . . 11  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( `' ( #  |`  om ) `  y )  e.  Fin )
85 pwfi 8261 . . . . . . . . . . 11  |-  ( ( `' ( #  |`  om ) `  y )  e.  Fin  <->  ~P ( `' ( #  |`  om ) `  y )  e.  Fin )
8684, 85sylib 208 . . . . . . . . . 10  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ~P ( `' ( #  |`  om ) `  y )  e.  Fin )
87 hashxp 13221 . . . . . . . . . 10  |-  ( ( { ( `' (
#  |`  om ) `  y ) }  e.  Fin  /\  ~P ( `' ( #  |`  om ) `  y )  e.  Fin )  ->  ( # `  ( { ( `' (
#  |`  om ) `  y ) }  X.  ~P ( `' ( #  |` 
om ) `  y
) ) )  =  ( ( # `  {
( `' ( #  |` 
om ) `  y
) } )  x.  ( # `  ~P ( `' ( #  |`  om ) `  y ) ) ) )
8878, 86, 87sylancr 695 . . . . . . . . 9  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( # `  ( { ( `' (
#  |`  om ) `  y ) }  X.  ~P ( `' ( #  |` 
om ) `  y
) ) )  =  ( ( # `  {
( `' ( #  |` 
om ) `  y
) } )  x.  ( # `  ~P ( `' ( #  |`  om ) `  y ) ) ) )
89 hashsng 13159 . . . . . . . . . . 11  |-  ( ( `' ( #  |`  om ) `  y )  e.  om  ->  ( # `  {
( `' ( #  |` 
om ) `  y
) } )  =  1 )
9083, 89syl 17 . . . . . . . . . 10  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( # `  {
( `' ( #  |` 
om ) `  y
) } )  =  1 )
91 hashpw 13223 . . . . . . . . . . . 12  |-  ( ( `' ( #  |`  om ) `  y )  e.  Fin  ->  ( # `  ~P ( `' ( #  |`  om ) `  y ) )  =  ( 2 ^ ( # `
 ( `' (
#  |`  om ) `  y ) ) ) )
9284, 91syl 17 . . . . . . . . . . 11  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( # `  ~P ( `' ( #  |`  om ) `  y ) )  =  ( 2 ^ ( # `
 ( `' (
#  |`  om ) `  y ) ) ) )
93 fvres 6207 . . . . . . . . . . . . . 14  |-  ( ( `' ( #  |`  om ) `  y )  e.  om  ->  ( ( #  |`  om ) `  ( `' ( #  |` 
om ) `  y
) )  =  (
# `  ( `' ( #  |`  om ) `  y ) ) )
9483, 93syl 17 . . . . . . . . . . . . 13  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( ( #  |`  om ) `  ( `' ( #  |`  om ) `  y ) )  =  ( # `  ( `' ( #  |`  om ) `  y ) ) )
95 f1ocnvfv2 6533 . . . . . . . . . . . . . 14  |-  ( ( ( #  |`  om ) : om -1-1-onto-> NN0  /\  y  e. 
NN0 )  ->  (
( #  |`  om ) `  ( `' ( #  |` 
om ) `  y
) )  =  y )
962, 79, 95sylancr 695 . . . . . . . . . . . . 13  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( ( #  |`  om ) `  ( `' ( #  |`  om ) `  y ) )  =  y )
9794, 96eqtr3d 2658 . . . . . . . . . . . 12  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( # `  ( `' ( #  |`  om ) `  y ) )  =  y )
9897oveq2d 6666 . . . . . . . . . . 11  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( 2 ^ ( # `  ( `' ( #  |`  om ) `  y ) ) )  =  ( 2 ^ y ) )
9992, 98eqtrd 2656 . . . . . . . . . 10  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( # `  ~P ( `' ( #  |`  om ) `  y ) )  =  ( 2 ^ y
) )
10090, 99oveq12d 6668 . . . . . . . . 9  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( ( # `
 { ( `' ( #  |`  om ) `  y ) } )  x.  ( # `  ~P ( `' ( #  |`  om ) `  y ) ) )  =  ( 1  x.  ( 2 ^ y
) ) )
101 2cn 11091 . . . . . . . . . . 11  |-  2  e.  CC
102 expcl 12878 . . . . . . . . . . 11  |-  ( ( 2  e.  CC  /\  y  e.  NN0 )  -> 
( 2 ^ y
)  e.  CC )
103101, 79, 102sylancr 695 . . . . . . . . . 10  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( 2 ^ y )  e.  CC )
104103mulid2d 10058 . . . . . . . . 9  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( 1  x.  ( 2 ^ y ) )  =  ( 2 ^ y
) )
10588, 100, 1043eqtrd 2660 . . . . . . . 8  |-  ( ( x  e.  ( ~P
NN0  i^i  Fin )  /\  y  e.  x
)  ->  ( # `  ( { ( `' (
#  |`  om ) `  y ) }  X.  ~P ( `' ( #  |` 
om ) `  y
) ) )  =  ( 2 ^ y
) )
106105sumeq2dv 14433 . . . . . . 7  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  sum_ y  e.  x  ( # `  ( { ( `' (
#  |`  om ) `  y ) }  X.  ~P ( `' ( #  |` 
om ) `  y
) ) )  = 
sum_ y  e.  x  ( 2 ^ y
) )
10758, 77, 1063eqtrd 2660 . . . . . 6  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  ( # `
 U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w ) )  = 
sum_ y  e.  x  ( 2 ^ y
) )
10848, 50, 1073eqtrd 2660 . . . . 5  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  ->  (
( #  |`  om ) `  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) )  =  sum_ y  e.  x  (
2 ^ y ) )
109108mpteq2ia 4740 . . . 4  |-  ( x  e.  ( ~P NN0  i^i 
Fin )  |->  ( (
#  |`  om ) `  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) ) )  =  ( x  e.  ( ~P NN0  i^i  Fin )  |->  sum_ y  e.  x  ( 2 ^ y
) )
11046adantl 482 . . . . . 6  |-  ( ( T.  /\  x  e.  ( ~P NN0  i^i  Fin ) )  ->  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) )  e.  om )
11126adantl 482 . . . . . . 7  |-  ( ( T.  /\  x  e.  ( ~P NN0  i^i  Fin ) )  ->  ( `' ( #  |`  om ) " x )  e.  ( ~P om  i^i  Fin ) )
112 eqidd 2623 . . . . . . 7  |-  ( T. 
->  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) )  =  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) )
113 eqidd 2623 . . . . . . 7  |-  ( T. 
->  ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  =  ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) ) )
114 iuneq1 4534 . . . . . . . 8  |-  ( z  =  ( `' (
#  |`  om ) "
x )  ->  U_ w  e.  z  ( {
w }  X.  ~P w )  =  U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w ) )
115114fveq2d 6195 . . . . . . 7  |-  ( z  =  ( `' (
#  |`  om ) "
x )  ->  ( card `  U_ w  e.  z  ( { w }  X.  ~P w ) )  =  ( card `  U_ w  e.  ( `' ( #  |`  om ) " x ) ( { w }  X.  ~P w ) ) )
116111, 112, 113, 115fmptco 6396 . . . . . 6  |-  ( T. 
->  ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) )  =  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) ) )
117 f1of 6137 . . . . . . . 8  |-  ( (
#  |`  om ) : om -1-1-onto-> NN0  ->  ( #  |`  om ) : om --> NN0 )
1182, 117mp1i 13 . . . . . . 7  |-  ( T. 
->  ( #  |`  om ) : om --> NN0 )
119118feqmptd 6249 . . . . . 6  |-  ( T. 
->  ( #  |`  om )  =  ( y  e. 
om  |->  ( ( #  |` 
om ) `  y
) ) )
120 fveq2 6191 . . . . . 6  |-  ( y  =  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) )  ->  ( ( #  |`  om ) `  y
)  =  ( (
#  |`  om ) `  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) ) )
121110, 116, 119, 120fmptco 6396 . . . . 5  |-  ( T. 
->  ( ( #  |`  om )  o.  ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) )  =  ( x  e.  ( ~P NN0  i^i 
Fin )  |->  ( (
#  |`  om ) `  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) ) ) )
122121trud 1493 . . . 4  |-  ( (
#  |`  om )  o.  ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) )  =  ( x  e.  ( ~P NN0  i^i 
Fin )  |->  ( (
#  |`  om ) `  ( card `  U_ w  e.  ( `' ( #  |` 
om ) " x
) ( { w }  X.  ~P w ) ) ) )
123 ackbijnn.1 . . . 4  |-  F  =  ( x  e.  ( ~P NN0  i^i  Fin )  |->  sum_ y  e.  x  ( 2 ^ y
) )
124109, 122, 1233eqtr4i 2654 . . 3  |-  ( (
#  |`  om )  o.  ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) )  =  F
125 f1oeq1 6127 . . 3  |-  ( ( ( #  |`  om )  o.  ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) )  =  F  -> 
( ( ( #  |` 
om )  o.  (
( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) ) : ( ~P
NN0  i^i  Fin ) -1-1-onto-> NN0  <->  F : ( ~P NN0  i^i 
Fin ) -1-1-onto-> NN0 ) )
126124, 125ax-mp 5 . 2  |-  ( ( ( #  |`  om )  o.  ( ( z  e.  ( ~P om  i^i  Fin )  |->  ( card `  U_ w  e.  z  ( {
w }  X.  ~P w ) ) )  o.  ( x  e.  ( ~P NN0  i^i  Fin )  |->  ( `' (
#  |`  om ) "
x ) ) ) ) : ( ~P
NN0  i^i  Fin ) -1-1-onto-> NN0  <->  F : ( ~P NN0  i^i 
Fin ) -1-1-onto-> NN0 )
12719, 126mpbi 220 1  |-  F :
( ~P NN0  i^i  Fin ) -1-1-onto-> NN0
Colors of variables: wff setvar class
Syntax hints:    <-> wb 196    /\ wa 384    = wceq 1483   T. wtru 1484    e. wcel 1990   A.wral 2912    i^i cin 3573    C_ wss 3574   ~Pcpw 4158   {csn 4177   U_ciun 4520  Disj wdisj 4620    |-> cmpt 4729    X. cxp 5112   `'ccnv 5113   dom cdm 5114    |` cres 5116   "cima 5117    o. ccom 5118   Oncon0 5723   -->wf 5884   -1-1->wf1 5885   -1-1-onto->wf1o 5887   ` cfv 5888  (class class class)co 6650   omcom 7065   1stc1st 7166   Fincfn 7955   cardccrd 8761   CCcc 9934   1c1 9937    x. cmul 9941   2c2 11070   NN0cn0 11292   ^cexp 12860   #chash 13117   sum_csu 14416
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-rep 4771  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949  ax-inf2 8538  ax-cnex 9992  ax-resscn 9993  ax-1cn 9994  ax-icn 9995  ax-addcl 9996  ax-addrcl 9997  ax-mulcl 9998  ax-mulrcl 9999  ax-mulcom 10000  ax-addass 10001  ax-mulass 10002  ax-distr 10003  ax-i2m1 10004  ax-1ne0 10005  ax-1rid 10006  ax-rnegex 10007  ax-rrecex 10008  ax-cnre 10009  ax-pre-lttri 10010  ax-pre-lttrn 10011  ax-pre-ltadd 10012  ax-pre-mulgt0 10013  ax-pre-sup 10014
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-tru 1486  df-fal 1489  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-nel 2898  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-pss 3590  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-tp 4182  df-op 4184  df-uni 4437  df-int 4476  df-iun 4522  df-disj 4621  df-br 4654  df-opab 4713  df-mpt 4730  df-tr 4753  df-id 5024  df-eprel 5029  df-po 5035  df-so 5036  df-fr 5073  df-se 5074  df-we 5075  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-pred 5680  df-ord 5726  df-on 5727  df-lim 5728  df-suc 5729  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-isom 5897  df-riota 6611  df-ov 6653  df-oprab 6654  df-mpt2 6655  df-om 7066  df-1st 7168  df-2nd 7169  df-wrecs 7407  df-recs 7468  df-rdg 7506  df-1o 7560  df-2o 7561  df-oadd 7564  df-er 7742  df-map 7859  df-pm 7860  df-en 7956  df-dom 7957  df-sdom 7958  df-fin 7959  df-sup 8348  df-oi 8415  df-card 8765  df-cda 8990  df-pnf 10076  df-mnf 10077  df-xr 10078  df-ltxr 10079  df-le 10080  df-sub 10268  df-neg 10269  df-div 10685  df-nn 11021  df-2 11079  df-3 11080  df-n0 11293  df-xnn0 11364  df-z 11378  df-uz 11688  df-rp 11833  df-fz 12327  df-fzo 12466  df-seq 12802  df-exp 12861  df-hash 13118  df-cj 13839  df-re 13840  df-im 13841  df-sqrt 13975  df-abs 13976  df-clim 14219  df-sum 14417
This theorem is referenced by:  bitsinv2  15165
  Copyright terms: Public domain W3C validator