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

Theorem eulerpartlemgh 28514
Description: Lemma for eulerpart 28518: The  F function is a bijection on the  U subsets. (Contributed by Thierry Arnoux, 15-Aug-2018.)
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 }
eulerpart.j  |-  J  =  { z  e.  NN  |  -.  2  ||  z }
eulerpart.f  |-  F  =  ( x  e.  J ,  y  e.  NN0  |->  ( ( 2 ^ y )  x.  x
) )
eulerpart.h  |-  H  =  { r  e.  ( ( ~P NN0  i^i  Fin )  ^m  J )  |  ( r supp  (/) )  e. 
Fin }
eulerpart.m  |-  M  =  ( r  e.  H  |->  { <. x ,  y
>.  |  ( x  e.  J  /\  y  e.  ( r `  x
) ) } )
eulerpart.r  |-  R  =  { f  |  ( `' f " NN )  e.  Fin }
eulerpart.t  |-  T  =  { f  e.  ( NN0  ^m  NN )  |  ( `' f
" NN )  C_  J }
eulerpart.g  |-  G  =  ( o  e.  ( T  i^i  R ) 
|->  ( (𝟭 `  NN ) `  ( F " ( M `  (bits  o.  ( o  |`  J ) ) ) ) ) )
eulerpartlemgh.1  |-  U  = 
U_ t  e.  ( ( `' A " NN )  i^i  J ) ( { t }  X.  (bits `  ( A `  t )
) )
Assertion
Ref Expression
eulerpartlemgh  |-  ( A  e.  ( T  i^i  R )  ->  ( F  |`  U ) : U -1-1-onto-> {
m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  m } )
Distinct variable groups:    z, t    f, g, k, n, t, A    f, J, n, t    f, N, k, n, t    n, O, t    P, g, k    R, f, k, n, t    T, n, t    x, t, y, z    f, m, x, g, k, n, t, A    n, F, t, x    y, f, n   
x, J, y    t, P
Allowed substitution hints:    A( y, z, o, r)    D( x, y, z, t, f, g, k, m, n, o, r)    P( x, y, z, f, m, n, o, r)    R( x, y, z, g, m, o, r)    T( x, y, z, f, g, k, m, o, r)    U( x, y, z, t, f, g, k, m, n, o, r)    F( y, z, f, g, k, m, o, r)    G( x, y, z, t, f, g, k, m, n, o, r)    H( x, y, z, t, f, g, k, m, n, o, r)    J( z, g, k, m, o, r)    M( x, y, z, t, f, g, k, m, n, o, r)    N( x, y, z, g, m, o, r)    O( x, y, z, f, g, k, m, o, r)

Proof of Theorem eulerpartlemgh
Dummy variable  p is distinct from all other variables.
StepHypRef Expression
1 eulerpart.j . . . . 5  |-  J  =  { z  e.  NN  |  -.  2  ||  z }
2 eulerpart.f . . . . 5  |-  F  =  ( x  e.  J ,  y  e.  NN0  |->  ( ( 2 ^ y )  x.  x
) )
31, 2oddpwdc 28490 . . . 4  |-  F :
( J  X.  NN0 )
-1-1-onto-> NN
4 f1of1 5821 . . . 4  |-  ( F : ( J  X.  NN0 ) -1-1-onto-> NN  ->  F :
( J  X.  NN0 ) -1-1-> NN )
53, 4ax-mp 5 . . 3  |-  F :
( J  X.  NN0 ) -1-1-> NN
6 eulerpartlemgh.1 . . . 4  |-  U  = 
U_ t  e.  ( ( `' A " NN )  i^i  J ) ( { t }  X.  (bits `  ( A `  t )
) )
7 iunss 4373 . . . . 5  |-  ( U_ t  e.  ( ( `' A " NN )  i^i  J ) ( { t }  X.  (bits `  ( A `  t ) ) ) 
C_  ( J  X.  NN0 )  <->  A. t  e.  ( ( `' A " NN )  i^i  J ) ( { t }  X.  (bits `  ( A `  t )
) )  C_  ( J  X.  NN0 ) )
8 inss2 3715 . . . . . . . 8  |-  ( ( `' A " NN )  i^i  J )  C_  J
98sseli 3495 . . . . . . 7  |-  ( t  e.  ( ( `' A " NN )  i^i  J )  -> 
t  e.  J )
109snssd 4177 . . . . . 6  |-  ( t  e.  ( ( `' A " NN )  i^i  J )  ->  { t }  C_  J )
11 bitsss 14088 . . . . . 6  |-  (bits `  ( A `  t ) )  C_  NN0
12 xpss12 5117 . . . . . 6  |-  ( ( { t }  C_  J  /\  (bits `  ( A `  t )
)  C_  NN0 )  -> 
( { t }  X.  (bits `  ( A `  t )
) )  C_  ( J  X.  NN0 ) )
1310, 11, 12sylancl 662 . . . . 5  |-  ( t  e.  ( ( `' A " NN )  i^i  J )  -> 
( { t }  X.  (bits `  ( A `  t )
) )  C_  ( J  X.  NN0 ) )
147, 13mprgbir 2821 . . . 4  |-  U_ t  e.  ( ( `' A " NN )  i^i  J
) ( { t }  X.  (bits `  ( A `  t ) ) )  C_  ( J  X.  NN0 )
156, 14eqsstri 3529 . . 3  |-  U  C_  ( J  X.  NN0 )
16 f1ores 5836 . . 3  |-  ( ( F : ( J  X.  NN0 ) -1-1-> NN  /\  U  C_  ( J  X.  NN0 ) )  -> 
( F  |`  U ) : U -1-1-onto-> ( F " U
) )
175, 15, 16mp2an 672 . 2  |-  ( F  |`  U ) : U -1-1-onto-> ( F " U )
18 simpr 461 . . . . . . . . . . 11  |-  ( ( ( ( A  e.  ( T  i^i  R
)  /\  t  e.  NN )  /\  n  e.  (bits `  ( A `  t ) ) )  /\  ( ( 2 ^ n )  x.  t )  =  p )  ->  ( (
2 ^ n )  x.  t )  =  p )
19 2nn 10714 . . . . . . . . . . . . . . 15  |-  2  e.  NN
2019a1i 11 . . . . . . . . . . . . . 14  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  n  e.  (bits `  ( A `  t
) ) )  -> 
2  e.  NN )
2111sseli 3495 . . . . . . . . . . . . . . 15  |-  ( n  e.  (bits `  ( A `  t )
)  ->  n  e.  NN0 )
2221adantl 466 . . . . . . . . . . . . . 14  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  n  e.  (bits `  ( A `  t
) ) )  ->  n  e.  NN0 )
2320, 22nnexpcld 12334 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  n  e.  (bits `  ( A `  t
) ) )  -> 
( 2 ^ n
)  e.  NN )
24 simplr 755 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  n  e.  (bits `  ( A `  t
) ) )  -> 
t  e.  NN )
2523, 24nnmulcld 10604 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  n  e.  (bits `  ( A `  t
) ) )  -> 
( ( 2 ^ n )  x.  t
)  e.  NN )
2625adantr 465 . . . . . . . . . . 11  |-  ( ( ( ( A  e.  ( T  i^i  R
)  /\  t  e.  NN )  /\  n  e.  (bits `  ( A `  t ) ) )  /\  ( ( 2 ^ n )  x.  t )  =  p )  ->  ( (
2 ^ n )  x.  t )  e.  NN )
2718, 26eqeltrrd 2546 . . . . . . . . . 10  |-  ( ( ( ( A  e.  ( T  i^i  R
)  /\  t  e.  NN )  /\  n  e.  (bits `  ( A `  t ) ) )  /\  ( ( 2 ^ n )  x.  t )  =  p )  ->  p  e.  NN )
2827exp31 604 . . . . . . . . 9  |-  ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  ->  ( n  e.  (bits `  ( A `  t
) )  ->  (
( ( 2 ^ n )  x.  t
)  =  p  ->  p  e.  NN )
) )
2928rexlimdv 2947 . . . . . . . 8  |-  ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  ->  ( E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p  ->  p  e.  NN ) )
3029rexlimdva 2949 . . . . . . 7  |-  ( A  e.  ( T  i^i  R )  ->  ( E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p  ->  p  e.  NN ) )
3130pm4.71rd 635 . . . . . 6  |-  ( A  e.  ( T  i^i  R )  ->  ( E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p  <->  ( p  e.  NN  /\  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) ) )
32 rex0 3808 . . . . . . . . . . . . . . 15  |-  -.  E. n  e.  (/)  ( ( 2 ^ n )  x.  t )  =  p
33 simplr 755 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  t  e.  NN )
34 simpr 461 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  -.  t  e.  ( `' A " NN ) )
35 eulerpart.p . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  P  =  { f  e.  ( NN0  ^m  NN )  |  ( ( `' f " NN )  e.  Fin  /\  sum_ k  e.  NN  (
( f `  k
)  x.  k )  =  N ) }
36 eulerpart.o . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  O  =  { g  e.  P  |  A. n  e.  ( `' g " NN )  -.  2  ||  n }
37 eulerpart.d . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  D  =  { g  e.  P  |  A. n  e.  NN  ( g `  n
)  <_  1 }
38 eulerpart.h . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  H  =  { r  e.  ( ( ~P NN0  i^i  Fin )  ^m  J )  |  ( r supp  (/) )  e. 
Fin }
39 eulerpart.m . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  M  =  ( r  e.  H  |->  { <. x ,  y
>.  |  ( x  e.  J  /\  y  e.  ( r `  x
) ) } )
40 eulerpart.r . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  R  =  { f  |  ( `' f " NN )  e.  Fin }
41 eulerpart.t . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  T  =  { f  e.  ( NN0  ^m  NN )  |  ( `' f
" NN )  C_  J }
4235, 36, 37, 1, 2, 38, 39, 40, 41eulerpartlemt0 28505 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( A  e.  ( T  i^i  R )  <->  ( A  e.  ( NN0  ^m  NN )  /\  ( `' A " NN )  e.  Fin  /\  ( `' A " NN )  C_  J ) )
4342simp1bi 1011 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( A  e.  ( T  i^i  R )  ->  A  e.  ( NN0  ^m  NN ) )
44 elmapi 7459 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( A  e.  ( NN0  ^m  NN )  ->  A : NN
--> NN0 )
4543, 44syl 16 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( A  e.  ( T  i^i  R )  ->  A : NN
--> NN0 )
4645ad2antrr 725 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  A : NN --> NN0 )
47 ffn 5737 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( A : NN --> NN0  ->  A  Fn  NN )
48 elpreima 6008 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( A  Fn  NN  ->  (
t  e.  ( `' A " NN )  <-> 
( t  e.  NN  /\  ( A `  t
)  e.  NN ) ) )
4946, 47, 483syl 20 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  (
t  e.  ( `' A " NN )  <-> 
( t  e.  NN  /\  ( A `  t
)  e.  NN ) ) )
5034, 49mtbid 300 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  -.  ( t  e.  NN  /\  ( A `  t
)  e.  NN ) )
51 imnan 422 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( t  e.  NN  ->  -.  ( A `  t
)  e.  NN )  <->  -.  ( t  e.  NN  /\  ( A `  t
)  e.  NN ) )
5250, 51sylibr 212 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  (
t  e.  NN  ->  -.  ( A `  t
)  e.  NN ) )
5333, 52mpd 15 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  -.  ( A `  t )  e.  NN )
5446, 33ffvelrnd 6033 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  ( A `  t )  e.  NN0 )
55 elnn0 10818 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( A `  t )  e.  NN0  <->  ( ( A `
 t )  e.  NN  \/  ( A `
 t )  =  0 ) )
5654, 55sylib 196 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  (
( A `  t
)  e.  NN  \/  ( A `  t )  =  0 ) )
57 orel1 382 . . . . . . . . . . . . . . . . . . 19  |-  ( -.  ( A `  t
)  e.  NN  ->  ( ( ( A `  t )  e.  NN  \/  ( A `  t
)  =  0 )  ->  ( A `  t )  =  0 ) )
5853, 56, 57sylc 60 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  ( A `  t )  =  0 )
5958fveq2d 5876 . . . . . . . . . . . . . . . . 17  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  (bits `  ( A `  t
) )  =  (bits `  0 ) )
60 0bits 14101 . . . . . . . . . . . . . . . . 17  |-  (bits ` 
0 )  =  (/)
6159, 60syl6eq 2514 . . . . . . . . . . . . . . . 16  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  (bits `  ( A `  t
) )  =  (/) )
6261rexeqdv 3061 . . . . . . . . . . . . . . 15  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  ( E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p  <->  E. n  e.  (/)  ( ( 2 ^ n )  x.  t
)  =  p ) )
6332, 62mtbiri 303 . . . . . . . . . . . . . 14  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  ( `' A " NN ) )  ->  -.  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  p )
6463ex 434 . . . . . . . . . . . . 13  |-  ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  ->  ( -.  t  e.  ( `' A " NN )  ->  -.  E. n  e.  (bits `  ( A `  t )
) ( ( 2 ^ n )  x.  t )  =  p ) )
6564con4d 105 . . . . . . . . . . . 12  |-  ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  ->  ( E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p  ->  t  e.  ( `' A " NN ) ) )
6665impr 619 . . . . . . . . . . 11  |-  ( ( A  e.  ( T  i^i  R )  /\  ( t  e.  NN  /\ 
E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )  -> 
t  e.  ( `' A " NN ) )
67 eldif 3481 . . . . . . . . . . . . . . . . . . . 20  |-  ( t  e.  ( NN  \  J )  <->  ( t  e.  NN  /\  -.  t  e.  J ) )
6835, 36, 37, 1, 2, 38, 39, 40, 41eulerpartlemf 28506 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( A  e.  ( T  i^i  R )  /\  t  e.  ( NN  \  J ) )  -> 
( A `  t
)  =  0 )
6967, 68sylan2br 476 . . . . . . . . . . . . . . . . . . 19  |-  ( ( A  e.  ( T  i^i  R )  /\  ( t  e.  NN  /\ 
-.  t  e.  J
) )  ->  ( A `  t )  =  0 )
7069anassrs 648 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  J )  ->  ( A `  t )  =  0 )
7170fveq2d 5876 . . . . . . . . . . . . . . . . 17  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  J )  ->  (bits `  ( A `  t
) )  =  (bits `  0 ) )
7271, 60syl6eq 2514 . . . . . . . . . . . . . . . 16  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  J )  ->  (bits `  ( A `  t
) )  =  (/) )
7372rexeqdv 3061 . . . . . . . . . . . . . . 15  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  J )  ->  ( E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p  <->  E. n  e.  (/)  ( ( 2 ^ n )  x.  t
)  =  p ) )
7432, 73mtbiri 303 . . . . . . . . . . . . . 14  |-  ( ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  /\  -.  t  e.  J )  ->  -.  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  p )
7574ex 434 . . . . . . . . . . . . 13  |-  ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  ->  ( -.  t  e.  J  ->  -.  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) )
7675con4d 105 . . . . . . . . . . . 12  |-  ( ( A  e.  ( T  i^i  R )  /\  t  e.  NN )  ->  ( E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p  ->  t  e.  J ) )
7776impr 619 . . . . . . . . . . 11  |-  ( ( A  e.  ( T  i^i  R )  /\  ( t  e.  NN  /\ 
E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )  -> 
t  e.  J )
7866, 77elind 3684 . . . . . . . . . 10  |-  ( ( A  e.  ( T  i^i  R )  /\  ( t  e.  NN  /\ 
E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )  -> 
t  e.  ( ( `' A " NN )  i^i  J ) )
79 simprr 757 . . . . . . . . . 10  |-  ( ( A  e.  ( T  i^i  R )  /\  ( t  e.  NN  /\ 
E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )  ->  E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p )
8078, 79jca 532 . . . . . . . . 9  |-  ( ( A  e.  ( T  i^i  R )  /\  ( t  e.  NN  /\ 
E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )  -> 
( t  e.  ( ( `' A " NN )  i^i  J )  /\  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) )
8180ex 434 . . . . . . . 8  |-  ( A  e.  ( T  i^i  R )  ->  ( (
t  e.  NN  /\  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  p )  ->  ( t  e.  ( ( `' A " NN )  i^i  J
)  /\  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) ) )
8281reximdv2 2928 . . . . . . 7  |-  ( A  e.  ( T  i^i  R )  ->  ( E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p  ->  E. t  e.  ( ( `' A " NN )  i^i  J
) E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) )
83 ssrab2 3581 . . . . . . . . . 10  |-  { z  e.  NN  |  -.  2  ||  z }  C_  NN
841, 83eqsstri 3529 . . . . . . . . 9  |-  J  C_  NN
858, 84sstri 3508 . . . . . . . 8  |-  ( ( `' A " NN )  i^i  J )  C_  NN
86 ssrexv 3561 . . . . . . . 8  |-  ( ( ( `' A " NN )  i^i  J ) 
C_  NN  ->  ( E. t  e.  ( ( `' A " NN )  i^i  J ) E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  p  ->  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  p ) )
8785, 86mp1i 12 . . . . . . 7  |-  ( A  e.  ( T  i^i  R )  ->  ( E. t  e.  ( ( `' A " NN )  i^i  J ) E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  p  ->  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  p ) )
8882, 87impbid 191 . . . . . 6  |-  ( A  e.  ( T  i^i  R )  ->  ( E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p  <->  E. t  e.  ( ( `' A " NN )  i^i  J
) E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) )
8931, 88bitr3d 255 . . . . 5  |-  ( A  e.  ( T  i^i  R )  ->  ( (
p  e.  NN  /\  E. t  e.  NN  E. n  e.  (bits `  ( A `  t )
) ( ( 2 ^ n )  x.  t )  =  p )  <->  E. t  e.  ( ( `' A " NN )  i^i  J ) E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )
90 eqeq2 2472 . . . . . . . 8  |-  ( m  =  p  ->  (
( ( 2 ^ n )  x.  t
)  =  m  <->  ( (
2 ^ n )  x.  t )  =  p ) )
91902rexbidv 2975 . . . . . . 7  |-  ( m  =  p  ->  ( E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  m  <->  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  p ) )
9291elrab 3257 . . . . . 6  |-  ( p  e.  { m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  m }  <->  ( p  e.  NN  /\  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) )
9392a1i 11 . . . . 5  |-  ( A  e.  ( T  i^i  R )  ->  ( p  e.  { m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  m }  <->  ( p  e.  NN  /\  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) ) )
946imaeq2i 5345 . . . . . . . . 9  |-  ( F
" U )  =  ( F " U_ t  e.  ( ( `' A " NN )  i^i  J ) ( { t }  X.  (bits `  ( A `  t ) ) ) )
95 imaiun 6158 . . . . . . . . 9  |-  ( F
" U_ t  e.  ( ( `' A " NN )  i^i  J ) ( { t }  X.  (bits `  ( A `  t )
) ) )  = 
U_ t  e.  ( ( `' A " NN )  i^i  J ) ( F " ( { t }  X.  (bits `  ( A `  t ) ) ) )
9694, 95eqtri 2486 . . . . . . . 8  |-  ( F
" U )  = 
U_ t  e.  ( ( `' A " NN )  i^i  J ) ( F " ( { t }  X.  (bits `  ( A `  t ) ) ) )
9796eleq2i 2535 . . . . . . 7  |-  ( p  e.  ( F " U )  <->  p  e.  U_ t  e.  ( ( `' A " NN )  i^i  J ) ( F " ( { t }  X.  (bits `  ( A `  t
) ) ) ) )
98 eliun 4337 . . . . . . 7  |-  ( p  e.  U_ t  e.  ( ( `' A " NN )  i^i  J
) ( F "
( { t }  X.  (bits `  ( A `  t )
) ) )  <->  E. t  e.  ( ( `' A " NN )  i^i  J
) p  e.  ( F " ( { t }  X.  (bits `  ( A `  t
) ) ) ) )
99 f1ofn 5823 . . . . . . . . . . . . 13  |-  ( F : ( J  X.  NN0 ) -1-1-onto-> NN  ->  F  Fn  ( J  X.  NN0 )
)
1003, 99ax-mp 5 . . . . . . . . . . . 12  |-  F  Fn  ( J  X.  NN0 )
101 snssi 4176 . . . . . . . . . . . . 13  |-  ( t  e.  J  ->  { t }  C_  J )
102101, 11, 12sylancl 662 . . . . . . . . . . . 12  |-  ( t  e.  J  ->  ( { t }  X.  (bits `  ( A `  t ) ) ) 
C_  ( J  X.  NN0 ) )
103 ovelimab 6452 . . . . . . . . . . . 12  |-  ( ( F  Fn  ( J  X.  NN0 )  /\  ( { t }  X.  (bits `  ( A `  t ) ) ) 
C_  ( J  X.  NN0 ) )  ->  (
p  e.  ( F
" ( { t }  X.  (bits `  ( A `  t ) ) ) )  <->  E. x  e.  { t } E. n  e.  (bits `  ( A `  t )
) p  =  ( x F n ) ) )
104100, 102, 103sylancr 663 . . . . . . . . . . 11  |-  ( t  e.  J  ->  (
p  e.  ( F
" ( { t }  X.  (bits `  ( A `  t ) ) ) )  <->  E. x  e.  { t } E. n  e.  (bits `  ( A `  t )
) p  =  ( x F n ) ) )
105 vex 3112 . . . . . . . . . . . 12  |-  t  e. 
_V
106 oveq1 6303 . . . . . . . . . . . . . 14  |-  ( x  =  t  ->  (
x F n )  =  ( t F n ) )
107106eqeq2d 2471 . . . . . . . . . . . . 13  |-  ( x  =  t  ->  (
p  =  ( x F n )  <->  p  =  ( t F n ) ) )
108107rexbidv 2968 . . . . . . . . . . . 12  |-  ( x  =  t  ->  ( E. n  e.  (bits `  ( A `  t
) ) p  =  ( x F n )  <->  E. n  e.  (bits `  ( A `  t
) ) p  =  ( t F n ) ) )
109105, 108rexsn 4072 . . . . . . . . . . 11  |-  ( E. x  e.  { t } E. n  e.  (bits `  ( A `  t ) ) p  =  ( x F n )  <->  E. n  e.  (bits `  ( A `  t ) ) p  =  ( t F n ) )
110104, 109syl6bb 261 . . . . . . . . . 10  |-  ( t  e.  J  ->  (
p  e.  ( F
" ( { t }  X.  (bits `  ( A `  t ) ) ) )  <->  E. n  e.  (bits `  ( A `  t ) ) p  =  ( t F n ) ) )
111 df-ov 6299 . . . . . . . . . . . . . . 15  |-  ( t F n )  =  ( F `  <. t ,  n >. )
112111eqeq1i 2464 . . . . . . . . . . . . . 14  |-  ( ( t F n )  =  p  <->  ( F `  <. t ,  n >. )  =  p )
113 eqcom 2466 . . . . . . . . . . . . . 14  |-  ( ( t F n )  =  p  <->  p  =  ( t F n ) )
114112, 113bitr3i 251 . . . . . . . . . . . . 13  |-  ( ( F `  <. t ,  n >. )  =  p  <-> 
p  =  ( t F n ) )
115 opelxpi 5040 . . . . . . . . . . . . . . 15  |-  ( ( t  e.  J  /\  n  e.  NN0 )  ->  <. t ,  n >.  e.  ( J  X.  NN0 ) )
1161, 2oddpwdcv 28491 . . . . . . . . . . . . . . . 16  |-  ( <.
t ,  n >.  e.  ( J  X.  NN0 )  ->  ( F `  <. t ,  n >. )  =  ( ( 2 ^ ( 2nd `  <. t ,  n >. )
)  x.  ( 1st `  <. t ,  n >. ) ) )
117 vex 3112 . . . . . . . . . . . . . . . . . . 19  |-  n  e. 
_V
118105, 117op2nd 6808 . . . . . . . . . . . . . . . . . 18  |-  ( 2nd `  <. t ,  n >. )  =  n
119118oveq2i 6307 . . . . . . . . . . . . . . . . 17  |-  ( 2 ^ ( 2nd `  <. t ,  n >. )
)  =  ( 2 ^ n )
120105, 117op1st 6807 . . . . . . . . . . . . . . . . 17  |-  ( 1st `  <. t ,  n >. )  =  t
121119, 120oveq12i 6308 . . . . . . . . . . . . . . . 16  |-  ( ( 2 ^ ( 2nd `  <. t ,  n >. ) )  x.  ( 1st `  <. t ,  n >. ) )  =  ( ( 2 ^ n
)  x.  t )
122116, 121syl6eq 2514 . . . . . . . . . . . . . . 15  |-  ( <.
t ,  n >.  e.  ( J  X.  NN0 )  ->  ( F `  <. t ,  n >. )  =  ( ( 2 ^ n )  x.  t ) )
123115, 122syl 16 . . . . . . . . . . . . . 14  |-  ( ( t  e.  J  /\  n  e.  NN0 )  -> 
( F `  <. t ,  n >. )  =  ( ( 2 ^ n )  x.  t ) )
124123eqeq1d 2459 . . . . . . . . . . . . 13  |-  ( ( t  e.  J  /\  n  e.  NN0 )  -> 
( ( F `  <. t ,  n >. )  =  p  <->  ( (
2 ^ n )  x.  t )  =  p ) )
125114, 124syl5bbr 259 . . . . . . . . . . . 12  |-  ( ( t  e.  J  /\  n  e.  NN0 )  -> 
( p  =  ( t F n )  <-> 
( ( 2 ^ n )  x.  t
)  =  p ) )
12621, 125sylan2 474 . . . . . . . . . . 11  |-  ( ( t  e.  J  /\  n  e.  (bits `  ( A `  t )
) )  ->  (
p  =  ( t F n )  <->  ( (
2 ^ n )  x.  t )  =  p ) )
127126rexbidva 2965 . . . . . . . . . 10  |-  ( t  e.  J  ->  ( E. n  e.  (bits `  ( A `  t
) ) p  =  ( t F n )  <->  E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )
128110, 127bitrd 253 . . . . . . . . 9  |-  ( t  e.  J  ->  (
p  e.  ( F
" ( { t }  X.  (bits `  ( A `  t ) ) ) )  <->  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p ) )
1299, 128syl 16 . . . . . . . 8  |-  ( t  e.  ( ( `' A " NN )  i^i  J )  -> 
( p  e.  ( F " ( { t }  X.  (bits `  ( A `  t
) ) ) )  <->  E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )
130129rexbiia 2958 . . . . . . 7  |-  ( E. t  e.  ( ( `' A " NN )  i^i  J ) p  e.  ( F "
( { t }  X.  (bits `  ( A `  t )
) ) )  <->  E. t  e.  ( ( `' A " NN )  i^i  J
) E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p )
13197, 98, 1303bitri 271 . . . . . 6  |-  ( p  e.  ( F " U )  <->  E. t  e.  ( ( `' A " NN )  i^i  J
) E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  p )
132131a1i 11 . . . . 5  |-  ( A  e.  ( T  i^i  R )  ->  ( p  e.  ( F " U
)  <->  E. t  e.  ( ( `' A " NN )  i^i  J ) E. n  e.  (bits `  ( A `  t
) ) ( ( 2 ^ n )  x.  t )  =  p ) )
13389, 93, 1323bitr4rd 286 . . . 4  |-  ( A  e.  ( T  i^i  R )  ->  ( p  e.  ( F " U
)  <->  p  e.  { m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  m } ) )
134133eqrdv 2454 . . 3  |-  ( A  e.  ( T  i^i  R )  ->  ( F " U )  =  {
m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  m } )
135 f1oeq3 5815 . . 3  |-  ( ( F " U )  =  { m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n
)  x.  t )  =  m }  ->  ( ( F  |`  U ) : U -1-1-onto-> ( F " U
)  <->  ( F  |`  U ) : U -1-1-onto-> {
m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  m } ) )
136134, 135syl 16 . 2  |-  ( A  e.  ( T  i^i  R )  ->  ( ( F  |`  U ) : U -1-1-onto-> ( F " U
)  <->  ( F  |`  U ) : U -1-1-onto-> {
m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  m } ) )
13717, 136mpbii 211 1  |-  ( A  e.  ( T  i^i  R )  ->  ( F  |`  U ) : U -1-1-onto-> {
m  e.  NN  |  E. t  e.  NN  E. n  e.  (bits `  ( A `  t ) ) ( ( 2 ^ n )  x.  t )  =  m } )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    \/ wo 368    /\ wa 369    = wceq 1395    e. wcel 1819   {cab 2442   A.wral 2807   E.wrex 2808   {crab 2811    \ cdif 3468    i^i cin 3470    C_ wss 3471   (/)c0 3793   ~Pcpw 4015   {csn 4032   <.cop 4038   U_ciun 4332   class class class wbr 4456   {copab 4514    |-> cmpt 4515    X. cxp 5006   `'ccnv 5007    |` cres 5010   "cima 5011    o. ccom 5012    Fn wfn 5589   -->wf 5590   -1-1->wf1 5591   -1-1-onto->wf1o 5593   ` cfv 5594  (class class class)co 6296    |-> cmpt2 6298   1stc1st 6797   2ndc2nd 6798   supp csupp 6917    ^m cmap 7438   Fincfn 7535   0cc0 9509   1c1 9510    x. cmul 9514    <_ cle 9646   NNcn 10556   2c2 10606   NN0cn0 10816   ^cexp 12169   sum_csu 13520    || cdvds 13998  bitscbits 14081  𝟭cind 28185
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1619  ax-4 1632  ax-5 1705  ax-6 1748  ax-7 1791  ax-8 1821  ax-9 1823  ax-10 1838  ax-11 1843  ax-12 1855  ax-13 2000  ax-ext 2435  ax-sep 4578  ax-nul 4586  ax-pow 4634  ax-pr 4695  ax-un 6591  ax-cnex 9565  ax-resscn 9566  ax-1cn 9567  ax-icn 9568  ax-addcl 9569  ax-addrcl 9570  ax-mulcl 9571  ax-mulrcl 9572  ax-mulcom 9573  ax-addass 9574  ax-mulass 9575  ax-distr 9576  ax-i2m1 9577  ax-1ne0 9578  ax-1rid 9579  ax-rnegex 9580  ax-rrecex 9581  ax-cnre 9582  ax-pre-lttri 9583  ax-pre-lttrn 9584  ax-pre-ltadd 9585  ax-pre-mulgt0 9586  ax-pre-sup 9587
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 974  df-3an 975  df-tru 1398  df-ex 1614  df-nf 1618  df-sb 1741  df-eu 2287  df-mo 2288  df-clab 2443  df-cleq 2449  df-clel 2452  df-nfc 2607  df-ne 2654  df-nel 2655  df-ral 2812  df-rex 2813  df-reu 2814  df-rmo 2815  df-rab 2816  df-v 3111  df-sbc 3328  df-csb 3431  df-dif 3474  df-un 3476  df-in 3478  df-ss 3485  df-pss 3487  df-nul 3794  df-if 3945  df-pw 4017  df-sn 4033  df-pr 4035  df-tp 4037  df-op 4039  df-uni 4252  df-iun 4334  df-br 4457  df-opab 4516  df-mpt 4517  df-tr 4551  df-eprel 4800  df-id 4804  df-po 4809  df-so 4810  df-fr 4847  df-we 4849  df-ord 4890  df-on 4891  df-lim 4892  df-suc 4893  df-xp 5014  df-rel 5015  df-cnv 5016  df-co 5017  df-dm 5018  df-rn 5019  df-res 5020  df-ima 5021  df-iota 5557  df-fun 5596  df-fn 5597  df-f 5598  df-f1 5599  df-fo 5600  df-f1o 5601  df-fv 5602  df-riota 6258  df-ov 6299  df-oprab 6300  df-mpt2 6301  df-om 6700  df-1st 6799  df-2nd 6800  df-recs 7060  df-rdg 7094  df-1o 7148  df-er 7329  df-map 7440  df-en 7536  df-dom 7537  df-sdom 7538  df-fin 7539  df-sup 7919  df-pnf 9647  df-mnf 9648  df-xr 9649  df-ltxr 9650  df-le 9651  df-sub 9826  df-neg 9827  df-div 10228  df-nn 10557  df-2 10615  df-n0 10817  df-z 10886  df-uz 11107  df-rp 11246  df-fz 11698  df-fzo 11822  df-fl 11932  df-seq 12111  df-exp 12170  df-dvds 13999  df-bits 14084
This theorem is referenced by:  eulerpartlemgs2  28516
  Copyright terms: Public domain W3C validator