Abstract
The binary algorithm is a variant of the Euclidean algorithm that performs well in practice. We present a quasi-linear time recursive algorithm that computes the greatest common divisor of two integers by simulating a slightly modified version of the binary algorithm. The structure of our algorithm is very close to the one of the well-known Knuth-Schönhage fast gcd algorithm; although it does not improve on its O(M(n) log n) complexity, the description and the proof of correctness are significantly simpler in our case. This leads to a simplification of the implementation and to better running times.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Brent, R.P.: Twenty years’ analysis of the binary Euclidean algorithm. In: Roscoe, A.W., Davies, J., Woodcock, J. (eds.) Millenial Perspectives in Computer Science: Proceedings of the 1999 Oxford-Microsoft Symposium in honour of Professor Sir Antony Hoare, Palgrave, New York, pp. 41–53 (2000)
Brent, R.P., Kung, H.T.: A systolic VLSI array for integer GCD computation. In: Hwang, K. (ed.) Proceedings of the 7th Symposium on Computer Arithmetic (ARITH-7), IEEE CS Press, Los Alamitos (1985)
Granlund, T.: GNU MP: The GNU Multiple Precision Arithmetic Library, 4.1.2 edn. (2002), http://www.swox.se/gmp/#DOC
Knuth, D.: The analysis of algorithms. Actes du Congrès International des Mathématiciens de 3, 269–274 (1970); Gauthiers-Villars, Paris ( 1971)
Montgomery, P.L.: Modular multiplication without trial division. Math. Comp. 44(170), 519–521 (1985)
Schönhage, A.: Schnelle Berechnung von Kettenbruchentwicklungen. Acta Informatica 1, 139–144 (1971)
Schönhage, A., Strassen, V.: Schnelle Multiplikation grosser Zahlen. Computing 7, 281–292 (1971)
Shand, M., Vuillemin, J.E.: Fast implementations of RSA cryptography. In: Swartzlander, E.E., Irwin, M.J., Jullien, J. (eds.) Proceedings of the 11th IEEE Symposium on Computer Arithmetic (ARITH-11), pp. 252–259. IEEE Computer Society Press, Los Alamitos (1993)
Vallée, B.: Gauss’ algorithm revisited. Journal of Algorithms 12, 556–572 (1991)
Vallée, B.: Dynamical analysis of a class of Euclidean algorithms. Th. Computer Science 297(1-3), 447–486 (2003)
von zur Gathen, J., Gerhard, J.: Modern Computer Algebra, 2nd edn. Cambridge University Press, Cambridge (2003)
Yap, C.K.: Fundamental Problems in Algorithmic Algebra. Oxford University Press, Oxford (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Stehlé, D., Zimmermann, P. (2004). A Binary Recursive Gcd Algorithm. In: Buell, D. (eds) Algorithmic Number Theory. ANTS 2004. Lecture Notes in Computer Science, vol 3076. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24847-7_31
Download citation
DOI: https://doi.org/10.1007/978-3-540-24847-7_31
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-22156-2
Online ISBN: 978-3-540-24847-7
eBook Packages: Springer Book Archive