Professor Emeritus of computer science at Stanford University. Author of the seminal work The Art of Computer Programming. Became frustrated with typesetting technology while writing the work, so he took a few years off to write TeX and Metafont.

Donald Knuth is known, in my family, as the God of Computer Science. He has a pipe organ in his house. His magnum opus, The Art of Computer Programming, is the ultimate reference on data structures and algorithms. I think there are 4 or 5 volumes out now, but that may be a slightly generous estimate. In my considered opinion, there are probably better coders than Donald Knuth in this world, but there are no better computer scientists.

He rightly said: "Premature optimization is the root of all evil."

Donald Knuth also formed a new notation for mathematics, the next logical step in the chain of addition, multiplication, power, ….

Think about it: the very first mathematicians had only the simplest concept: counting up. One smart caveman noted that counting up by a fixed amount was something that happened over and over again. He decided that 'repeated counting up' should have a name of it's own, like 'addition'.

After people got used to addition, someone noticed that adding the same thing a fixed amount of times was something that happened over and over again. 'Repeated adding' seemed important enough to be given a name of it's own, 'multiplication'.

You see where this is going. Repeated multiplication is exponentiation (or the power operator). What is to stop the process from continuing? What about repeated power?

One very obvious difference is that the power function is not associative. (((a + b) + c) == (a + (b + c))), and (((a * b) * c) == (a * (b * c))), but clearly (((a ^ b) ^ c) != (a ^ (b ^ c))). (Use a=b=c=3 if you don't believe me.) So... how to solve that? The answer is to fix the order in which the power is used. Knuth used the up arrow ↑ to denote is new function, so for the expression (a ↑ 3) he had to choose between two interpretations: (a ^ (a ^ a)) or ((a ^ a) ^ a). He realised that ((a ^ a) ^ a) is (a ^ (2a)), so associating on the left is the less interesting function. He chose association on the right.

Why should the pattern stop, even there? The ↑ notation can be applied repeatedly, just like addition, multiplication, and power. The notation is extended so that ↑↑ is to ↑ as ↑ is to power (as power is to multiplication, as multiplication is to addition). ↑↑↑ is to ↑↑ as ↑↑ is to ↑, and so on.

After a while all the ↑s become unwieldy, so John Conway improved on the notation with the 'chained up-arrow' notation.


TeknoHog says: The operation is called "tetration" by Rudy Rucker, as it's the fourth operation after addition, multiplication and power. He writes it with a predecing superscript, such as $^3 a = a^{a^a}$.

Along with being a keyboard player, he also has a novel to his credit, Surreal Numbers. It's about a couple of nice Stanford-like math majors , Alice (the left-brained one) and Bill (the right-brained one), castaways in the Seychilles, who work on abstruse ramifications of Conway's mathematical logic, in between discussing life, God, morality, and other subjects. Oh, yes, and they have sex like crazed weasels, (mostly) off-stage.

This puckishness (plus his propensity towards exhibitionism) expresses itself even in his more recent books, where his standard author photograph shows him displaying his outsized organ.

Log in or register to write something here or to contact authors.