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

Theorem odzval 12856
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 5866 . . . . . . . . 9  |-  ( m  =  N  ->  (
x  gcd  m )  =  ( x  gcd  N ) )
21eqeq1d 2291 . . . . . . . 8  |-  ( m  =  N  ->  (
( x  gcd  m
)  =  1  <->  (
x  gcd  N )  =  1 ) )
32rabbidv 2780 . . . . . . 7  |-  ( m  =  N  ->  { x  e.  ZZ  |  ( x  gcd  m )  =  1 }  =  {
x  e.  ZZ  | 
( x  gcd  N
)  =  1 } )
4 oveq1 5865 . . . . . . . . 9  |-  ( n  =  x  ->  (
n  gcd  N )  =  ( x  gcd  N ) )
54eqeq1d 2291 . . . . . . . 8  |-  ( n  =  x  ->  (
( n  gcd  N
)  =  1  <->  (
x  gcd  N )  =  1 ) )
65cbvrabv 2787 . . . . . . 7  |-  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  =  {
x  e.  ZZ  | 
( x  gcd  N
)  =  1 }
73, 6syl6eqr 2333 . . . . . 6  |-  ( m  =  N  ->  { x  e.  ZZ  |  ( x  gcd  m )  =  1 }  =  {
n  e.  ZZ  | 
( n  gcd  N
)  =  1 } )
8 breq1 4026 . . . . . . . 8  |-  ( m  =  N  ->  (
m  ||  ( (
x ^ n )  -  1 )  <->  N  ||  (
( x ^ n
)  -  1 ) ) )
98rabbidv 2780 . . . . . . 7  |-  ( m  =  N  ->  { n  e.  NN  |  m  ||  ( ( x ^
n )  -  1 ) }  =  {
n  e.  NN  |  N  ||  ( ( x ^ n )  - 
1 ) } )
109supeq1d 7199 . . . . . 6  |-  ( m  =  N  ->  sup ( { n  e.  NN  |  m  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  )  =  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) )
117, 10mpteq12dv 4098 . . . . 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 12833 . . . . 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 10033 . . . . . . 7  |-  ZZ  e.  _V
1413rabex 4165 . . . . . 6  |-  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  e.  _V
1514mptex 5746 . . . . 5  |-  ( x  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  |->  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  ) )  e.  _V
1611, 12, 15fvmpt 5602 . . . 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 5527 . . 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 5865 . . . . . 6  |-  ( n  =  A  ->  (
n  gcd  N )  =  ( A  gcd  N ) )
1918eqeq1d 2291 . . . . 5  |-  ( n  =  A  ->  (
( n  gcd  N
)  =  1  <->  ( A  gcd  N )  =  1 ) )
2019elrab 2923 . . . 4  |-  ( A  e.  { n  e.  ZZ  |  ( n  gcd  N )  =  1 }  <->  ( A  e.  ZZ  /\  ( A  gcd  N )  =  1 ) )
21 oveq1 5865 . . . . . . . . 9  |-  ( x  =  A  ->  (
x ^ n )  =  ( A ^
n ) )
2221oveq1d 5873 . . . . . . . 8  |-  ( x  =  A  ->  (
( x ^ n
)  -  1 )  =  ( ( A ^ n )  - 
1 ) )
2322breq2d 4035 . . . . . . 7  |-  ( x  =  A  ->  ( N  ||  ( ( x ^ n )  - 
1 )  <->  N  ||  (
( A ^ n
)  -  1 ) ) )
2423rabbidv 2780 . . . . . 6  |-  ( x  =  A  ->  { n  e.  NN  |  N  ||  ( ( x ^
n )  -  1 ) }  =  {
n  e.  NN  |  N  ||  ( ( A ^ n )  - 
1 ) } )
2524supeq1d 7199 . . . . 5  |-  ( x  =  A  ->  sup ( { n  e.  NN  |  N  ||  ( ( x ^ n )  -  1 ) } ,  RR ,  `'  <  )  =  sup ( { n  e.  NN  |  N  ||  ( ( A ^ n )  -  1 ) } ,  RR ,  `'  <  ) )
26 eqid 2283 . . . . 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 8903 . . . . . . 7  |-  <  Or  RR
28 cnvso 5214 . . . . . . 7  |-  (  < 
Or  RR  <->  `'  <  Or  RR )
2927, 28mpbi 199 . . . . . 6  |-  `'  <  Or  RR
3029supex 7214 . . . . 5  |-  sup ( { n  e.  NN  |  N  ||  ( ( A ^ n )  -  1 ) } ,  RR ,  `'  <  )  e.  _V
3125, 26, 30fvmpt 5602 . . . 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 204 . . 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 2335 . 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 1147 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 358    /\ w3a 934    = wceq 1623    e. wcel 1684   {crab 2547   class class class wbr 4023    e. cmpt 4077    Or wor 4313   `'ccnv 4688   ` cfv 5255  (class class class)co 5858   supcsup 7193   RRcr 8736   1c1 8738    < clt 8867    - cmin 9037   NNcn 9746   ZZcz 10024   ^cexp 11104    || cdivides 12531    gcd cgcd 12685   od
Zcodz 12831
This theorem is referenced by:  odzcllem  12857  odzdvds  12860
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1533  ax-5 1544  ax-17 1603  ax-9 1635  ax-8 1643  ax-13 1686  ax-14 1688  ax-6 1703  ax-7 1708  ax-11 1715  ax-12 1866  ax-ext 2264  ax-rep 4131  ax-sep 4141  ax-nul 4149  ax-pow 4188  ax-pr 4214  ax-un 4512  ax-cnex 8793  ax-resscn 8794  ax-pre-lttri 8811  ax-pre-lttrn 8812
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1310  df-ex 1529  df-nf 1532  df-sb 1630  df-eu 2147  df-mo 2148  df-clab 2270  df-cleq 2276  df-clel 2279  df-nfc 2408  df-ne 2448  df-nel 2449  df-ral 2548  df-rex 2549  df-reu 2550  df-rmo 2551  df-rab 2552  df-v 2790  df-sbc 2992  df-csb 3082  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-nul 3456  df-if 3566  df-pw 3627  df-sn 3646  df-pr 3647  df-op 3649  df-uni 3828  df-iun 3907  df-br 4024  df-opab 4078  df-mpt 4079  df-id 4309  df-po 4314  df-so 4315  df-xp 4695  df-rel 4696  df-cnv 4697  df-co 4698  df-dm 4699  df-rn 4700  df-res 4701  df-ima 4702  df-iota 5219  df-fun 5257  df-fn 5258  df-f 5259  df-f1 5260  df-fo 5261  df-f1o 5262  df-fv 5263  df-ov 5861  df-er 6660  df-en 6864  df-dom 6865  df-sdom 6866  df-sup 7194  df-pnf 8869  df-mnf 8870  df-ltxr 8872  df-neg 9040  df-z 10025  df-odz 12833
  Copyright terms: Public domain W3C validator