Solved

Fermats n Eulers theorem

Posted on 2004-09-28
10
699 Views
Last Modified: 2012-05-07
I know what Fermat's and Eulers theorem are.

this is a question that i have been given..

Use Fermat or Euler's theorem (whichever is applicable) to compute

a) 3 ^ 201 mod 11
b) 3^{2161} mod 1147..

how am i supposed to use Fermat's or Euler's thoerem for this?

Fermat's little theorem said that a^p-1 = 1 mod p.

any ideas?

thanks,
0
Comment
Question by:younoeme
  • 7
  • 3
10 Comments
 
LVL 27

Expert Comment

by:d-glitch
ID: 12173527

 3^201 mod 11   =   [(3^10)^20] * (3^1)  mod 11

                         =   [ 1^20 mod 11 ] * [3 mod 11]

                         =   3 mod 11

               
0
 
LVL 27

Expert Comment

by:d-glitch
ID: 12173789
3^2161 mod 1147   =   3^1146  * 3^1015  mod 1147

                             =      1         * 3^512 * 3^256 * 3^128 * 3^64 * 3^32 * 3^16 * 3^4 * 3^2 * 3^1    mod 1147

                             =   [ more math to do                                 ]   *    958   *  826   *  81 *    9   *    3


You can use fermat's theorom to reduce the exponent to less than p-1

Whatever is left you have to the old fashioned way. But you can break it up into exponents that are powers of two, you can bootstrap your way up and reduce the math.

I did the first few.    The next step is:         3^64 mod 1147  =  3^32 ^ 3^32 mod 1147  =  958 * 958 mod 1147
0
 
LVL 27

Expert Comment

by:d-glitch
ID: 12173875
I mad a mistake in my last post:

3^1   mod 1147    =     3
3^2    mod 1147   =     9
3^4    mod 1147   =    81
3^8    mod 1147   =  826  ==>  You don't use this term in the answer, but you still have to calculate it to get the next term in the series.
3^16   mod 1147  =  958
3^32   mod 1147  =  958^2 mod 1147
3^64   mod 1147
3^128  mod 1147
3^256  mod 1147
3^512  mod 1147


0
DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

 
LVL 27

Expert Comment

by:d-glitch
ID: 12174258
3^{2161} mod 1147..

1147 = 31 * 37   It isn't prime so you can't use Fermat's Little Theorem.
0
 
LVL 27

Expert Comment

by:d-glitch
ID: 12174357
You need to use Euler's Totient Function:        http://mathworld.wolfram.com/EulersTotientTheorem.html
                                                                  http://mathworld.wolfram.com/TotientFunction.html


 phi(1147) = 1147 * (30/31) * (36/37)  = 1080   ==>  Euler's Totient Function

3^1080 mod 1147 = 1                                      ==> Euler's Totient Theorem


3^2161 mod 1147   =   (3^1080) * (3^1080) * 3^1  mod 1147
                             =        1        *       1       *  3     mod 1147
                             =    3
0
 
LVL 9

Expert Comment

by:rjkimble
ID: 12176516
Verification from Maxima:

(C1) mod(3^201,11);
(D1)                                3
(C2) mod(3^2161,1147);
(D2)                                3
0
 
LVL 27

Accepted Solution

by:
d-glitch earned 100 total points
ID: 12179619
In summary:

   a^n  mod b ==> mod( a^n, b)


If the base b is prime, you can use Fermat's Little Theorem to reduce the exponent:
 
                                        mod( a^n, b) = 1 reduces to mod( a^m, b) where m = mod(n, b-1)


If the base b is composite, you can use Euler's Totient Theorem to reduce the exponent:
 
                                        mod( a^n, b) = 1 reduces to mod( a^m, b) where m = mod(n, phi(b))

If m is small you may be able to find the answer by inspection.

If m is large, you can use the binary decomposition, as I suggested in my otherwise irrelevent post.
0
 
LVL 9

Expert Comment

by:rjkimble
ID: 12186748
Very nicely stated.
0
 
LVL 27

Expert Comment

by:d-glitch
ID: 12191235
Thanks rjk.

It would have been even nicer if I had left out the =1's

                                   mod( a^n, b)  reduces to ...

Another senseless cut and paste tragedy.
0
 
LVL 9

Expert Comment

by:rjkimble
ID: 12191310
Good point. My bleary eyes glossed over that. Still, the way you laid things out is quite nice.

.... Bob
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction On a scale of 1 to 10, how would you rate our Product? Many of us have answered that question time and time again. But only a few of us have had the pleasure of receiving a stack of the filled out surveys and being asked to do somethi…
Complex Numbers are funny things.  Many people have a basic understanding of them, some a more advanced.  The confusion usually arises when that pesky i (or j for Electrical Engineers) appears and understanding the meaning of a square root of a nega…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question