Fast algorithms: Difference between revisions
Appearance
Content deleted Content added
m Date maintenance tags and general fixes |
Notability not clear and concept can be explained in 1 sentence at analysis of algorithms |
||
Line 1: | Line 1: | ||
#REDIRECT [[Analysis of algorithms]] |
|||
{{Context|date=August 2009}} |
|||
{{Notability|date=August 2009}} |
|||
'''Fast algorithms''' is the field of computational mathematics that studies algorithms of evaluation of a given function with a given accuracy, using as few bit operations as possible. |
|||
== Bit operation == |
|||
We assume that numbers are written in the binary form, the signs of which 0 and 1 are called bits. |
|||
'''Def.1.''' Writing down of one of the symbols <math>0,1,+,-, (,)</math>, putting together, subtraction and multiplication of two bits is called an elementary operation or a bit operation. |
|||
== Complexity of computation (bit) == |
|||
The quality of a fast method or algorithm is determined by its [[Context of computational complexity|bit complexity]] which is |
|||
denoted <math>s_f(n) = s_{f,x_0}(n).</math> |
|||
The bit complexity of [[Multiplication algorithm|multiplication]] has the special notation <math>M(n)</math>. |
|||
== Fast algorithm of computation of a function == |
|||
An algorithm computing the function <math>f = f(x)</math> is said to be '''fast''' if, assuming the best bound for <math>M(n)</math>, for this algorithm |
|||
:<math>s_f(n)= O\left(M(n)\log^cn\right) \ ,</math> |
|||
where ''c'' is a constant. |
|||
== History of the problem == |
|||
The field fast algorithms was born in 1960<ref>A.A. Karatsuba, The Complexity of Computations. Proceedings of the Steklov Institute of Mathematics, Vol.211 (1995)</ref>, when the first fast method—the [[Karatsuba algorithm]]—was found. Later the Karatsuba method was called “Divide and Conquer” (sometimes any method of computation with subdivisions is called with the same name), other names which people use for the method invented by [[Anatolii Alexeevitch Karatsuba|Karatsuba]] are “Binary Splitting”,"Dichotomy Principle" etc. After the Karatsuba method, many other fast methods were constructed<ref>D.E. Knuth, The art of computer programming. Vol.2 Addison-Wesley Publ.Co., Reading (1969).</ref>, including the [[Strassen algorithm]]<ref>V. Strassen, |
|||
Gaussian elimination is not optimal. J. Numer. Math., N 13 (1969)</ref> (the generalization of the Karatsuba idea for matrices), the [[Schönhage–Strassen algorithm]]<ref>A. Schönhage und V. Strassen, Schnelle Multiplikation grosser Zahlen. Computing, Vol.7 (1971)</ref><ref>A. Schönhage, A.F.W. Grotefeld and E. Vetter, Fast Algorithms. BI-Wiss.-Verl., Zürich (1994).</ref>, the [[FEE method]]<ref>E.A. Karatsuba,Fast evaluations of transcendental functions. Probl. Peredachi Informat., Vol. 27, N 4 (1991).</ref><ref>D.W. Lozier and F.W.J. Olver, Numerical Evaluation of Special Functions. Mathematics of Computation 1943-1993: A Half -Century of Computational Mathematics, |
|||
W.Gautschi,eds., Proc. Sympos. Applied Mathematics, AMS, Vol.48 (1994).</ref> for evaluation elementary and higher transcendental functions etc . Some old methods become fast computational methods with use of one of the fast multiplication algorithms, such as [[Newton's method]] for calculation of elementary algebraic functions and the [[AGM method]] of Gauss for evaluation of elementary transcendental functions. |
|||
==See also== |
|||
*[[Computational complexity theory]] |
|||
==References== |
|||
<references/> |
|||
==External links== |
|||
*http://www.ccas.ru/personal/karatsuba/divcen.htm |
|||
*http://www.ccas.ru/personal/karatsuba/algen.htm |
|||
{{DEFAULTSORT:Fast Algorithms}} |
|||
[[Category:Algorithms]] |
|||
[[ru:Быстрые алгоритмы]] |
Revision as of 17:45, 22 August 2009
Redirect to: