0% found this document useful (0 votes)
70 views

Modular Arithmetic

This document discusses modular arithmetic and related concepts. It can be summarized in 3 sentences: Modular arithmetic involves calculating with integers modulo a number m, where operations "wrap around" at multiples of m. It defines concepts like congruences, equivalence classes, and the units of a ring that have inverses. The Chinese Remainder Theorem provides a unique solution to systems of congruences when the moduli are relatively prime.

Uploaded by

Lea Goldman
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
70 views

Modular Arithmetic

This document discusses modular arithmetic and related concepts. It can be summarized in 3 sentences: Modular arithmetic involves calculating with integers modulo a number m, where operations "wrap around" at multiples of m. It defines concepts like congruences, equivalence classes, and the units of a ring that have inverses. The Chinese Remainder Theorem provides a unique solution to systems of congruences when the moduli are relatively prime.

Uploaded by

Lea Goldman
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

MODULAR ARITHMETIC

MIGUEL A. LERMA

(Last updated: April 21, 2005)

1. Modular Arithmetic

1. Congruences Modulo m. Given an integer m ≥ 2, we say that


a is congruent to b modulo m, written a ≡ b (mod m), if m divides
a − b. Note that the following conditions are equivalent

(1) a ≡ b (mod m).


(2) a = b + km for some integer k.
(3) a and b have the same remainder when divided by m.

For instance 6 and 21 are congruent modulo 5 because when divided


by 5 both have the same remainder of 1.
The relation of congruence modulo m is an equivalence relation. It
partitions Z into m equivalence classes of the form
[x] = [x]m = {x + km | k ∈ Z} .
For instance, for m = 5, each one of the following rows is an equivalence
class:
. . . −10 −5 0 5 10 15 20 . . .
. . . −9 −4 1 6 11 16 21 . . .
. . . −8 −3 2 7 12 17 22 . . .
. . . −7 −2 3 8 13 18 23 . . .
. . . −6 −1 4 9 14 19 24 . . .
Each equivalence class has exactly a representative r such that 0 ≤
r < m, namely the common remainder of all elements in that class
when divided by m. Hence an equivalence class may be denoted [r]
or x + m Z, where 0 ≤ r < m. Often we will omit the brackets, so
that the equivalence class [r] will be represented just r. The set of
equivalence classes is denoted Zm = {0, 1, 2, . . . , m − 1}. For instance,
Z5 = {0, 1, 2, 3, 4}.
1
2 MIGUEL A. LERMA

Remark : When writing “r” as a notation for the class of r we may


stress the fact that r represents the class of r rather than the integer r
by including “ (mod p)” at some point. For instance 8 = 3 (mod p).
Note that in “a ≡ b (mod m)”, a and b represent integers, while in
“a = b (mod m)” they represent elements of Zm .
Reduction Modulo m: Once a set of representatives has been chosen
for the elements of Zm , we will call “r reduced modulo m”, written
“r mod m”, the chosen representative for the class of r. For instance,
if we choose the representatives for the elements of Z5 in the interval
from 0 to 4 (Z5 = {0, 1, 2, 3, 4}), then 9 mod 5 = 4. Another possibility
is to choose the representatives in the interval from −2 to 2 (Z5 =
{−2, −1, 0, 1, 2}), so that 9 mod 5 = −1
In Zm it is possible to define an addition and a multiplication in the
following way:
[x] + [y] = [x + y] ; [x] · [y] = [x · y] .

As an example, tables 1 and 2 show the addition and multiplication


tables for Z5 and Z6 respectively.

+ 0 1 2 3 4 · 0 1 2 3 4
0 0 1 2 3 4 0 0 0 0 0 0
1 1 2 3 4 0 1 0 1 2 3 4
2 2 3 4 0 1 2 0 2 4 1 3
3 3 4 0 1 2 3 0 3 1 4 2
4 4 0 1 2 3 4 0 4 3 2 1
Table 1. Operational tables for Z5

