# Knuth's up-arrow notation

**Knuth's up-arrow notation** is a mathematical notation, introduced by Donald E. Knuth in 1976, that writes extremely large integers by extending the sequence addition, multiplication, and exponentiation to higher operations called hyperoperations: one arrow denotes exponentiation, two arrows denote tetration (repeated exponentiation), and each additional arrow denotes the previous operation applied repeatedly.<sup>[1](https://mathworld.wolfram.com/KnuthUp-ArrowNotation.html)</sup><sup> • </sup><sup>[2](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)</sup>

| Key fact | Detail |
|---|---|
| Origin | Introduced by Donald E. Knuth in "Mathematics and Computer Science: Coping with Finiteness," *Science* 194, 1235–1242 (17 December 1976)<sup>[1](https://mathworld.wolfram.com/KnuthUp-ArrowNotation.html)</sup> |
| Definition | For positive integers \( a, b \) and \( n \geq 1 \): \( a \uparrow^{1} b = a^{b} \), \( a \uparrow^{n} 1 = a \), and otherwise \( a \uparrow^{n} b = a \uparrow^{n-1} (a \uparrow^{n} (b-1)) \)<sup>[2](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)</sup> |
| Small example | \( 3 \uparrow\uparrow 3 = 3^{3^{3}} = 3^{27} = 7{,}625{,}597{,}484{,}987 \)<sup>[2](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)</sup> |
| Growth | The first four values of \( 2 \uparrow\uparrow n \) from \( n = 1 \) are 2, 4, 16, and 65,536; the fifth has over 19,000 digits<sup>[3](https://www.johndcook.com/blog/2018/04/10/up-arrow-and-down-arrow-notation/)</sup> |
| Famous use | Graham's number, an upper bound in a Ramsey-theory problem, is defined by \( g_1 = 3 \uparrow\uparrow\uparrow\uparrow 3 \) and \( g_n = 3 \uparrow^{g_{n-1}} 3 \)<sup>[4](https://mathworld.wolfram.com/GrahamsNumber.html)</sup> |
| Domain | Defined for nonnegative integer arguments; not a direct extension to real or complex numbers<sup>[5](https://en.alegsaonline.com/art/54048)</sup> |

## Definition

The notation uses \( n \) consecutive up-arrows, written \( \uparrow^{n} \), between a base \( a \) and a height \( b \). For positive integers it is defined recursively:<sup>[2](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)</sup>

The notation is defined recursively: a \uparrow^{n} b equals a^{b} when n = 1, equals a when b = 1, and otherwise equals a \uparrow^{n-1} (a \uparrow^{n} (b-1)).

Each level is defined in terms of the level below it: one arrow in terms of multiplication, two in terms of one, three in terms of two, and so on.<sup>[6](https://uuuuuu.lassp.cornell.edu/sites/default/files/Knuth.pdf)</sup> In words, \( a \uparrow\uparrow b \) is a power tower of \( b \) copies of \( a \), \( a \uparrow\uparrow\uparrow b \) applies the double-arrow operation \( b \) times, and each further arrow repeats the operation below it.<sup>[2](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)</sup><sup> • </sup><sup>[3](https://www.johndcook.com/blog/2018/04/10/up-arrow-and-down-arrow-notation/)</sup>

Evaluation proceeds from the right: a power tower such as \( 3^{3^{3}} \) means \( 3^{(3^{3})} \), not \( (3^{3})^{3} \).<sup>[1](https://mathworld.wolfram.com/KnuthUp-ArrowNotation.html)</sup><sup> • </sup><sup>[2](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)</sup> The names for the levels come from earlier work: [Reuben Goodstein](https://www.edgepedia.org/reuben-goodstein), in his 1947 paper *Transfinite Ordinals in Recursive Number Theory*, defined the hierarchy of hyperoperations and coined the terms tetration, pentation, and so on.<sup>[7](https://tetrationforum.org/showthread.php?pid=3214&tid=282)</sup>

## How fast the values grow

The escalation between arrow levels is the notation's defining feature. With two arrows, \( 2 \uparrow\uparrow n \) takes the values 2, 4, 16, and 65,536 for \( n = 1, 2, 3, 4 \), while the fifth value already has over 19,000 decimal digits.<sup>[3](https://www.johndcook.com/blog/2018/04/10/up-arrow-and-down-arrow-notation/)</sup> With base 3, \( 3 \uparrow\uparrow 3 = 3^{27} = 7{,}625{,}597{,}484{,}987 \), and adding a single arrow, \( 3 \uparrow\uparrow\uparrow 3 \), produces a number that cannot be written out in decimal.<sup>[2](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)</sup>

Knuth's own 1976 article used the notation to make this point about finite numbers: \( 10 \uparrow\uparrow 10 \) is a power tower of ten 10s, equal to 1 followed by \( 10^{10} \) zeros, and he then built a still larger example by iterating the double-arrow operation.<sup>[6](https://uuuuuu.lassp.cornell.edu/sites/default/files/Knuth.pdf)</sup>

## Graham's number

The best-known use of the notation is [Graham's number](https://www.edgepedia.org/grahams-number). In a geometric Ramsey problem posed by Graham and Bruce Rothschild, one seeks the smallest dimension \( N^{*} \) of a hypercube such that every two-coloring of the lines joining pairs of corners forces a complete graph \( K_4 \) of one color with coplanar vertices. Graham and Rothschild proved in 1971 that an answer exists and gave an upper bound.<sup>[4](https://mathworld.wolfram.com/GrahamsNumber.html)</sup><sup> • </sup><sup>[8](https://mathweb.ucsd.edu/~ronspubs/)</sup>

The number now called Graham's number is the upper bound \( g_{64} \) of a recursive sequence:<sup>[4](https://mathworld.wolfram.com/GrahamsNumber.html)</sup>

\[ g_1 = 3 \uparrow\uparrow\uparrow\uparrow 3, \qquad g_n = 3 \uparrow^{g_{n-1}} 3 \]

so the number of arrows in \( g_2 \) is already \( g_1 \), a number far beyond explicit computation. Although the full decimal expansion of \( g_{64} \) cannot be written down, any fixed number of its final digits can be computed by modular arithmetic; its final ten decimal digits are 2464195387.<sup>[4](https://mathworld.wolfram.com/GrahamsNumber.html)</sup> In Conway's chained arrow notation the same number satisfies \( 3 \to 3 \to 64 \to 2 < g_{64} < 3 \to 3 \to 65 \to 2 \).<sup>[4](https://mathworld.wolfram.com/GrahamsNumber.html)</sup>

## Related notations and limits

**Conway chained arrow notation.** John Conway's chained arrow notation writes numbers as chains \( a_1 \to a_2 \to \cdots \to a_n \). A chain of length 3 is equivalent to an up-arrow expression, \( a \to b \to n = a \uparrow^{n} b \), so Conway's notation can be viewed as a superset of Knuth's; chains of four or more elements express numbers too large to write concisely with up-arrows.<sup>[9](https://math.osu.edu/sites/math.osu.edu/files/chun_tetration.pdf)</sup>

**Down-arrow notation.** A companion down-arrow notation gives the inverses: one down arrow is a logarithm, \( b \downarrow n = \log_b n \), and two down arrows count how many up-arrow applications are needed to get from one number to another. The down-arrow version is less common and has an asymmetry, since an arbitrary target need not be reachable by a whole number of up-arrow steps.<sup>[3](https://www.johndcook.com/blog/2018/04/10/up-arrow-and-down-arrow-notation/)</sup>

**Scope and density.** The notation is defined for nonnegative integer arguments and does not directly extend to real or complex numbers; extending tetration continuously remains a separate problem.<sup>[5](https://en.alegsaonline.com/art/54048)</sup> Expressible values are sparse: a computation by Blakley and Borosh found exactly 58 numbers below 1 googol (\( 10^{100} \)) that are nontrivially expressible through Knuth's function, and this count rises only to 2,893 below \( 10^{10{,}000} \), of which 2,888 have the form \( a \uparrow^{2} 2 \).<sup>[10](https://iris.uniroma1.it/bitstream/11573/1598637/2/Caldarola_Arithmetic_2020.pdf)</sup>

## Use in computability theory

In computability theory and algorithm analysis, up-arrow expressions classify functions that grow faster than any finite tower of exponentials.<sup>[2](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)</sup> The operation \( \uparrow^{1} \) is exponentiation and \( \uparrow^{n+1} \) repeats \( \uparrow^{n} \), so functions built this way outstrip every primitive-recursive growth rate obtained by finitely many iterations; the related [Ackermann function](https://www.edgepedia.org/ackermann-function) is the standard example of a total computable function that is not primitive recursive.<sup>[11](https://math.berkeley.edu/~marks/notes/computability_notes_v1.pdf)</sup> In the fast-growing hierarchy, Knuth's up-arrows correspond to the limit ordinal \( \omega \), the level of the Ackermann function.<sup>[12](https://www.mrob.com/users/chrisb/Fast-Growing_Hierarchy.pdf)</sup>

## References

1. [Weisstein, Eric W. "Knuth Up-Arrow Notation." MathWorld](https://mathworld.wolfram.com/KnuthUp-ArrowNotation.html)
2. [Knuth Up-Arrow Notation — Definition, Formula & Examples, Mathwords](https://www.mathwords.com/k/knuth_up_arrow_notation.htm)
3. [John D. Cook, "Up arrow and down arrow notation" (2018)](https://www.johndcook.com/blog/2018/04/10/up-arrow-and-down-arrow-notation/)
4. [Weisstein, Eric W. "Graham's Number." MathWorld](https://mathworld.wolfram.com/GrahamsNumber.html)
5. [Knuth's up-arrow notation: expressing extremely large integers, Alegsa Online](https://en.alegsaonline.com/art/54048)
6. [Knuth, D. E. "Mathematics and Computer Science: Coping with Finiteness." Science 194, 1235–1242 (1976)](https://uuuuuu.lassp.cornell.edu/sites/default/files/Knuth.pdf)
7. [Tetration Forum, Timeline: Goodstein (1947), Transfinite Ordinals in Recursive Number Theory](https://tetrationforum.org/showthread.php?pid=3214&tid=282)
8. [Papers of Ron Graham, UCSD](https://mathweb.ucsd.edu/~ronspubs/)
9. [Chun, Tetration and Conway's chained arrow notation, Ohio State University](https://math.osu.edu/sites/math.osu.edu/files/chun_tetration.pdf)
10. [Caldarola, F. "On the arithmetic of Knuth's powers" (2020)](https://iris.uniroma1.it/bitstream/11573/1598637/2/Caldarola_Arithmetic_2020.pdf)
11. [Marks, T. Computability notes, University of California, Berkeley](https://math.berkeley.edu/~marks/notes/computability_notes_v1.pdf)
12. [The limit ordinals of Knuth's Up-arrow Notation in the fast-growing hierarchy](https://www.mrob.com/users/chrisb/Fast-Growing_Hierarchy.pdf)

---
*Topic: Encyclopedia › Physical world and mathematics › Mathematics and statistics › Numbers and algebra › Arithmetic and number systems › Elementary and formal arithmetic › Elementary arithmetic operations*

*Initially written Sep 17, 2026 · Reviewed: Oct 15, 2026 · Edited: Oct 15, 2026 · Last review: Oct 15, 2026*

*Copyright 2026 EdgeChat AI, a subsidiary of Biostate AI.*

License: Edgepedia Community License 1.0, https://www.edgepedia.org/edgepedia/license
