Efficiency and the Euclidean Algorithm

Click For Summary
SUMMARY

The discussion focuses on the efficiency of the Euclidean Algorithm, specifically proving that every two steps reduce the remainder by at least half, expressed as r_(i+2) < (1/2)r_i for all i. The proof utilizes the relationship r_i = q_(i+2) x r_(i+1) + r_(i+2) and establishes that if b > 0, then q_(i+2) is always greater than or equal to 1, ensuring the validity of the proof. Concerns were raised regarding the implications of negative values for a and b, but the consensus is that using absolute values maintains the integrity of the algorithm.

PREREQUISITES
  • Understanding of the Euclidean Algorithm
  • Familiarity with mathematical induction
  • Knowledge of properties of greatest common divisors (gcd)
  • Basic algebraic manipulation skills
NEXT STEPS
  • Study the properties of the Euclidean Algorithm in detail
  • Learn about mathematical induction and its applications in proofs
  • Explore the implications of negative integers in algorithmic proofs
  • Investigate the relationship between gcd and the Euclidean Algorithm
USEFUL FOR

Mathematicians, computer scientists, and students studying algorithms or number theory who seek to deepen their understanding of the Euclidean Algorithm's efficiency and its mathematical foundations.

Buri
Messages
271
Reaction score
0
1. Question

Let b = r_0, r_1, r_2,... be the successive remainders in the Euclidean algorithm applied to a and b. Show that every two steps reduces the remainder by at least one half. In other words, verify that r_(i+2) < (1/2)r_i for every i = 0,1,2,...

2. Attempt at a solution

I take an arbitrary 'line' in the euclidean algorithm which is of the following form:

r_i = q_(i+2) x r_(i+1) + r_(i + 2)

So clearly I have the following:

1 > r_(i+2) / r_(i+1), because r_0 > r_1 > r_2 ...

Now q_(i+2) >= 1. So we have:

q_(i+2) > r_(i+2) / r_(i+1)

Which implies:

q_(i+2) x r_(i+1) > r_(i+2)
q_(i+2) x r_(i+1) + r_(i+2) > 2r_(i+2)

But q_(i+2) x r_(i+1) + r_(i+2) = r_i. Thus, r_i > 2r_(i+2) which is what I wanted to prove.

3. Comments

However, I see possible problems with this proof. To begin with, the Euclidean Algorithm I am working with doesn't explicitly state that a > 0 or b > 0, but in this question it seems to be implicitly be saying that b > 0 (and says nothing of a) because b = r_0 which must be greater than 0. But if a were negative and b positive I could have a q which is not necessarily positive (more specifically, not greater or equal to 1) which would mess up my proof. But since it seems to be that b > 0 then q's will always be strictly greater than 1, even though it could be possible that the first q could turn out to be negative (for example in, a = -9 and b = 4 in which case q = -3 and r = 3). See what I mean?

I would prefer if people could help me sort this proof out rather than give me ideas of how to go about it differently.I'd appreciate the help! :)
 
Last edited:
Physics news on Phys.org
Anyone?
 
I know you asked for people not to give you a different method. However, it seems to me you're doing a lot more work than you need to.

Since ri=qi+2ri+1+ri+2 and qi+2≥1, you have ri≥ri+1+ri+2. Then since ri+1>ri+2, you have ri>ri+2+ri+2⇔ri>2ri+2⇔ri+2<1/2ri.

Further, since gcd(a,b)=gcd(-a,b)=gcd(a,-b)=gcd(-a,-b), you may use the absolute values of a and b while using the algorithm, ensuring that every q is always greater or equal to 1.
 
Last edited:

Similar threads

  • · Replies 4 ·
Replies
4
Views
4K
  • · Replies 0 ·
Replies
0
Views
566
  • · Replies 21 ·
Replies
21
Views
2K
  • · Replies 4 ·
Replies
4
Views
3K
Replies
15
Views
2K
Replies
1
Views
2K
  • · Replies 5 ·
Replies
5
Views
4K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 11 ·
Replies
11
Views
3K
  • · Replies 12 ·
Replies
12
Views
2K