Smooth number
In number theory, a smooth (or friable) number is an integer which factors completely into small prime numbers. The term seems to have been coined by Leonard Adleman.[1] Smooth numbers are especially important in cryptography relying on factorization. The 2-smooth numbers are just the powers of 2.
Contents
Definition[edit]
A positive integer is called B-smooth if none of its prime factors is greater than B. For example, 1,620 has prime factorization 22 × 34 × 5; therefore 1,620 is 5-smooth because none of its prime factors are greater than 5. This definition includes numbers that lack some of the smaller prime factors; for example, both 10 and 12 are 5-smooth, despite the fact that they miss out prime factors 3 and 5 respectively. 5-smooth numbers are also called regular numbers or Hamming numbers; 7-smooth numbers are also called humble, and sometimes called highly composite,[2] although this conflicts with another meaning of highly composite numbers.
Note that B does not have to be a prime factor. If the largest prime factor of a number is p then the number is B-smooth for any B ≥ p. Usually B is given as a prime, but composite numbers work as well. A number is B-smooth if and only if it is p-smooth, where p is the largest prime less than or equal to B.
Applications[edit]
An important practical application of smooth numbers is for fast Fourier transform (FFT) algorithms such as the Cooley–Tukey FFT algorithm that operate by recursively breaking down a problem of a given size n into problems the size of its factors. By using B-smooth numbers, one ensures that the base cases of this recursion are small primes, for which efficient algorithms exist. (Large prime sizes require less-efficient algorithms such as Bluestein's FFT algorithm.)
5-smooth or regular numbers play a special role in Babylonian mathematics.[3] They are also important in music theory,[4] (see Limit (music)) and the problem of generating these numbers efficiently has been used as a test problem for functional programming.[5]
Smooth numbers have a number of applications to cryptography.[6] Although most applications involve cryptanalysis (e.g. the fastest known integer factorization algorithms), the VSH hash function is one example of a constructive use of smoothness to obtain a provably secure design.
Distribution[edit]
Let denote the number of y-smooth integers less than or equal to x (the de Bruijn function).
If the smoothness bound B is fixed and small, there is a good estimate for :
where denotes the number of primes less than or equal to .
Otherwise, define the parameter u as u = log x / log y: that is, x = yu. Then,
where is the Dickman function.
The average size of the smooth part of a number of given size is known as and it is known to decay much more slowly than .[7]
Powersmooth numbers[edit]
Further, m is called B-powersmooth (or B-ultrafriable) if all prime powers dividing m satisfy:
For example, 720 (243251) is 5-smooth but is not 5-powersmooth (because there are several prime powers greater than 5, e.g., or ). It is 16-powersmooth since its greatest prime factor power is 24 = 16. The number is also 17-powersmooth, 18-powersmooth, etc.
B-smooth and B-powersmooth numbers have applications in number theory, such as in Pollard's p − 1 algorithm. Such applications are often said to work with "smooth numbers," with no B specified; this means the numbers involved must be B-powersmooth for some unspecified small number B; as B increases, the performance of the algorithm or method in question degrades rapidly. For example, the Pohlig–Hellman algorithm for computing discrete logarithms has a running time of O(B1/2) for groups of B-smooth order.
See also[edit]
Notes[edit]
- ^ M. E. Hellman, J. M. Reyneri, "Fast computation of discrete logarithms in GF (q)", in Advances in Cryptology: Proceedings of CRYPTO '82 (eds. D. Chaum, R. Rivest, A. Sherman), New York: Plenum Press, 1983, p. 3–13, online quote at Google Scholar: "Adleman refers to integers which factor completely into small primes as “smooth” numbers."
- ^ "Sloane's A002473 : 7-smooth numbers". The On-Line Encyclopedia of Integer Sequences. OEIS Foundation.
- ^ Aaboe, Asger (1965), "Some Seleucid mathematical tables (extended reciprocals and squares of regular numbers)", Journal of Cuneiform Studies, 19 (3): 79–86, doi:10.2307/1359089, MR 0191779.
- ^ Longuet-Higgins, H. C. (1962), "Letter to a musical friend", Music Review (August): 244–248.
- ^ Dijkstra, Edsger W. (1981), Hamming's exercise in SASL (PDF), Report EWD792. Originally a privately circulated handwitten note.
- ^ David Naccache, Igor Shparlinski, "Divisibility, Smoothness and Cryptographic Applications", http://eprint.iacr.org/2008/437.pdf
- ^ Tanaka, Keisuke; Suga, Yuji (2015-08-20). Advances in Information and Computer Security: 10th International Workshop on Security, IWSEC 2015, Nara, Japan, August 26-28, 2015, Proceedings. Springer. pp. 49–51. ISBN 9783319224251.
References[edit]
- G. Tenenbaum, Introduction to analytic and probabilistic number theory, (AMS, 2015) ISBN 978-0821898543
- A. Granville, Smooth numbers: Computational number theory and beyond, Proc. of MSRI workshop, 2008
External links[edit]
The On-Line Encyclopedia of Integer Sequences (OEIS) lists B-smooth numbers for small Bs:
- 2-smooth numbers: A000079 (2i)
- 3-smooth numbers: A003586 (2i3j)
- 5-smooth numbers: A051037 (2i3j5k)
- 7-smooth numbers: A002473 (2i3j5k7l)
- 11-smooth numbers: A051038 (etc...)
- 13-smooth numbers: A080197
- 17-smooth numbers: A080681
- 19-smooth numbers: A080682
- 23-smooth numbers: A080683