L-notation
   HOME

TheInfoList



OR:

''L''-notation is an
asymptotic In analytic geometry, an asymptote () of a curve is a line such that the distance between the curve and the line approaches zero as one or both of the ''x'' or ''y'' coordinates tends to infinity. In projective geometry and related contexts, ...
notation analogous to
big-O notation Big ''O'' notation is a mathematical notation that describes the limiting behavior of a function when the argument tends towards a particular value or infinity. Big O is a member of a family of notations invented by Paul Bachmann, Edmund Land ...
, denoted as L_n alpha,c/math> for a
bound variable In mathematics, and in other disciplines involving formal languages, including mathematical logic and computer science, a free variable is a Mathematical notation, notation (symbol) that specifies places in an expression (mathematics), expressi ...
n tending to infinity. Like big-O notation, it is usually used to roughly convey the rate of growth of a
function Function or functionality may refer to: Computing * Function key, a type of key on computer keyboards * Function model, a structured representation of processes in a system * Function object or functor or functionoid, a concept of object-oriente ...
, such as the
computational complexity In computer science, the computational complexity or simply complexity of an algorithm is the amount of resources required to run it. Particular focus is given to computation time (generally measured by the number of needed elementary operations) ...
of a particular
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algorithms are used as specificat ...
.


Definition

