Double exponential function

From formulasearchengine
Jump to navigation Jump to search
A double exponential function (red curve) compared to a single exponential function (blue curve).

A double exponential function is a constant raised to the power of an exponential function. The general formula is , which grows much more quickly than an exponential function. For example, if a = b = 10:

  • f(−1) ≈ 1.26
  • f(0) = 10
  • f(1) = 1010
  • f(2) = 10100 = googol
  • f(3) = 101000
  • f(100) = 1010100 = googolplex.

Factorials grow faster than exponential functions, but much slower than double-exponential functions. The hyper-exponential function and Ackermann function grow even faster. See Big O notation for a comparison of the rate of growth of various functions.

The inverse of the double exponential function is the double logarithm ln(ln(x)).

Doubly exponential sequences

Aho and Sloane observed that in several important integer sequences, each term is a constant plus the square of the previous term, and show that such sequences can be formed by rounding to the nearest integer the values of a doubly exponential function in which the middle exponent is two.[1] Integer sequences with this squaring behavior include

  • The harmonic primes: The primes p, in which the sequence 1/2+1/3+1/5+1/7+....+1/p exceeds 0,1,2,3,....
The first few numbers, starting with 0, are 2,5,277,5195977,... (sequence A016088 in OEIS)
where E ≈ 1.264084735305302 is Vardi's constant.

More generally, if the nth value of an integer sequences is proportional to a double exponential function of n, Ionascu and Stanica call the sequence "almost doubly-exponential" and describe conditions under which it can be defined as the floor of a doubly-exponential sequence plus a constant.[2] Additional sequences of this type include

  • The prime numbers 2, 11, 1361, ... (sequence A051254 in OEIS)
where A ≈ 1.306377883863 is Mills' constant.


Algorithmic complexity

In computational complexity theory, some algorithms take double-exponential time:

In some other problems in the design and analysis of algorithms, doubly exponential sequences are used within the design of an algorithm rather than in its analysis. An example is Chan's algorithm for computing convex hulls, which performs a sequence of computations using test values hi = 22i (estimates for the eventual output size), taking time O(n log hi) for each test value in the sequence. Because of the double exponential growth of these test values, the time for each computation in the sequence grows singly-exponentially as a function of i, and the total time is dominated by the time for the final step of the sequence. Thus, the overall time for the algorithm is O(n log h) where h is the actual output size.[7]

Number theory

Some number theoretical bounds are double exponential. Odd perfect numbers with n distinct prime factors are known to be at most

a result of Nielsen (2003).[8] The maximal volume of a d-lattice polytope with k ≥ 1 interior lattice points is at most

a result of Pikhurko.[9]

The largest known prime number in the electronic era has grown roughly as a double exponential function of the year since Miller and Wheeler found a 79-digit prime on EDSAC1 in 1951.[10]

Theoretical biology

In population dynamics the growth of human population is sometimes supposed to be double exponential. Gurevich and Varfolomeyev[11] experimentally fit

where N(y) is the population in year y in millions.


In the Toda oscillator model of self-pulsation, the logarithm of amplitude varies exponentially with time (for large amplitudes), thus the amplitude varies as double-exponential function of time.[12]


  1. {{#invoke:citation/CS1|citation |CitationClass=citation }}.
  2. {{#invoke:citation/CS1|citation |CitationClass=citation }}.
  3. Fischer, M. J., and Michael O. Rabin, 1974, ""Super-Exponential Complexity of Presburger Arithmetic." Proceedings of the SIAM-AMS Symposium in Applied Mathematics Vol. 7: 27–41
  4. {{#invoke:citation/CS1|citation |CitationClass=citation }}.
  5. {{#invoke:citation/CS1|citation |CitationClass=citation }}.
  6. {{#invoke:citation/CS1|citation |CitationClass=conference }}
  7. {{#invoke:citation/CS1|citation |CitationClass=citation }}
  8. {{#invoke:citation/CS1|citation |CitationClass=citation }}.
  9. {{#invoke:citation/CS1|citation |CitationClass=citation }}
  10. {{#invoke:citation/CS1|citation |CitationClass=citation }}.
  11. {{#invoke:citation/CS1|citation |CitationClass=citation }}.
  12. {{#invoke:citation/CS1|citation |CitationClass=citation }}.