12. Extensions of GCD
I swear by the even and the odd.
Quran, Surah Al-Fajr
Programmers often assume that since a data structure or algorithm is in a textbook or has been used for years, it represents the best solution to a problem. Surprisingly, this is often not the case—even if the algorithm has been used for thousands of years and has been worked on by everyone from Euclid to Gauss. In this chapter we’ll look at an example of a novel solution to an old problem—computing the GCD. Then we’ll see how proving a theorem from number theory resulted in an important variation of the algorithm still used today.
12.1 Hardware Constraints and a More Efficient Algorithm
In 1961, an Israeli Ph.D. student, Josef “Yossi” Stein, was working on something ...