Double exponential function
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. Tetration and the 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. Integer sequences with this squaring behavior include
- The Fermat numbers
- 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,....
- 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. Additional sequences of this type include
- where A ≈ 1.306377883863 is Mills' constant.
In computational complexity theory, some algorithms take double-exponential time:
- Each decision procedure for Presburger arithmetic provably requires at least double-exponential time 
- Computing a Gröbner basis over a field. In the worst case, a Gröbner basis may have a number of elements which is doubly exponential in the number of variables. On the other hand, the worst-case complexity of Gröbner basis algorithms is doubly exponential in the number of variables as well as in the entry size.
- Finding a complete set of associative-commutative unifiers 
- Satisfying CTL+ (which is, in fact, 2-EXPTIME-complete) 
- Quantifier elimination on real closed fields takes a doubly-exponential time (see Cylindrical algebraic decomposition).
- Calculating the complement of a regular expression 
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.
a result of Pikhurko.
where N(y) is the population in year y in millions.
- Aho, A. V.; Sloane, N. J. A. (1973), "Some doubly exponential sequences", Fibonacci Quarterly 11: 429–437.
- Ionascu, E.; Stanica, P. (2004), "Effective asymptotics for some nonlinear recurrences and almost doubly-exponential sequences", Acta Mathematica Universitatis Comenianae, LXXIII (1): 75–87.
- 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
- Dubé, Thomas W. The structure of polynomial ideals and Gröbner bases. SIAM Journal on Computing, 1990, vol. 19, no 4, p. 750-773.
- Kapur, Deepak; Narendran, Paliath (1992), "Double-exponential complexity of computing a complete set of AC-unifiers", Proc. 7th IEEE Symp. Logic in Computer Science (LICS 1992), pp. 11–21, doi:10.1109/LICS.1992.185515, ISBN 0-8186-2735-2.
- Johannsen, Jan; Lange, Martin (2003), "CTL+ is complete for double exponential time", in Baeten, Jos C. M.; Lenstra, Jan Karel; Parrow, Joachim; Woeginger, Gerhard J., Proceedings of the 30th International Colloquium on Automata, Languages and Programming (ICALP 2003) (PDF), Lecture Notes in Computer Science 2719, Springer-Verlag, pp. 767–775, doi:10.1007/3-540-45061-0_60, ISBN 978-3-540-40493-4.
- Gruber, Hermann; Holzer, Markus (2008). "Finite Automata, Digraph Connectivity, and Regular Expression Size" (PDF). Proceedings of the 35th International Colloquium on Automata, Languages and Programming (ICALP 2008) 5126. pp. 39–50. doi:10.1007/978-3-540-70583-3_4.
- Chan, T. M. (1996), "Optimal output-sensitive convex hull algorithms in two and three dimensions", Discrete and Computational Geometry 16 (4): 361–368, doi:10.1007/BF02712873, MR 1414961
- Nielsen, Pace P. (2003), "An upper bound for odd perfect numbers", INTEGERS: the Electronic Journal of Combinatorial Number Theory 3: A14.
- Pikhurko, Oleg (2001), "Lattice points in lattice polytopes", Mathematika 48: pp. 15–24, arXiv:math/0008028, Bibcode:2000math......8028P, doi:10.1112/s0025579300014339
- Miller, J. C. P.; Wheeler, D. J. (1951), "Large prime numbers", Nature 168 (4280): 838, Bibcode:1951Natur.168..838M, doi:10.1038/168838b0.
- Varfolomeyev, S. D.; Gurevich, K. G. (2001), "The hyperexponential growth of the human population on a macrohistorical scale", Journal of Theoretical Biology 212 (3): 367–372, doi:10.1006/jtbi.2001.2384, PMID 11829357.
- Kouznetsov, D.; Bisson, J.-F.; Li, J.; Ueda, K. (2007), "Self-pulsing laser as oscillator Toda: Approximation through elementary functions", Journal of Physics A 40 (9): 1–18, Bibcode:2007JPhA...40.2107K, doi:10.1088/1751-8113/40/9/016.