It is possible to perform Multiplication of Large Numbers in (many) fewer operations than the usual brute-force technique of ``long multiplication.'' As discovered by Karatsuba and Ofman (1962), Multiplication of two -Digit numbers can be done with a Bit Complexity of less than using identities of the form
(1) |
As a concrete example, consider Multiplication of two numbers each just two ``digits'' long in base ,
(2) | |||
(3) |
(4) |
(5) | |||
(6) | |||
(7) |
(8) |
(9) | |||
(10) | |||
(11) |
Now consider four-``digit'' numbers
(12) |
(13) |
(14) | |||
(15) |
When this technique is recursively applied to multidigit numbers, a point is reached in the recursion when the overhead of additions and subtractions makes it more efficient to use the usual Multiplication algorithm to evaluate the partial products. The most efficient overall method therefore relies on a combination of Karatsuba and conventional multiplication.
See also Complex Multiplication, Multiplication, Strassen Formulas
References
Borodin, A. and Munro, I. The Computational Complexity of Algebraic and Numeric Problems. New York:
American Elsevier, 1975.
Borwein, J. M.; Borwein, P. B.; and Bailey, D. H. ``Ramanujan, Modular Equations, and Approximations
to Pi, or How to Compute One Billion Digits of Pi.'' Amer. Math. Monthly 96, 201-219, 1989.
Brigham, E. O. The Fast Fourier Transform. Englewood Cliffs, NJ: Prentice-Hall, 1974.
Brigham, E. O. Fast Fourier Transform and Applications. Englewood Cliffs, NJ: Prentice-Hall, 1988.
Cook, S. A. On the Minimum Computation Time of Functions. Ph.D. Thesis. Cambridge, MA: Harvard University, pp. 51-77, 1966.
Hollerbach, U. ``Fast Multiplication & Division of Very Large Numbers.'' sci.math.research posting, Jan. 23, 1996.
Karatsuba, A. and Ofman, Yu. ``Multiplication of Many-Digital Numbers by Automatic Computers.''
Doklady Akad. Nauk SSSR 145, 293-294, 1962. Translation in Physics-Doklady 7, 595-596, 1963.
Knuth, D. E. The Art of Computing, Vol. 2: Seminumerical Algorithms, 2nd ed.
Reading, MA: Addison-Wesley, pp. 278-286, 1981.
Schönhage, A. and Strassen, V. ``Schnelle Multiplikation Grosser Zahlen.'' Computing 7, 281-292, 1971.
Toom, A. L. ``The Complexity of a Scheme of Functional Elements Simulating the Multiplication of Integers.''
Dokl. Akad. Nauk SSSR 150, 496-498, 1963. English translation in Soviet Mathematics 3, 714-716, 1963.
Zuras, D. ``More on Squaring and Multiplying Large Integers.'' IEEE Trans. Comput. 43, 899-908, 1994.
© 1996-9 Eric W. Weisstein