+ 0 1 2 3 4 5 · 0 1 2 3 4 5
0 0 1 2 3 4 5 0 0 0 0 0 0 0
1 1 2 3 4 5 0 1 0 1 2 3 4 5
2 2 3 4 5 0 1 2 0 2 4 0 2 4
3 3 4 5 0 1 2 3 0 3 0 3 0 3
4 4 5 0 1 2 3 4 0 4 2 0 4 2
5 5 0 1 2 3 4 5 0 5 4 3 2 1
Table 2. Operational tables for Z6
MODULAR ARITHMETIC 3

A difference between these two tables is that in Z5 every non-zero


element has a multiplicative inverse, i.e., for every x ∈ Z5 such that
x �= 0 there is an x−1 such that x · x−1 = x−1 · x = 1; e.g. 2−1 = 4
(mod 5). However in Z6 that is not true, some non-zero elements like
2 have no multiplicative inverse. Furthermore the elements without
multiplicative inverse verify that they can be multiplied by some other
non-zero element giving a product equal zero, e.g. 2 · 3 = 0 (mod 6).
These elements are called divisors of zero. Of course with this definition
zero itself is a divisor of zero. Divisors of zero different from zero are
called proper divisors of zero. For instance in Z6 2 is a proper divisor
of zero. In Z5 there are no proper divisors of zero.

In general:

(1) The elements of Zm can be classified into two classes:


(a) Units: elements with multiplicative inverse.
(b) Divisors of zero: elements that multiplied by some other
non-zero element give product zero.
(2) An element [a] ∈ Zm is a unit (has a multiplicative inverse) if
and only if gcd(a, m) = 1.
(3) All non-zero elements of Zm are units if and only if m is a prime
number.

The set of units in Zm is denoted Z∗m . For instance:

Z∗2 = {1}
Z∗3 = {1, 2}
Z∗4 = {1, 3}
Z∗5 = {1, 2, 3, 4}
Z∗6 = {1, 5}
Z∗7 = {1, 2, 3, 4, 5, 6}
Z8∗ = {1, 3, 5, 7}
Z9∗ = {1, 2, 4, 5, 7, 8}

Given an element [a] in Z∗m , its inverse can be computed by using


the Euclidean algorithm to find gcd(a, m), since that algorithm also
provides a solution to the equation ax + my = gcd(a, m) = 1, which is
equivalent to ax ≡ 1 (mod m).
4 MIGUEL A. LERMA

Example: Find the multiplicative inverse of 17 in Z∗64 . Answer : We use


the Euclidean algorithm:
64 = 3 · 17 + 13 → r = 13
17 = 1 · 13 + 4 → r =4
13 = 3·4+1 → r =1
4 = 4·1+0 → r =0
Now we compute backward:

1 = 13 − 3 · 4 = 13 − 3 · (17 − 1 · 13) = 4 · 13 − 3 · 17
= 4 · (64 − 3 · 17) − 3 · 17 = 4 · 64 − 15 · 17 .
Hence (−15) · 17 ≡ 1 (mod 64), but −15 ≡ 49 (mod 64), so the in-
verse of 17 in (Z∗64 , ·) is 49. We will denote this by writing 17−1 = 49
(mod 64), or 17−1 mod 64 = 49.

2. Euler’s Phi Function. The number of units (invertible elements)


in Zm is equal to the number of positive integers not greater than and
relatively prime to m, i.e., the number of integers a such that 1 ≤ a ≤ m
and gcd(a, m) = 1. That number is given by the so called Euler’s phi
function:
φ(m) = number of positive integers not greater than m
and relatively prime to m .
For instance, the positive integers not greater than and relatively prime
to 15 are: 1, 2, 4, 7, 8, 11, 13, 14, hence φ(15) = 8.
We have the following results:

(1) If p is a prime number and s ≥ 1, then φ(ps ) = ps − ps−1 =


ps (1 − 1/p). In particular φ(p) = p − 1.
(2) If m1 , m2 are two relatively prime positive integers, then φ(m1 m2 ) =
φ(m1 ) φ(m2 ).1
(3) If m = ps11 ps22 . . . pskk , where the pk are prime and the sk are
positive, then
φ(m) = m (1 − 1/p1 ) (1 − 1/p2 ) . . . (1 − 1/pk ) .

1A function f (x) of positive integers such that gcd(a, b) = 1 ⇒ f (ab) = f (a)f (b)
is called multiplicative.
MODULAR ARITHMETIC 5

For instance
φ(15) = φ(3 · 5) = φ(3) · φ(5) = (3 − 1) · (5 − 1) = 2 · 4 = 8 .

3. Euler’s Theorem. If a and m are two relatively prime positive


integers, m ≥ 2, then
aφ(m) ≡ 1 (mod m) .
The particular case in which m is a prime number p, Euler’s theorem
is called Fermat’s Little Theorem:
ap−1 ≡ 1 (mod p) .
For instance, if a = 2 and p = 7, then we have, in fact, 27−1 = 26 =
64 = 1 + 9 · 7 ≡ 1 (mod 7).
A consequence of Euler’s Theorem is the following. If gcd(a, m) = 1
then
x ≡ y (mod φ(m)) ⇒ ax ≡ ay (mod m) .
Consequently, the following function is well defined:
Z∗m × Zφ(m) → Z∗m
([a]m , [x]φ(m) ) �→ [ax ]m
Hence, we can compute powers modulo m in the following way:
an = an mod φ(m) (mod m) ,
if gcd(a, m) = 1. For instance:

39734888 mod 100 = 39734888 mod φ(100) mod 100


= 39734888 mod 40 mod 100 = 38 mod 100 = 6561 mod 100 = 61 .

Fermat’s Little Theorem can be used as test of primality, or rather as


test of non-primality. Example: Prove that 716311796279 is not prime.
Answer : We have that2
2716311796279−1 = 2716311796278 ≡ 127835156517 (mod 716311796279) .
But if 716311796279 were prime, 2716311796279−1 would be congruent to
1 modulo m. Warning: Note that am−1 ≡ 1 (mod m) does not imply
that m is prime; the only thing that we can say is that if am−1 �≡ 1
(mod m) (and gcd(a, m) = 1) then m is not prime.
2Given a power ax , there is an efficient method (easy to implement as an algo-
rithm) to reduce ax modulo m.
6 MIGUEL A. LERMA

4. The Chinese Remainder Theorem. Let m1 , m2 , . . . , mk be pair-


wise relatively prime integers greater than or equal to 2. The following
system of congruences


 x ≡ r1 (mod m1 )

x ≡ r2 (mod m2 )

 ...
 x ≡ r (mod m )
k k

has a unique solution modulo M = m1 m2 . . . mk .


We can find a solution to that system in the following way. Let Mi =
M/mi , and si = the inverse of Mi in Zmi . Then
x = M1 s1 r1 + M2 s2 r2 + · · · + Mk sk rk
is a solution of the system.
Example: A group of objects can be arranged in 3 rows leaving 2 left,
in 5 rows leaving 4 left, and in 7 rows leaving 6 left. How many objects
are there? Answer : We must solve the following system of congruences:

 x ≡ 2 (mod 3)
x ≡ 4 (mod 5)
 x ≡ 6 (mod 7)

We have: M = 3 · 5 · 7 = 105, M1 = 105/3 = 35 ≡ 2 (mod 3),


M2 = 105/5 = 21 ≡ 1 (mod 5), M3 = 105/7 = 15 ≡ 1 (mod 7); s1 =
“inverse of 2 in Z3 ” = 2, s2 = “inverse of 1 in Z5 ” = 1, s3 = “inverse
of 1 in Z7 ” = 1. Hence the solution is
x = 35 · 2 · 2 + 21 · 1 · 4 + 15 · 1 · 6 = 314 ≡ 104 (mod 105) .
Hence, any group of 104 + 105 k objects is a possible solution to the
problem.

You might also like