n mathematics, the Euclidean algorithm,[note 1] or Euclid's algorithm, is an efficient method for computing the greatest common divisor (GCD) of two integers (numbers), the largest number that divides them both without a remainder. It is named after the ancient Greek mathematician Euclid, who fi...
n mathematics, the Euclidean algorithm,[note 1] or Euclid's algorithm, is an efficient method for computing the greatest common divisor (GCD) of two integers (numbers), the largest number that divides them both without a remainder. It is named after the ancient Greek mathematician Euclid, who first described it in his Elements (c. 300 BC). It is an example of an algorithm, a step-by-step procedure for performing a calculation according to well-defined rules, and is one of the oldest algorithms in common use. It can be used to reduce fractions to their simplest form, and is a part of many other number-theoretic and cryptographic calculations.
The Euclidean algorithm is based on the principle that the greatest common divisor of two numbers does not change if the larger number is replaced by its difference with the smaller number. For example, 21 is the GCD of 252 and 105 (as 252 = 21 × 12 and 105 = 21 × 5), and the same number 21 is also the GCD of 105 and 252 − 105 = 147. Since this replacement reduces the larger of the two numbers, repeating this process gives successively smaller pairs of numbers until the two numbers become equal. When that occurs, they are the GCD of the original two numbers. By reversing the steps or using the extended Euclidean algorithm, the GCD can be expressed as a linear combination of the two original numbers, that is the sum of the two numbers, each multiplied by an integer (for example, 21 = 5 × 105 + (−2) × 252). The fact that the GCD can always be expressed in this way is known as Bézout's identity.
n mathematics, the Euclidean algorithm,[note 1] or Euclid's algorithm, is an efficient method for computing the greatest common divisor (GCD) of two integers (numbers), the largest number that divides them both without a remainder. It is named after the ancient Greek mathematician Euclid, who first described it in his Elements (c. 300 BC). It is an example of an algorithm, a step-by-step procedure for performing a calculation according to well-defined rules, and is one of the oldest algorithms in common use. It can be used to reduce fractions to their simplest form, and is a part of many other number-theoretic and cryptographic calculations.
The Euclidean algorithm is based on the principle that the greatest common divisor of two numbers does not change if the larger number is replaced by its difference with the smaller number. For example, 21 is the GCD of 252 and 105 (as 252 = 21 × 12 and 105 = 21 × 5), and the same number 21 is also the GCD of 105 and 252 − 105 = 147. Since this replacement reduces the larger of the two numbers, repeating this process gives successively smaller pairs of numbers until the two numbers become equal. When that occurs, they are the GCD of the original two numbers. By reversing the steps or using the extended Euclidean algorithm, the GCD can be expressed as a linear combination of the two original numbers, that is the sum of the two numbers, each multiplied by an integer (for example, 21
Size: 389.88 KB
Language: en
Added: Jul 21, 2024
Slides: 38 pages
Slide Content
Quiz 2 key
The Euclidean Algorithm
(long division)
First: The Division algorithm
If a and b are integers with b <> 0, then there are unique integers q and
r so that a = q b + r and 0 <= r < |b|
Example 3745 = __q__ 45 + __r___
Long division:
Calculator:
Divisor, common divisor, greatest
common divisor
b is a divisorof a if a = b*q for some integer q
b is common divisorof a and c if _____
b is the greatest common divisorof a and c if ____
Arayabhata-Euclid’s algorithm: How to find
gcd(a,b), the greatest common divisor of a and b
based on a single observation: if a = b q + r, then
any divisor of a and b is also a divisor of r, and any divisor
of b and r is also a divisor of a, so gcd(a,b) = gcd(b,r)
Euclid algorithm: use the division algorithm repeatedly
To reduce the problem to one you can solve.
Example: gcd(55,35)
55 = 35*1 + 20 so gcd(55,35) = gcd(35,20)
35 = 20*1 + 15 so gcd(35,20) = gcd(20,15)
20 = 15*1 + 5 done gcd(55,35) = 5
2 columns of the arayabhata table: the
columns of quotients and remainders
Writing gcd(a,b) as a linear combination of a and b
gcd(55,35) = 5 = 55*x + 35*y : Solve for x and y.
The 1
st
column of thearayabhata table
An application
Problem: Given a 3 pint can, a 5 pint can, a large tank of
water, and a large empty tank, how can we get exactly 1
pint of water into the empty tank?
We will talk about this on Wednesday
Division algorithm for polynomials in x.
If a(x) and b(x) are polynomials in x then there are unique polynomials
q(x) and r(x) so that a(x) = q(x)*b(x) + r(x) where
r(x) = 0 or deg(r(x)) < deg(b(x))
Example: x^4 = __q(x)___ (x^2 -1) + __r(x)___
Long division:
Divisor, common divisor, and gcd for polynomials
in x
b(x) is a divisorof a(x) if ____
c(x) is a common divisor of a(x) and b(x) if
___
c(x) is a greatest common divisor
Recall 4
th
grade
If A and B are integers (whole numbers) then we say that
B divides Aif there is an integer Q such that A = BQ
Examples:
•2 divides 6 since there is an integer (3) such that
6 = 2*3
•1 divides any 291 since there is a number (291) such that
291 = 219*1
•If B is any number then B divides 0 since there is a number (0)
such that 0 = B*0
•Another way to say that B divides A is to say that B is a factor of
A
More examples
•3 does not divide 5 since there is no
whole numberQ such that 5 = 3*Q
•9 does not divide 10 since there is no
whole numberQ such that 10 = 9*Q
Visualizing division
6
6 = 2*3
7
2 divides 6
7 = 2*3 + 1 2 does not divide 7
Division Algorithm
7> 2
7 –1*2= 5 > 2
7 –2-2= 7 –2*2= 3> 2
7 –2-2 –2 = 7 –3*2= 1< 2
A and B are whole numbers and B is not 0. To determine if B divides A do the
following:
i. If A = 0 then B divides A
ii. If 0 < A < B then B does not divide A
ii. If B <= A then replace A by B –A and repeat i.
The process subtracts B from A as many times as it can. At some point A is reduced
to 0 or B cannot be subtracted from what remains. The effect is to write
A = BQ + R with R = 0 or 0 < R < B
R is called the remainderwhen A is divided by B. Q is called the quotient.
(step 1)
(step2)
(step 3)
(step 4)
Division Algorithm
If A and B are integers with B not zero then
there are unique integers Q and R such
that
A = BQ + R with 0 <= R < |B|
Note this allows A and B to be negative
5 = (-2)(-2) + 1 0 < 1 <|-2|
-7 = (-2)(4) + 1 0 < 1<|-2|
Works Exactly the Same for
Polynomials
•B(x) divides A(x) if there is a Q(x) so that
A(x) = B(x)*Q(x)
•Every polynomial divides 0
0 = B(x)*0
•Any non-zero number divides any polynomial
(e.g. A(x) = 7*( A(x) )
•x –1 divides since 1
7 x
2
1 x
2
1( )x1( )x1
Recall that if f(x) and g(x) are not 0 then
degree f(x)*g(x) = degree f(x) + degree g(x)
This says that if B(x) is a factor of A(x) then
degree B(x) degree A(x)
Example: x does not divide 1 since degree (x) = 1 which is
strictly less than the degree of 1 (which is 0). 5x
3
3x1
does not divide x
2
1
Division Algorithm for Polynomials
If A(x) and B(x) are polynomials with B not
zero then there are uniquepolynomials
Q(x) and R(x) such that
A(x) = B(x)Q(x) + R(x) with R(x)=0 or
degree R(x) < degree B(x)
Note that R(x) = 0 is another way to say that
B(x) divides A(x).
The Long Division of Polynomials is
a Way to calculate Q(x) and R(x)
Observations:
To calculate Q(x) and R(x) it suffices to find R(x) since
we can divide A(x)-R(x) by B(x) to get R(x)
The uniqueness of the remainder says if in anyway you arrange to
write A(x) = B(x)K(x) + P(x) where P(x) is zero or of smaller degree
than B(x) then it must be that P(x) is the R(x) you would get by long
division.
For instance : so the remainder when
is divided by x-1 will be x.
Also so
which says that the remainder when is divided by x -1 is 1. x
2
x( )x1x x
2 ( )x1( )1xx
2
x
3
1 x
3
( )x1( )1xx
2
1 x
2
Algebra of Remainders
(modular arithmetic)
Principle: When calculating the remainder when an algebraic expression of
polynomials is divided by a polynomial B, one can replace any factor or
summand by its remainder upon division by B.
The remainder upon dividing the sum of two polynomials by B is the same as the
remainder if either (or both) terms is first replaced by its remainder (or any
polynomial that has the same remainder).
The remainder upon dividing the product of two polynomials by B is the same as
the remainder if either (or both) terms is first replaced by its remainder (or any
polynomial that has the same remainder).
Calculate the remainder upon division of
byx
2
x1
First note that since the remainder of is x
2
( )x
2
x11( )1x x
2 1x x
4
3x
3
x1 x
4
3x
3
x1 ()x
2
2
3xx
2
x1
We can replace by its remainder 1-x x
2 x
4
3x
3
x1 ( )1x
2
3x( )1xx1
= 12xx
2
3x3x
2
x1
= 4x4x
2
Now we can replace again to get x
2 8x4
Similarly
Calculate the remainder when is divided by x
4 x
2
2x1
As with the previous example the remainder of is 2x+1
the remainder of is the same as the remainder of orx
2 x
4 ( )2x1
2 4x
2
4x1
=4( )2x14x1 12x5
This says for some polynomial Q(x)x
4
( )x
2
2x1()Qx12x5
is a root of . What is
Replace x by in 12 x
2
2x1 ( )12
4 x
4
( )x
2
2x1()Qx12x5 12
Since it is a root of we have or x
2
2x1 ( )12
4
12( )125 17122
The Greatest Common Divisor (GCD)
(also called GCFactor)
•The GCD of two integers A1 and A2 is the
largest integer that divides both.
–Examples: gcd(n,1)=1 for any n
–gcd(n,0) = |n| if n is not 0
•(gcd(0,0) does not exist
•GCD 12 and 20
–Factors of 12 = {-12,-6,-4,-3,-2,-1,1,2,3,4,6,12}
–Factors of 20 = {-20,-10,-5,-4,-2,-1,1,2, 4, 5,10,20}
–Common factors = {-4, -2,-1,1,2,4}
–Greatest common factor = 4
•Not a practical for large numbers
•146057167872 has 1056 positive factors
•5228296875 has 120 positive factors
•There is no known way to find a single
factor (other than itself and 1) of a
randomly chosen number in a “small”
number of steps.
•We can find the GCD of pairs of HUGE
numbers in a small number of steps.
Theorem: If A, B, d and n are numbers and
d divides both A and B then it also divides
both A and B+/-n*A
Proof: A = d*r
B = d*s
n*A = d*(n*r)
B + n*A = d*s +/-d*(n*r) = d*(s +/-n*r)
Theorem: GCD(A,B) = GCD(A,B+/-n*A)
Using this over and over …
GCD(146057167872, 5228296875) =
GCD(146057167872 –27* 5228296875, 5228296875) =
GCD(4893152247, 5228296875) =
GCD(5228296875-1*4893152247, 4893152247) =
GCD(335144628, 4893152247 ) =
GCD(4893152247-14* 335144628,335144628 ) =
GCD(201127455, 335144628) =
GCD( 201127455, 335144628-1*201127455 ) =
GCD( 201127455, 134017173) =
GCD( 201127455 –1*134017173, 134017173) =
GCD(67110282, 134017173) =
GCD(67110282, 134017173 –1*67110282) =GCD(67110282,66906891)=
GCD(67110282-328* 66906891,66906891)=GCD(203391, 66906891)=
GCD(203391, 66906891-328*203391) =GCD(203391,194634) =
GCD(203391-1*194634, 194634) = GCD(8748, 194634) =
GCD(8748, 194634-22*8748) = GCD(8748,2187) = GCD(8748-4*2187, 2187) = GCD(2187,0)
So we calculated the GCD without factoring. It has to stop because each time we
subtracted a multiple of the smaller from the larger so that the resulting number is
even smaller. Process has to eventually get to 0.
Euclid Algorithm
To find the gcd of numbers A1 and A2 with A1 > A2 >= 0
a.If A2 = 0 then gcd = A1
b.If A2 > 0 then A1 = A2 q2 + A3 with A2>A3 >=0
c.Replace A1 by A2, A2 by A3 and go to step a.
This is exactly what we did in the previous example.
Example: gcd(120,85)
120 = 85*1 + 35
85 = 35*2 + 15
35 = 15*2 + 5
15 = 5*3 + 0 gcd = 5 (gcd is the last non-zero remainder)
Same thing works with polynomials
Note we are
differing from the
book slightly. The
book would ask that
the gcd be monic.
That is it wants the
gcd in this problem
to be x-2 so it
would put a ¼ at
the lower left
instead of 1.
"Answers""Polynomials""Divisions"
1x 5x24x
2
x
3
"Begin"
1 x
2
5x6 1x
0 4x8
x
4
3
4
1 0 "done" ( )5x24x
2
x
3
1(1+x)( )x
2
5x6 4x8
Multiply through by ¼ to write x –2 as a combination of 5x24x
2
x
3 x
2
5x6
and
1*( ) -( )*( ) = -3 -3x
"Answers" "Polynomials""Divisions"
3x
2
5
2
38x
2
8x3x
3
"Begin"
1 2x
2
2x
3x
2
5
2
0 33x
2x
3
1 0 "done" 38x
2
8x3x
3
3x
2
5
2 2x
2
2x
Lead coefficient of the gcd is -3.
Monic gcd is (-3 -3x)/(-3) = 1+x. Divide both sides by -3 to get monic gcd as a
linear combination.