It is defined as :L_n alpha,ce^ where ''c'' is a positive constant, and \alpha is a constant 0 \leq \alpha \leq 1. L-notation is used mostly in
computational number theory In mathematics and computer science, computational number theory, also known as algorithmic number theory, is the study of computational methods for investigating and solving problems in number theory and arithmetic geometry, including algorithm ...
, to express the complexity of algorithms for difficult
number theory Number theory (or arithmetic or higher arithmetic in older usage) is a branch of pure mathematics devoted primarily to the study of the integers and arithmetic function, integer-valued functions. German mathematician Carl Friedrich Gauss (1777â ...
problems, e.g.
sieves A sieve, fine mesh strainer, or sift, is a device for separating wanted elements from unwanted material or for controlling the particle size distribution of a sample, using a screen such as a woven mesh or net or perforated sheet material. T ...
for
integer factorization In number theory, integer factorization is the decomposition of a composite number into a product of smaller integers. If these factors are further restricted to prime numbers, the process is called prime factorization. When the numbers are suf ...
and methods for solving
discrete logarithm In mathematics, for given real numbers ''a'' and ''b'', the logarithm log''b'' ''a'' is a number ''x'' such that . Analogously, in any group ''G'', powers ''b'k'' can be defined for all integers ''k'', and the discrete logarithm log''b' ...
s. The benefit of this notation is that it simplifies the analysis of these algorithms. The e^ expresses the dominant term, and the e^ takes care of everything smaller. When \alpha is 0, then :L_n alpha,c= L_n , c= e^ = (\ln n)^\, is a polynomial function of ln ''n''; When \alpha is 1 then :L_n alpha,c= L_n , c= e^ = n^\, is a fully
exponential function The exponential function is a mathematical function denoted by f(x)=\exp(x) or e^x (where the argument is written as an exponent). Unless otherwise specified, the term generally refers to the positive-valued function of a real variable, a ...
of ln ''n'' (and thereby polynomial in ''n''). If \alpha is between 0 and 1, the function is subexponential of ln ''n'' (and
superpolynomial In computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations performed by t ...
).


Examples

Many general-purpose
integer factorization In number theory, integer factorization is the decomposition of a composite number into a product of smaller integers. If these factors are further restricted to prime numbers, the process is called prime factorization. When the numbers are suf ...
algorithms have subexponential time complexities. The best is the
general number field sieve In number theory, the general number field sieve (GNFS) is the most efficient classical algorithm known for factoring integers larger than . Heuristically, its complexity for factoring an integer (consisting of bits) is of the form :\exp\left( ...
, which has an expected running time of :L_n /3, c= e^ for c = (64/9)^ \approx 1.923. The best such algorithm prior to the number field sieve was the
quadratic sieve The quadratic sieve algorithm (QS) is an integer factorization algorithm and, in practice, the second fastest method known (after the general number field sieve). It is still the fastest for integers under 100 decimal digits or so, and is considerab ...
which has running time :L_n /2, 1= e^.\, For the
elliptic curve In mathematics, an elliptic curve is a smooth, projective, algebraic curve of genus one, on which there is a specified point . An elliptic curve is defined over a field and describes points in , the Cartesian product of with itself. If ...
discrete logarithm In mathematics, for given real numbers ''a'' and ''b'', the logarithm log''b'' ''a'' is a number ''x'' such that . Analogously, in any group ''G'', powers ''b'k'' can be defined for all integers ''k'', and the discrete logarithm log''b' ...
problem, the fastest general purpose algorithm is the
baby-step giant-step In group theory, a branch of mathematics, the baby-step giant-step is a meet-in-the-middle algorithm for computing the discrete logarithm or order of an element in a finite abelian group by Daniel Shanks. The discrete log problem is of fundamenta ...
algorithm, which has a running time on the order of the square-root of the group order ''n''. In ''L''-notation this would be :L_n , 1/2= n^.\, The existence of the
AKS primality test The AKS primality test (also known as Agrawal–Kayal–Saxena primality test and cyclotomic AKS test) is a deterministic Determinism is a philosophical view, where all events are determined completely by previously existing causes. Determi ...
, which runs in
polynomial time In computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations performed by ...
, means that the time complexity for
primality testing A primality test is an algorithm for determining whether an input number is prime. Among other fields of mathematics, it is used for cryptography. Unlike integer factorization, primality tests do not generally give prime factors, only stating wh ...
is known to be at most :L_n , c= (\ln n)^\, where ''c'' has been proven to be at most 6.


History

L-notation has been defined in various forms throughout the literature. The first use of it came from
Carl Pomerance Carl Bernard Pomerance (born 1944 in Joplin, Missouri) is an American number theorist. He attended college at Brown University and later received his Ph.D. from Harvard University in 1972 with a dissertation proving that any odd perfect number ...
in his paper "Analysis and comparison of some integer factoring algorithms". This form had only the c parameter: the \alpha in the formula was 1/2 for the algorithms he was analyzing. Pomerance had been using the letter L (or lower case l) in this and previous papers for formulae that involved many logarithms. The formula above involving two parameters was introduced by
Arjen Lenstra Arjen Klaas Lenstra (born 2 March 1956, in Groningen) is a Dutch mathematician, cryptographer and computational number theorist. He is currently a professor at the École Polytechnique Fédérale de Lausanne (EPFL) where he heads of the Laborator ...
and
Hendrik Lenstra Hendrik Willem Lenstra Jr. (born 16 April 1949, Zaandam) is a Dutch mathematician. Biography Lenstra received his doctorate from the University of Amsterdam in 1977 and became a professor there in 1978. In 1987 he was appointed to the faculty of ...
in their article on "Algorithms in Number Theory". It was introduced in their analysis of a
discrete logarithm In mathematics, for given real numbers ''a'' and ''b'', the logarithm log''b'' ''a'' is a number ''x'' such that . Analogously, in any group ''G'', powers ''b'k'' can be defined for all integers ''k'', and the discrete logarithm log''b' ...
algorithm of
Coppersmith A coppersmith, also known as a brazier, is a person who makes artifacts from copper and brass. Brass is an alloy An alloy is a mixture of chemical elements of which at least one is a metal. Unlike chemical compounds with metallic bases, an ...
. This is the most commonly used form in the literature today. The Handbook of Applied Cryptography defines the L-notation with a big O around the formula presented in this article.Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone. Handbook of Applied Cryptography. CRC Press, 1996. . http://www.cacr.math.uwaterloo.ca/hac/. This is not the standard definition. The big O would suggest that the running time is an upper bound. However, for the integer factoring and discrete logarithm algorithms that L-notation is commonly used for, the running time is not an upper bound, so this definition is not preferred.


References

{{Reflist Asymptotic analysis Computational complexity theory