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

Theorem odzval 13182
Description: Value of the order function. This is a function of functions; the inner argument selects the base (i.e. mod  N for some  N, often prime) and the outer argument selects the integer or equivalence class (if you want to think about it that way) from the integers mod  N. In order to ensure the supremum is well-defined, we only define the expression when  A and  N are coprime. (Contributed by Mario Carneiro, 23-Feb-2014.)
Assertion
Ref Expression
odzval  |-  ( ( N  e.  NN  /\  A  e.  ZZ  /\  ( A  gcd  N )  =  1 )  ->  (
( od Z `  N ) `  A
)  =  sup ( { n  e.  NN  |  N  ||  ( ( A ^ n )  -  1 ) } ,  RR ,  `'  <  ) )
Distinct variable groups:    n, N    A, n

Proof of Theorem odzval
Dummy variables  m  x are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 oveq2 6092 . . . . . . . . 9  |-  ( m  =  N  ->  (
x  gcd  m )  =  ( x  gcd  N ) )
21eqeq1d 2446 . . . . . . . 8  |-  ( m  =  N  ->  (
( x  gcd  m
)  =  1  <->  (
x  gcd  N )  =  1 ) )
32rabbidv 2950 . . . . . . 7  |-  ( m  =  N  ->  { x  e.  ZZ  |  ( x  gcd  m )  =  1 }  =  {
x  e.  ZZ  | 
( x  gcd  N
)  =  1 } )
4 oveq1 6091 . . . . . . . . 9  |-  ( n  =  x  ->  (
n  gcd  N )  =  ( x  gcd  N ) )
54eqeq1d 2446 . . . . . . . 8  |-  ( n  =  x  ->  (
( n  gcd  N
)  =  1  <->  (
x  gcd  N )  =  1 ) )
65cbvrabv 2957 . . . . . . 7  |-  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  =  {
x  e.  ZZ  | 
( x  gcd  N
)  =  1 }
73, 6syl6eqr 2488 . . . . . 6  |-  ( m  =  N  ->  { x  e.  ZZ  |  ( x  gcd  m )  =  1 }  =  {
n  e.  ZZ  | 
( n  gcd  N
)  =  1 } )
8 breq1 4218 . . . . . . . 8  |-  ( m  =  N  ->  (
m  ||  ( (
x ^ n )  -  1 )  <->  N  ||  (
( x ^ n
)  -  1 ) ) )
98rabbidv 2950 . . . . . . 7  |-  ( m  =  N  ->  { n  e.  NN  |  m  ||  ( ( x ^
n )  -  1 ) }  =  {
n  e.  NN  |  N  ||  ( ( x ^ n )  - 
1 ) } )
109supeq1d 7454 . . . . . 6  |-  ( m  =  N  ->  sup ( { n  e.  NN  |  m  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  )  =  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) )
117, 10mpteq12dv 4290 . . . . 5  |-  ( m  =  N  ->  (
x  e.  { x  e.  ZZ  |  ( x  gcd  m )  =  1 }  |->  sup ( { n  e.  NN  |  m  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) )  =  ( x  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  |->  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) ) )
12 df-odz 13159 . . . . 5  |-  od Z  =  ( m  e.  NN  |->  ( x  e. 
{ x  e.  ZZ  |  ( x  gcd  m )  =  1 }  |->  sup ( { n  e.  NN  |  m  ||  ( ( x ^
n )  -  1 ) } ,  RR ,  `'  <  ) ) )
13 zex 10296 . . . . . . 7  |-  ZZ  e.  _V
1413rabex 4357 . . . . . 6  |-  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  e.  _V
1514mptex 5969 . . . . 5  |-  ( x  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  |->  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) )  e.  _V
1611, 12, 15fvmpt 5809 . . . 4  |-  ( N  e.  NN  ->  ( od Z `  N )  =  ( x  e. 
{ n  e.  ZZ  |  ( n  gcd  N )  =  1 } 
|->  sup ( { n  e.  NN  |  N  ||  ( ( x ^
n )  -  1 ) } ,  RR ,  `'  <  ) ) )
1716fveq1d 5733 . . 3  |-  ( N  e.  NN  ->  (
( od Z `  N ) `  A
)  =  ( ( x  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  |->  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) ) `  A
) )
18 oveq1 6091 . . . . . 6  |-  ( n  =  A  ->  (
n  gcd  N )  =  ( A  gcd  N ) )
1918eqeq1d 2446 . . . . 5  |-  ( n  =  A  ->  (
( n  gcd  N
)  =  1  <->  ( A  gcd  N )  =  1 ) )
2019elrab 3094 . . . 4  |-  ( A  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  <->  ( A  e.  ZZ  /\  ( A  gcd  N )  =  1 ) )
21 oveq1 6091 . . . . . . . . 9  |-  ( x  =  A  ->  (
x ^ n )  =  ( A ^
n ) )
2221oveq1d 6099 . . . . . . . 8  |-  ( x  =  A  ->  (
( x ^ n
)  -  1 )  =  ( ( A ^ n )  - 
1 ) )
2322breq2d 4227 . . . . . . 7  |-  ( x  =  A  ->  ( N  ||  ( ( x ^ n )  - 
1 )  <->  N  ||  (
( A ^ n
)  -  1 ) ) )
2423rabbidv 2950 . . . . . 6  |-  ( x  =  A  ->  { n  e.  NN  |  N  ||  ( ( x ^
n )  -  1 ) }  =  {
n  e.  NN  |  N  ||  ( ( A ^ n )  - 
1 ) } )
2524supeq1d 7454 . . . . 5  |-  ( x  =  A  ->  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  )  =  sup ( { n  e.  NN  |  N  ||  ( ( A ^ n )  -  1 ) } ,  RR ,  `'  <  ) )
26 eqid 2438 . . . . 5  |-  ( x  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  |->  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) )  =  ( x  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  |->  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) )
27 ltso 9161 . . . . . . 7  |-  <  Or  RR
28 cnvso 5414 . . . . . . 7  |-  (  < 
Or  RR  <->  `'  <  Or  RR )
2927, 28mpbi 201 . . . . . 6  |-  `'  <  Or  RR
3029supex 7471 . . . . 5  |-  sup ( { n  e.  NN  |  N  ||  ( ( A ^ n )  -  1 ) } ,  RR ,  `'  <  )  e.  _V
3125, 26, 30fvmpt 5809 . . . 4  |-  ( A  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  ->  (
( x  e.  {
n  e.  ZZ  | 
( n  gcd  N
)  =  1 } 
|->  sup ( { n  e.  NN  |  N  ||  ( ( x ^
n )  -  1 ) } ,  RR ,  `'  <  ) ) `
 A )  =  sup ( { n  e.  NN  |  N  ||  ( ( A ^
n )  -  1 ) } ,  RR ,  `'  <  ) )
3220, 31sylbir 206 . . 3  |-  ( ( A  e.  ZZ  /\  ( A  gcd  N )  =  1 )  -> 
( ( x  e. 
{ n  e.  ZZ  |  ( n  gcd  N )  =  1 } 
|->  sup ( { n  e.  NN  |  N  ||  ( ( x ^
n )  -  1 ) } ,  RR ,  `'  <  ) ) `
 A )  =  sup ( { n  e.  NN  |  N  ||  ( ( A ^
n )  -  1 ) } ,  RR ,  `'  <  ) )
3317, 32sylan9eq 2490 . 2  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  ( A  gcd  N
)  =  1 ) )  ->  ( ( od Z `  N ) `
 A )  =  sup ( { n  e.  NN  |  N  ||  ( ( A ^
n )  -  1 ) } ,  RR ,  `'  <  ) )
34333impb 1150 1  |-  ( ( N  e.  NN  /\  A  e.  ZZ  /\  ( A  gcd  N )  =  1 )  ->  (
( od Z `  N ) `  A
)  =  sup ( { n  e.  NN  |  N  ||  ( ( A ^ n )  -  1 ) } ,  RR ,  `'  <  ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 360    /\ w3a 937    = wceq 1653    e. wcel 1726   {crab 2711   class class class wbr 4215    e. cmpt 4269    Or wor 4505   `'ccnv 4880   ` cfv 5457  (class class class)co 6084   supcsup 7448   RRcr 8994   1c1 8996    < clt 9125    - cmin 9296   NNcn 10005   ZZcz 10287   ^cexp 11387    || cdivides 12857    gcd cgcd 13011   od
Zcodz 13157
This theorem is referenced by:  odzcllem  13183  odzdvds  13186
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1556  ax-5 1567  ax-17 1627  ax-9 1667  ax-8 1688  ax-13 1728  ax-14 1730  ax-6 1745  ax-7 1750  ax-11 1762  ax-12 1951  ax-ext 2419  ax-rep 4323  ax-sep 4333  ax-nul 4341  ax-pow 4380  ax-pr 4406  ax-un 4704  ax-cnex 9051  ax-resscn 9052  ax-pre-lttri 9069  ax-pre-lttrn 9070
This theorem depends on definitions:  df-bi 179  df-or 361  df-an 362  df-3or 938  df-3an 939  df-tru 1329  df-ex 1552  df-nf 1555  df-sb 1660  df-eu 2287  df-mo 2288  df-clab 2425  df-cleq 2431  df-clel 2434  df-nfc 2563  df-ne 2603  df-nel 2604  df-ral 2712  df-rex 2713  df-reu 2714  df-rmo 2715  df-rab 2716  df-v 2960  df-sbc 3164  df-csb 3254  df-dif 3325  df-un 3327  df-in 3329  df-ss 3336  df-nul 3631  df-if 3742  df-pw 3803  df-sn 3822  df-pr 3823  df-op 3825  df-uni 4018  df-iun 4097  df-br 4216  df-opab 4270  df-mpt 4271  df-id 4501  df-po 4506  df-so 4507  df-xp 4887  df-rel 4888  df-cnv 4889  df-co 4890  df-dm 4891  df-rn 4892  df-res 4893  df-ima 4894  df-iota 5421  df-fun 5459  df-fn 5460  df-f 5461  df-f1 5462  df-fo 5463  df-f1o 5464  df-fv 5465  df-ov 6087  df-er 6908  df-en 7113  df-dom 7114  df-sdom 7115  df-sup 7449  df-pnf 9127  df-mnf 9128  df-ltxr 9130  df-neg 9299  df-z 10288  df-odz 13159
  Copyright terms: Public domain W3C validator