Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  eulerpart Structured version   Visualization version   Unicode version

Theorem eulerpart 30444
Description: Euler's theorem on partitions, also known as a special case of Glaisher's theorem. Let  P be the set of all partitions of  N, represented as multisets of positive integers, which is to say functions from  NN to  NN0 where the value of the function represents the number of repetitions of an individual element, and the sum of all the elements with repetition equals  N. Then the set 
O of all partitions that only consist of odd numbers and the set  D of all partitions which have no repeated elements have the same cardinality. This is Metamath 100 proof #45. (Contributed by Thierry Arnoux, 14-Aug-2018.) (Revised by Thierry Arnoux, 1-Sep-2019.)
Hypotheses
Ref Expression
eulerpart.p  |-  P  =  { f  e.  ( NN0  ^m  NN )  |  ( ( `' f " NN )  e.  Fin  /\  sum_ k  e.  NN  (
( f `  k
)  x.  k )  =  N ) }
eulerpart.o  |-  O  =  { g  e.  P  |  A. n  e.  ( `' g " NN )  -.  2  ||  n }
eulerpart.d  |-  D  =  { g  e.  P  |  A. n  e.  NN  ( g `  n
)  <_  1 }
Assertion
Ref Expression
eulerpart  |-  ( # `  O )  =  (
# `  D )
Distinct variable groups:    f, g,
k, n    D, g    f, N, g, k, n   
g, O, n    P, g, k, n
Allowed substitution hints:    D( f, k, n)    P( f)    O( f, k)

Proof of Theorem eulerpart
Dummy variables  a 
b  h  m  o  q  r  s  t  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eulerpart.p . . 3  |-  P  =  { f  e.  ( NN0  ^m  NN )  |  ( ( `' f " NN )  e.  Fin  /\  sum_ k  e.  NN  (
( f `  k
)  x.  k )  =  N ) }
2 eulerpart.o . . 3  |-  O  =  { g  e.  P  |  A. n  e.  ( `' g " NN )  -.  2  ||  n }
3 eulerpart.d . . 3  |-  D  =  { g  e.  P  |  A. n  e.  NN  ( g `  n
)  <_  1 }
4 eqid 2622 . . 3  |-  { z  e.  NN  |  -.  2  ||  z }  =  { z  e.  NN  |  -.  2  ||  z }
5 oveq2 6658 . . . 4  |-  ( a  =  x  ->  (
( 2 ^ b
)  x.  a )  =  ( ( 2 ^ b )  x.  x ) )
6 oveq2 6658 . . . . 5  |-  ( b  =  y  ->  (
2 ^ b )  =  ( 2 ^ y ) )
76oveq1d 6665 . . . 4  |-  ( b  =  y  ->  (
( 2 ^ b
)  x.  x )  =  ( ( 2 ^ y )  x.  x ) )
85, 7cbvmpt2v 6735 . . 3  |-  ( a  e.  { z  e.  NN  |  -.  2  ||  z } ,  b  e.  NN0  |->  ( ( 2 ^ b )  x.  a ) )  =  ( x  e. 
{ z  e.  NN  |  -.  2  ||  z } ,  y  e.  NN0  |->  ( ( 2 ^ y )  x.  x
) )
9 oveq1 6657 . . . . . 6  |-  ( r  =  m  ->  (
r supp  (/) )  =  ( m supp  (/) ) )
109eleq1d 2686 . . . . 5  |-  ( r  =  m  ->  (
( r supp  (/) )  e. 
Fin 
<->  ( m supp  (/) )  e. 
Fin ) )
1110cbvrabv 3199 . . . 4  |-  { r  e.  ( ( ~P
NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin }  =  { m  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( m supp  (/) )  e.  Fin }
1211eqcomi 2631 . . 3  |-  { m  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( m supp  (/) )  e.  Fin }  =  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin }
13 fveq1 6190 . . . . . . . 8  |-  ( t  =  r  ->  (
t `  a )  =  ( r `  a ) )
1413eleq2d 2687 . . . . . . 7  |-  ( t  =  r  ->  (
b  e.  ( t `
 a )  <->  b  e.  ( r `  a
) ) )
1514anbi2d 740 . . . . . 6  |-  ( t  =  r  ->  (
( a  e.  {
z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) )  <->  ( a  e. 
{ z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) ) ) )
1615opabbidv 4716 . . . . 5  |-  ( t  =  r  ->  { <. a ,  b >.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) }  =  { <. a ,  b >.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) ) } )
1716cbvmptv 4750 . . . 4  |-  ( t  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } )  =  ( r  e.  {
s  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e. 
Fin }  |->  { <. a ,  b >.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) ) } )
18 oveq1 6657 . . . . . . . 8  |-  ( m  =  s  ->  (
m supp  (/) )  =  ( s supp  (/) ) )
1918eleq1d 2686 . . . . . . 7  |-  ( m  =  s  ->  (
( m supp  (/) )  e. 
Fin 
<->  ( s supp  (/) )  e. 
Fin ) )
2019cbvrabv 3199 . . . . . 6  |-  { m  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( m supp  (/) )  e.  Fin }  =  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin }
2120eqcomi 2631 . . . . 5  |-  { s  e.  ( ( ~P
NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin }  =  { m  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( m supp  (/) )  e.  Fin }
22 simpl 473 . . . . . . . 8  |-  ( ( a  =  x  /\  b  =  y )  ->  a  =  x )
2322eleq1d 2686 . . . . . . 7  |-  ( ( a  =  x  /\  b  =  y )  ->  ( a  e.  {
z  e.  NN  |  -.  2  ||  z }  <-> 
x  e.  { z  e.  NN  |  -.  2  ||  z } ) )
24 simpr 477 . . . . . . . 8  |-  ( ( a  =  x  /\  b  =  y )  ->  b  =  y )
2522fveq2d 6195 . . . . . . . 8  |-  ( ( a  =  x  /\  b  =  y )  ->  ( r `  a
)  =  ( r `
 x ) )
2624, 25eleq12d 2695 . . . . . . 7  |-  ( ( a  =  x  /\  b  =  y )  ->  ( b  e.  ( r `  a )  <-> 
y  e.  ( r `
 x ) ) )
2723, 26anbi12d 747 . . . . . 6  |-  ( ( a  =  x  /\  b  =  y )  ->  ( ( a  e. 
{ z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) )  <->  ( x  e. 
{ z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) ) )
2827cbvopabv 4722 . . . . 5  |-  { <. a ,  b >.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) ) }  =  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) }
2921, 28mpteq12i 4742 . . . 4  |-  ( r  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) ) } )  =  ( r  e.  {
m  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( m supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } )
3017, 29eqtri 2644 . . 3  |-  ( t  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } )  =  ( r  e.  {
m  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( m supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } )
31 cnveq 5296 . . . . . 6  |-  ( h  =  f  ->  `' h  =  `' f
)
3231imaeq1d 5465 . . . . 5  |-  ( h  =  f  ->  ( `' h " NN )  =  ( `' f
" NN ) )
3332eleq1d 2686 . . . 4  |-  ( h  =  f  ->  (
( `' h " NN )  e.  Fin  <->  ( `' f " NN )  e.  Fin )
)
3433cbvabv 2747 . . 3  |-  { h  |  ( `' h " NN )  e.  Fin }  =  { f  |  ( `' f " NN )  e.  Fin }
3532sseq1d 3632 . . . 4  |-  ( h  =  f  ->  (
( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z }  <->  ( `' f " NN )  C_  { z  e.  NN  |  -.  2  ||  z } ) )
3635cbvrabv 3199 . . 3  |-  { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  =  { f  e.  ( NN0  ^m  NN )  |  ( `' f " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }
37 reseq1 5390 . . . . . . . . 9  |-  ( o  =  q  ->  (
o  |`  { z  e.  NN  |  -.  2  ||  z } )  =  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) )
3837coeq2d 5284 . . . . . . . 8  |-  ( o  =  q  ->  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) )  =  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) )
3938fveq2d 6195 . . . . . . 7  |-  ( o  =  q  ->  (
( r  e.  {
r  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) )  =  ( ( r  e.  {
r  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) )
4039imaeq2d 5466 . . . . . 6  |-  ( o  =  q  ->  (
( x  e.  {
z  e.  NN  |  -.  2  ||  z } ,  y  e.  NN0  |->  ( ( 2 ^ y )  x.  x
) ) " (
( r  e.  {
r  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) )  =  ( ( x  e. 
{ z  e.  NN  |  -.  2  ||  z } ,  y  e.  NN0  |->  ( ( 2 ^ y )  x.  x
) ) " (
( r  e.  {
r  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) )
4140fveq2d 6195 . . . . 5  |-  ( o  =  q  ->  (
(𝟭 `  NN ) `  ( ( x  e. 
{ z  e.  NN  |  -.  2  ||  z } ,  y  e.  NN0  |->  ( ( 2 ^ y )  x.  x
) ) " (
( r  e.  {
r  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) )  =  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )
4241cbvmptv 4750 . . . 4  |-  ( o  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } )  |->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  =  ( q  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } ) 
|->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )
438eqcomi 2631 . . . . . . . 8  |-  ( x  e.  { z  e.  NN  |  -.  2  ||  z } ,  y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )  =  ( a  e. 
{ z  e.  NN  |  -.  2  ||  z } ,  b  e.  NN0  |->  ( ( 2 ^ b )  x.  a
) )
4443imaeq1i 5463 . . . . . . 7  |-  ( ( x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) )  =  ( ( a  e.  { z  e.  NN  |  -.  2  ||  z } , 
b  e.  NN0  |->  ( ( 2 ^ b )  x.  a ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) )
45 eqid 2622 . . . . . . . . . . 11  |-  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) }  =  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) }
4611, 45mpteq12i 4742 . . . . . . . . . 10  |-  ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } )  =  ( r  e.  {
m  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( m supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } )
47 fveq1 6190 . . . . . . . . . . . . . 14  |-  ( r  =  t  ->  (
r `  a )  =  ( t `  a ) )
4847eleq2d 2687 . . . . . . . . . . . . 13  |-  ( r  =  t  ->  (
b  e.  ( r `
 a )  <->  b  e.  ( t `  a
) ) )
4948anbi2d 740 . . . . . . . . . . . 12  |-  ( r  =  t  ->  (
( a  e.  {
z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) )  <->  ( a  e. 
{ z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) ) )
5049opabbidv 4716 . . . . . . . . . . 11  |-  ( r  =  t  ->  { <. a ,  b >.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) ) }  =  { <. a ,  b >.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } )
5150cbvmptv 4750 . . . . . . . . . 10  |-  ( r  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( r `  a ) ) } )  =  ( t  e.  {
s  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e. 
Fin }  |->  { <. a ,  b >.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } )
5246, 29, 513eqtr2i 2650 . . . . . . . . 9  |-  ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } )  =  ( t  e.  {
s  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e. 
Fin }  |->  { <. a ,  b >.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } )
5352fveq1i 6192 . . . . . . . 8  |-  ( ( r  e.  { r  e.  ( ( ~P
NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) )  =  ( ( t  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) )
5453imaeq2i 5464 . . . . . . 7  |-  ( ( a  e.  { z  e.  NN  |  -.  2  ||  z } , 
b  e.  NN0  |->  ( ( 2 ^ b )  x.  a ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) )  =  ( ( a  e.  { z  e.  NN  |  -.  2  ||  z } , 
b  e.  NN0  |->  ( ( 2 ^ b )  x.  a ) )
" ( ( t  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) )
5544, 54eqtri 2644 . . . . . 6  |-  ( ( x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) )  =  ( ( a  e.  { z  e.  NN  |  -.  2  ||  z } , 
b  e.  NN0  |->  ( ( 2 ^ b )  x.  a ) )
" ( ( t  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) )
5655fveq2i 6194 . . . . 5  |-  ( (𝟭 `  NN ) `  (
( x  e.  {
z  e.  NN  |  -.  2  ||  z } ,  y  e.  NN0  |->  ( ( 2 ^ y )  x.  x
) ) " (
( r  e.  {
r  e.  ( ( ~P NN0  i^i  Fin )  ^m  { z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e. 
Fin }  |->  { <. x ,  y >.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) )  =  ( (𝟭 `  NN ) `  ( (
a  e.  { z  e.  NN  |  -.  2  ||  z } , 
b  e.  NN0  |->  ( ( 2 ^ b )  x.  a ) )
" ( ( t  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) )
5756mpteq2i 4741 . . . 4  |-  ( q  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } )  |->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  =  ( q  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } ) 
|->  ( (𝟭 `  NN ) `  ( (
a  e.  { z  e.  NN  |  -.  2  ||  z } , 
b  e.  NN0  |->  ( ( 2 ^ b )  x.  a ) )
" ( ( t  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )
5842, 57eqtri 2644 . . 3  |-  ( o  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } )  |->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  =  ( q  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } ) 
|->  ( (𝟭 `  NN ) `  ( (
a  e.  { z  e.  NN  |  -.  2  ||  z } , 
b  e.  NN0  |->  ( ( 2 ^ b )  x.  a ) )
" ( ( t  e.  { s  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( s supp  (/) )  e.  Fin } 
|->  { <. a ,  b
>.  |  ( a  e.  { z  e.  NN  |  -.  2  ||  z }  /\  b  e.  ( t `  a ) ) } ) `  (bits  o.  ( q  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )
59 eqid 2622 . . 3  |-  ( f  e.  ( ( NN0 
^m  NN )  i^i 
{ h  |  ( `' h " NN )  e.  Fin } ) 
|->  sum_ k  e.  NN  ( ( f `  k )  x.  k
) )  =  ( f  e.  ( ( NN0  ^m  NN )  i^i  { h  |  ( `' h " NN )  e.  Fin } )  |->  sum_ k  e.  NN  ( ( f `  k )  x.  k
) )
601, 2, 3, 4, 8, 12, 30, 34, 36, 58, 59eulerpartlemn 30443 . 2  |-  ( ( o  e.  ( { h  e.  ( NN0 
^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } ) 
|->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  |`  O ) : O -1-1-onto-> D
61 ovex 6678 . . . . . . 7  |-  ( NN0 
^m  NN )  e. 
_V
6261rabex 4813 . . . . . 6  |-  { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  e.  _V
6362inex1 4799 . . . . 5  |-  ( { h  e.  ( NN0 
^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } )  e.  _V
6463mptex 6486 . . . 4  |-  ( o  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } )  |->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  e. 
_V
6564resex 5443 . . 3  |-  ( ( o  e.  ( { h  e.  ( NN0 
^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } ) 
|->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  |`  O )  e.  _V
66 f1oeq1 6127 . . 3  |-  ( g  =  ( ( o  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } )  |->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  |`  O )  ->  (
g : O -1-1-onto-> D  <->  ( (
o  e.  ( { h  e.  ( NN0 
^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } ) 
|->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  |`  O ) : O -1-1-onto-> D
) )
6765, 66spcev 3300 . 2  |-  ( ( ( o  e.  ( { h  e.  ( NN0  ^m  NN )  |  ( `' h " NN )  C_  { z  e.  NN  |  -.  2  ||  z } }  i^i  { h  |  ( `' h " NN )  e.  Fin } ) 
|->  ( (𝟭 `  NN ) `  ( (
x  e.  { z  e.  NN  |  -.  2  ||  z } , 
y  e.  NN0  |->  ( ( 2 ^ y )  x.  x ) )
" ( ( r  e.  { r  e.  ( ( ~P NN0  i^i 
Fin )  ^m  {
z  e.  NN  |  -.  2  ||  z } )  |  ( r supp  (/) )  e.  Fin } 
|->  { <. x ,  y
>.  |  ( x  e.  { z  e.  NN  |  -.  2  ||  z }  /\  y  e.  ( r `  x ) ) } ) `  (bits  o.  ( o  |`  { z  e.  NN  |  -.  2  ||  z } ) ) ) ) ) )  |`  O ) : O -1-1-onto-> D  ->  E. g  g : O -1-1-onto-> D )
68 bren 7964 . . 3  |-  ( O 
~~  D  <->  E. g 
g : O -1-1-onto-> D )
69 hasheni 13136 . . 3  |-  ( O 
~~  D  ->  ( # `
 O )  =  ( # `  D
) )
7068, 69sylbir 225 . 2  |-  ( E. g  g : O -1-1-onto-> D  ->  ( # `  O
)  =  ( # `  D ) )
7160, 67, 70mp2b 10 1  |-  ( # `  O )  =  (
# `  D )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    /\ wa 384    = wceq 1483   E.wex 1704    e. wcel 1990   {cab 2608   A.wral 2912   {crab 2916    i^i cin 3573    C_ wss 3574   (/)c0 3915   ~Pcpw 4158   class class class wbr 4653   {copab 4712    |-> cmpt 4729   `'ccnv 5113    |` cres 5116   "cima 5117    o. ccom 5118   -1-1-onto->wf1o 5887   ` cfv 5888  (class class class)co 6650    |-> cmpt2 6652   supp csupp 7295    ^m cmap 7857    ~~ cen 7952   Fincfn 7955   1c1 9937    x. cmul 9941    <_ cle 10075   NNcn 11020   2c2 11070   NN0cn0 11292   ^cexp 12860   #chash 13117   sum_csu 14416    || cdvds 14983  bitscbits 15141  𝟭cind 30072
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-ac2 9285  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-supp 7296  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-fsupp 8276  df-sup 8348  df-inf 8349  df-oi 8415  df-card 8765  df-acn 8768  df-ac 8939  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-fl 12593  df-mod 12669  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  df-dvds 14984  df-bits 15144  df-ind 30073
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator