Section 3.4 The Operation \(mod\)
In this section we investigate the properties of the operation \(\fmod\) and show how these can be applied. The properties will seem awkward at first but will turn out to be powerful tools in computations when numbers get larger. In the video in Figure 3.4.1 we give an overview of the properties of \(\fmod\) covered in this section.
Before we get to the properties we recall how to compute \(\fmod\) and make some observations about the behavior of \(\fmod\text{.}\)
Subsection 3.4.1 Computing \(\fmod\)
Recall that \(a\fmod b\) is the remainder of the division of \(a\) by \(b\) (see Definition 3.2.17). We have established that the division algorithm (Algorithm 3.2.2 and Algorithm 3.2.10) produces the quotient and remainder of a particular division as its output values. As an alternative method we have presented (calculator) long division in Strategy 3.3.1.
In the following examples we compute a remainder by inspection, with the division algorithm, and with (calculator long division).
Example 3.4.2. Three methods for computing \(41\fmod 13\).
We compute \(41\fmod 13\) in three different ways. The number \(41 \fmod 13\) is the remainder of the division of \(41\) by \(13\text{.}\)
-
Method 1 the trained eye.
The largest multiple of 13 that is less than 41 is 39. The difference between 41 and 39 is 2, this is the remainder of the division of 41 by 13. Thus 41 mod 13 = 2.
-
Method 2 calculator long division.
We have \(41\div 13=3.153\dots\text{.}\) So the quotient from the dicision of \(41\) by \(13\) is the largest integer that is less than \(3.153\dots\text{,}\) which is \(3\text{.}\) The remainder is \(41-3\cdot 13 = 41-39 = 2\text{.}\) Thus \(41 \mod 13 = 2\text{.}\)
-
Method 3 division algorithm.
We subtract \(13\) until we get a number in the remainder target range from \(0\) to \(13-1=12\text{:}\)
\begin{align*} 41-13\amp =28\\ 28-13\amp =15\\ 15-13\amp =2 \end{align*}As \(2\) is in the remainder target range from \(0\) to \(13-1=12\) it is the remainder. Thus 41 mod 13 = 2.
Example 3.4.3. Three methods for computing \(-41\fmod 13\).
We compute \(-41\fmod 13\) in three different ways. The number \(-41 \fmod 13\) is the remainder of the division of \(-41\) by \(13\text{.}\)
-
Method 1 the trained eye.
The smallest multiple of \(13\) that is greater than \(41\) is \(52\text{.}\) The sum of \(-41\) and \(52\) is \(11\\text{,}\) this is the remainder of the division of \(-41\) by \(13\text{.}\) Thus \(-41 \cmod 13 = 11\text{.}\)
-
Method 2 calculator long division.
We have \(-41\div 13=-3.153\dots\text{.}\) So the quotient of the division of \(41\) by \(13\) is the largest integer that is less than \(-3.153\dots\) which is \(-4\text{.}\) The remainder is \(-41+4\cdot 13 = -41+52 = 11\text{.}\) Thus \(-41 \cmod 13 = 11\text{.}\)
-
Method 3 division algorithm.
We add \(13\) until we get a number in the remainder target range from \(0\) to \(13-1=12\text{:}\)
\begin{align*} -41+13\amp =-28\\ -28+13\amp =-15\\ -15+13\amp =-2\\ -2+13\amp =11 \end{align*}As \(11\) is in the remainder target range from \(0\) to \(13-1=12\) it is the remainder. Thus -41 mod 13 = 11.
The three methods are also subject of the video in Figure 3.4.4.
Subsection 3.4.2 Some observations
An interesting pattern occurs when we compute the remainder of consecutive integers from the divisions by the same number. As illustrated in the following two examples, the remainders repeat in a periodic fashion.
Example 3.4.5. Integers modulo three.
Example 3.4.6. Integers modulo two.
The remainder of division by \(2\) is an integer that is greater than or equal to \(0\) and less than \(2\text{,}\) that is, it is either \(0\) or \(1\text{.}\) We use this to define two familiar terms.
Definition 3.4.7.
An integer \(n\) is even means that \(n \fmod 2 = 0\text{.}\)
Definition 3.4.8.
An integer \(n\) is odd means that \(n \fmod 2 = 1\text{.}\)
Subsection 3.4.3 Properties of \(\fmod\)
We now investigate some properties of the operation \(\fmod\text{.}\) In particular, we are interested in the behavior of \(\fmod\) in sums and products.
To get an idea how \(\fmod\) behaves under addition we look at an example.
Example 3.4.9. Addition and \(\fmod\).
We have
Let's try we whether we can distribute \(\fmod\) over the addition.
We see that
But we notice that \(9\fmod 7=2\text{.}\) So computing \(\fmod 7\) once more will yield equality:
So, we have
We build upon our observations in the example to formulate a theorem about addition in combination with the operation \(\fmod\text{.}\)
Theorem 3.4.10.
Let \(a\) and \(b\) be integers, and let \(m\) be a natural number. Then
Proof.
We have that
With the notation above, we have
\((a+b)\fmod m\) \(=\bigl(((a \fmod m)+(s\cdot m))+((b \fmod m)+(t\cdot m))\bigr)\fmod m\) \(=\bigl((a \fmod m)+(b \fmod m)+(s+t)\cdot m\bigr)\fmod m\) \(=\bigl((a \fmod m)+(b \fmod m)\bigr)\fmod m\)
Example 3.4.11. Addition with and without Theorem 3.4.10.
We illustrate Theorem 3.4.10 with an example. We compute \((10+20)\fmod 7\) in two ways, namely directly and applying the theorem.
\(\displaystyle (10+20)\fmod 7 = 30 \fmod 7 = 2\)
\((10+20)\fmod 7\)\(= \left((10 \fmod 7)+(20 \fmod 7)\right) \fmod 7\)\(= (3+6)\fmod 7\)\(= 9\fmod 7 =2\)
Using the theorem may seem more awkward right now. When calculations get more involved its value will become more apparent. The theorem also can be used to evaluate expressions when we only know the remainders.
Problem 3.4.12. Apply Theorem 3.4.10.
Let \(a\) and \(b\) be integers with \(a\fmod 113=29\) and \(b\fmod 113=100\text{.}\) Compute \((a+b)\fmod 113\text{.}\)
By Theorem 3.4.10 we have
As we know that \(a\fmod 113=29\) and \(b\fmod 113=100\) we can replace \(a\fmod 113\) by \(29\) and \(b\fmod 113\) by \(100\text{.}\) Copying what we have so far and evaluating we get:
\((a+b)\fmod 113\) \(=\left((a\fmod 113)+(b\fmod 113)\right) \fmod 113\) \(= (29+100)\fmod 113\) \(= 129 \fmod 113 = 16\)
.Next we explore how multiplication and \(\fmod\) interact.
Example 3.4.13. Multiplication and \(\fmod\).
We have
Let's try we whether we can distribute \(\fmod\) over the addition.
We see that
But we notice that \(20\fmod 7=6\text{.}\) So computing \(\fmod 7\) once more will yield equality:
So, we have
The observations made in the example suggests that a theorem ananlogous to Theorem 3.4.10 holds for multiplication. Indeed we have:
Theorem 3.4.14.
Let \(a\) and \(b\) be integers, and let \(m\) be a natural number. Then
Proof.
There are integers \(s\) and \(t\) such that
and
Thus \((a\cdot b)\fmod m\) \(=\bigl(((a \fmod m)+s\cdot m)\cdot ((b \fmod m)+t\cdot m)\bigr)\fmod m\) \(= \bigl((a \fmod m)\cdot(b \fmod m)\) \(\qquad + (a \fmod m) \cdot t\cdot m + s\cdot m \cdot (b \fmod m) + s\cdot m \cdot t\cdot m \bigr) \fmod m\) \(=\bigl((a \fmod m)\cdot(b \fmod m)\) \(\qquad +\bigl((a \fmod m) \cdot t + s \cdot (b \fmod m) + s\cdot m \cdot t\bigr)\cdot m\bigr) \fmod m\) \(=\bigl((a \fmod m)\cdot(b \fmod m)\bigr)\fmod m\)
In Checkpoint 3.4.15 decide whether statements about \(\fmod\) are true or false. If the statement is false give a counterexample, otherwise leave the box empty.
Checkpoint 3.4.15. Properties of \(\fmod\).
Decide whether the following statements are true or false. If the statement is false give a counterexample, otherwise leave the box empty.
(1)
select
The statement is true
The statement is false
Counterexample: The statement is false, because for the integer \(a=\) we have \((a\cdot 5) \bmod 6 \ne \left((a \bmod 6) \cdot ( 5 \bmod 6)\right) \bmod 6\text{.}\)
(2)
select
The statement is true
The statement is false
Counterexample: The statement is false, because for the integer \(a=\) we have \((a+ 5) \bmod 20 \ne (a \bmod 20) +( 5 \bmod 20)\text{.}\)
(3)
select
The statement is true
The statement is false
Counterexample: The statement is false, because for the integer \(a=\) we have \((a+ 3) \bmod 6 \ne a+ 3\text{.}\)
Subsection 3.4.4 Applying the properties of \(\fmod\)
Theorem 3.4.10 and Theorem 3.4.14 are particularly useful when computing \(\fmod\) with larger numbers.
Example 3.4.16. Multiplication with and without Theorem 3.4.14.
We compute \((20\cdot 10)\fmod 7\) in two ways.
-
When we compute
\begin{equation*} (10\cdot 20)\fmod 7=200\fmod 7=4\text{,} \end{equation*}we have to find the remainder of the division of \(200\) by \(7\text{.}\)
-
With Theorem 3.4.14 we get
\((20\cdot 10)\fmod 7\) \(=\left((20\fmod 7)\cdot(10\fmod 7)\right)\fmod 7\) \(=(6\cdot 3)\fmod 7=18\fmod 7=4\)
which is longer but easier to compute, since we can easily find \(20\fmod 7\) and \(10\fmod 7\text{.}\)
Example 3.4.17. Applying Theorem 3.4.10 and Theorem 3.4.14.
We compute \((61+(9\cdot 12))\fmod 7\text{.}\) We first evaluate the inner parenthesis and then the outer parenthesis. By Theorem 3.4.10 and Theorem 3.4.14 we have
\(\left(61+(9\cdot 12)\right)\fmod 7\) \(=\left(61\fmod +\left((9 \fmod 7)\cdot (12 \fmod 7)\right)\fmod 7\right)\fmod 7\) \(= \left(5+\left((2\cdot 5)\fmod 7\right)\right)\fmod 7\) \(= \left(5+(10 \fmod 7)\right)\fmod 7\) \(=(5+3)\fmod 7 = 8 \fmod 7=1\)
Example 3.4.18. Smaller but more calculations.
With Calculator long division we compute:
\(\displaystyle 8082 \fmod 17 = 7\)
\(\displaystyle 4540 \fmod 17= 1\)
\(\displaystyle 4496 \fmod 17= 8\)
Knowing these numbers and applying Theorem 3.4.10 and Theorem 3.4.14 we find the following without having to add or multiply large numbers.
\((8082\cdot 4540) \fmod 17 \) \(= \left((8082\fmod 17)\cdot(4540\fmod 17)\right) \fmod 17\) \(=(7\cdot 1)\fmod 17 = 7\)
\((4540+4496) \fmod 17 \) \(= \left((4540\fmod 17)\cdot(4496\fmod 17)\right) \fmod 17 \) \(= (1+8) \fmod 17 = 9\)
\((8082\cdot 4540 + 4496) \fmod 17\) \(= \left(\left((8082\cdot 4540) \fmod 17 \right)+ (4496\fmod 17)\right)\fmod 7 \) \(= (7+8)\fmod 17 = 0\)
\((8082+4540+4496)\fmod 17 \) \(= \left((8082\fmod 17)+\left((4540+4496) \fmod 17\right)\right)\fmod 17 \) \(= (7+9)=16 \fmod 17=16\)
In Checkpoint 3.4.19 apply properties the properties of \(\fmod\) to conduct computations modulo a given integer, when the values are only known modulo that integer.
Checkpoint 3.4.19. Apply properties of \(\fmod\).
The remainder when \(a\) is divided by \(6\) is \(0\) and the remainder when \(b\) is divided by \(6\) is \(2\text{.}\)
That is,
\(a\text{ mod } 6 = 0\)
and
\(b\text{ mod } 6 = 2\text{.}\)
Find:
\((a + a)\text{ mod } 6\) =
\((a+b)\text{ mod } 6\) =
\((a\cdot b)\text{ mod } 6\) =
\((a+2)\text{ mod } 6\) =
\((3\cdot b)\text{ mod } 6\) =
In the following me make use of the decimal representation of numbers, to find remainders of divisions of numbers that would be to large to handle for most calculators. If you need a refresher on decimal numbers, flip ahead and read Section 11.1.
Problem 3.4.20. \(23829913346008023471 \fmod 100\).
Find \(23829913346008023471 \fmod 100\text{.}\)
First notice that
With Theorem 3.4.10 and \(100\fmod 100=0\) we get:
\(23829913346008023471 \fmod 100 \) \(= ((238299133460080234\cdot 100)+71) \fmod 100\) \(= (((238299133460080234\cdot 100) \fmod 100)+(71 \fmod 100))\fmod 100\) \(= (0 + 71) \fmod 100 = 71\fmod 100= 71\)
Problem 3.4.21. \(23829913346008023471 \fmod 1000\).
Find \(23829913346008023471 \fmod 1000\text{.}\)
First notice that
With Theorem 3.4.10 and \(1000\fmod 1000=0\) we get:
\(23829913346008023471 \fmod 1000 \) \(= ((23829913346008023\cdot 1000)+471) \fmod 1000\) \(= (((23829913346008023\cdot 1000) \fmod 1000)+(471 \fmod 1000))\fmod 1000\) \(= (0 + 471) \fmod 1000 = 471\fmod 1000= 471\)
Problem 3.4.22. \(23829913346008023471 \fmod 20\).
Find \(23829913346008023471 \fmod 20\text{.}\)
The smallest power of \(10\) that is divisible by \(20\) is \(10^2=100\text{.}\)
Now notice that
With Theorem 3.4.10 and \(100\fmod 20=0\) we get:
\(23829913346008023471 \fmod 20 \) \(= ((238299133460080234\cdot 100)+71) \fmod 20\) \(= (((238299133460080234\cdot 100) \fmod 20)+(71 \fmod 20))\fmod 20\) \(= (0 + 71) \fmod 20 = 71\fmod 20= 11\)
Problem 3.4.23. \(23829913346008023471 \fmod 5\).
Find \(23829913346008023471 \fmod 5\text{.}\)
The smallest power of \(10\) that is divisible \(5\) is 10. So we write
As \(10\fmod 5=0\) we immediately see that
Try for yourself in Checkpoint 3.4.24.
Checkpoint 3.4.24. Large numbers and \(\fmod\).
We can write \(2011317099 =\) \(\cdot 100 +\)
Because \(99 \bmod 2\) = we have \(2011317099 \bmod 2\) = .
Because \(99 \bmod 4\) = we have \(2011317099 \bmod 4\) = .
Because \(99 \bmod 5\) = we have \(2011317099 \bmod 5\) = .
Because \(99 \bmod 10\) = we have \(2011317099 \bmod 10\) = .
Because \(99 \bmod 20\) = we have \(2011317099 \bmod 20\) = .
Because \(99 \bmod 25\) = we have \(2011317099 \bmod 25\) = .
Because \(99 \bmod 100\) = we have \(2011317099 \bmod 100\) = .
Example: \(1234567 = 12345\cdot 100 + 67\)
The numbers \(2\text{,}\) \(4\text{,}\) \(5\text{,}\) \(10\text{,}\)\(20\text{,}\) and \(25\) divide \(100\text{.}\)
\(20113170\)
\(99\)
\(1\)
\(1\)
\(3\)
\(3\)
\(4\)
\(4\)
\(9\)
\(9\)
\(19\)
\(19\)
\(24\)
\(24\)
\(99\)
\(99\)