The Clarkkkkson vs. the xkcd Number

I just stumbled upon this webpage in which some kid (years ago, presumably in high school) who uses odd slang defined a huge number by putting various operators together and making recursive call after recursive call. He supposes that this is the biggest number anyone’s ever bothered to concisely define. My intuition is that A(g64, g64) (feel free to call it the xkcd number) is bigger. However, intuition is completely useless in this kind of question.

The Clarkkkkson defined:

(And the xkcd number is the result of the Ackermann function with Graham’s Number as both the arguments, as defined in this comic.)

Anyone want to take a crack at setting up some correspondences and demonstrating which is bigger — The Clarkkkkson or the xkcd number?

154 thoughts on “The Clarkkkkson vs. the xkcd Number

  1. If by g_65 and g_66 you mean hyper(3,65,3) and hyper(3,66,3), you’re wrong that xkcd falls between them. xkcd is on the order of hyper(2,g_64,2). That middle argument isn’t a 64. It’s a g_64.

    so xkcd looks like hyper(2, hyper(3,64,3), 2)
    and Clarkkkkson looks more like hyper(2, hyper(2,8,2), 2)

  2. er — really Clarkkkkson doesn’t look like it, but rather is dwarfed by hyper(2, hyper(2,8,2), 2). This was just a simple thing to use to upper bound it. (see long and notationally-confusing above posts for a bit of explanation)

  3. I know whats bigger..


    Do I wins a prize?

  4. Ackermann’s function only takes 2 inputs?

    What if we defined a sort of currying Ackermann, where A(a1, a2, a3, …, an) = A(A(a1, a2), a3, …, an)

    And then call Ackermann on the range [1, 2, ... Clarkkkkson]

  5. Does hypf grow faster than the tower function? Does the Ackermann function grow faster than the tower function?

    Tower(n) = n^n^n^n …. n^n^n } n times in total (n raised to the n, raised to the n, raised to the n, etc.)

    IIRC Knuth invented it.

  6. Assuming AckermannCurry(a1, a2, a3, …, an) = AC(A(a1, a2), a3, …, an), which is larger: AC(1, 2, …, Clarkkkkson) or AC(Clarkkkkson, …, 2, 1)?

  7. “If by g_65 and g_66 you mean hyper(3,65,3) and hyper(3,66,3), you’re wrong that xkcd falls between them. xkcd is on the order of hyper(2,g_64,2). That middle argument isn’t a 64. It’s a g_64.”

    No. By g_65 I mean hyper(3, g_64, 3), and by g_66 I mean hyper(3, hyper(3, g_64, 3), 3).

    Clarkkkkson is still bigger because hypf(a, b, c) is larger than hyper(a, b, c), and Clarkkkkson is thus (way) larger than hyper(3, g_K, 3).

    See for a proof.

    And yes, Ackerman grows faster than Tower(n):

    Tower(n) < Ackerman(5, n)

    and hypf grows even faster than the Ackerman function.

  8. Oh! I completely misunderstood the last step of Clarkkkkson.

    I thought that ck(K,K,K,K) was the clarkson number, not just a helper function for calculating the A_n (where A_{K+1} is the real thing), and that his description of the A_n’s had been an attempt to clarify the recursion.

    also, great read, that big numbers article.

  9. S(XKCD, XKCD)

    where S(n, m): the largest number of steps taken by an n-state, m-symbol turing machine started on an initially blank tape before halting.


    Now, defining really really big numbers is well and good, but how about a number that has some mathematical worth. Graham’s number trumps both XKCD and Clarkkkson because it actually has a meaning. Then again, that may just be my sense of aesthetic mathametical beauty.

  10. Jennifer: I too thought I was the only one, which is what made that comic fun :-)

    For the real debate here, I’d say the source is too ambiguous and as stated above, the Clarkkkkson number is relative to time, while the xkcd isn’t, which I think is something we should fix.

    How about… Hm, using a UNIX timestamp as the class for the hyper factorial?

  11. eh, i thought to the time i’ll take another look to these comments, someone will already bound xkcd and clarkkkson numbers in Conway notation… it seems i’ll need to do this myself %)

  12. I feel that maybe something was lost in the description of the Clarkkkson number (or rather function). Lets put the two, Clarkkkson and xkcd, in the same notation, roughly.

    Let g_64 = G

    xkcd = A(G,G) and as A(m,n) = hyper(2, m, n + 3) -3, and at the values were talking that extra -3 is insignificant, we can say that

    xkcd = hyper(2, G, G+3) or in up arrow notation,
    xkcd = 2↑↑…(G -2 times)…↑↑G+3

    now for clarkkkson, Y.

    Lets really take a look at what this clarkson hyperfactorial recursive function does.

    hyperf(K,K,K) = (K!!…(K times)…!!)↑↑…(K-2 times)…↑↑((K-1)!!!!…(K times)…!!)↑↑…(K-2 times)…↑↑((K-2)…

    Let that equal A_1_1. The next term in the clarkson series, A_1, is equal to A_1_K. So
    Y = A_K+1_K

    This doesn’t even begin to cover the problem of finding the intersection of Y(t) (ignoring the second set of lynz for the moment, then K(t) = (K_0)^2^t ) Not only would hyper-n operators have to be extended to all reals, some kind of hyper-gamma function would have to be made to allow the consideration of the Clarkson Function in a rigorous way.

    We may have to settle for bounding in this case.
    For ideas, this may help:

  13. This doesn’t have much (or anything) to do with your post, but I’m a relatively new reader of the comic and I just wanted to say that I love you (in that internet way). I figured leaving it here would be less annoying than emailing you.

    I am an art student with an inner math geek. And you are a math geek with an inner art student. So it is perfect.

  14. What if someone designed a minimal Turing Machine that would test the Goldbach Conjecture, then wrote out the busy-beaver expression for the alphabet size and state count? Wouldn’t that be a serious use of an insanely large number? “Evaluating this expression is left as an exercise to the reader…” or somesuch.

  15. I fly airplanes. I don’t do much math. I suck at math. I’m going to go eat some ice cream, cause my head hurts trying to comprehend this. Damn you xkcd!

  16. :( I was secretly hoping xkcd was larger than Clarkkkkson because of its ease of explanation to others. Clarkkkkson takes a lot longer to explain and seems rediculously complicated in definition.

  17. A couple of people have posted the link to:

    Here it is recommended that you try to write the largest number you can write in fifteen seconds.

    I can write the two following numbers on paper in 15 seconds, provided that I don’t have to actually write the parentheses and can just use subscripts and superscripts to indicate the context. Of course, the _ means subscript and ^ means superscript. (I’m intentionally not using any special mathematical numbers or special functions, and limiting myself to well-known operations.)

    My question to you guys is, *which one is larger?*

    (1) “Let f_x = (x!)^( (x!)^( (x!)^( (x!) ) ) ).

    f_( f_( f_( f_( f_( f_( 11! ) ) ) ) ) )”

    (That’s four x! expressions in the first one, and six f-calls.)

    (2) “( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( 11! )! )! )! )! )! )! )! )! )! )! )! )! )! )! )! )!”

    (That’s seventeen total factorial calls on 11.)

    Intuitively, I’d expect the first one to be larger. But I guess I’ll have to just do it out with Stirling’s approximation to get any real answers.

  18. It’s not too hard to beat the busy beaver function, really. Just relativise it! Let dckx be the largest number of moves made by a halting turing machine on blank input with oracle 0′ (where 0′ denotes the turing jump of the empty set) and at most 42^42 rules. This many rules is surely plenty to define the busy beaver function, and just about anything one might consider doing with it, and yet one could easily defeat this by using oracle 0”, or 0”’, or W=0′+0”+0”’+…, or W’. In fact, since one can sensibly define 0^k for any ordinal countable ordinal k, and since the Ackermann function, being generalized exponentiation, can be generalized to take ordinals as inputs, you could beat the pants off of this by replacing your W’ oracle with a 0^k oracle where k=Ack(w,w), and w is the first infinite ordinal.

    As the Scott Aaronson article mentioned, the clever part of defining big numbers concisely is the insights that enable you to do it. Anyone can define a larger number, but to do it more elegantly requires insights – I think it’s likely that turing machines represent the best way of producing big numbers, since turing machines can simulate anything we can define (at least given the right oracle.) However, people will have new and interesting insights about how much information an oracle can carry, and perhaps some of these insights will, in addition to revealing interesting facts about computability and information theory, allow for concise definitions of ever larger numbers.

  19. Chris: The first of those numbers is considerably larger. The first is bounded below by Hyper(11!, 4, 19), and the second is bounded above by Hyper(11, 4, 19).

  20. The contest opened in the style of a boxing match, with competitors presented “in the red corner” and “in the blue corner.” Elga went first, writing the number one. “Ha!” announced Rayo, as he countered with a string of ones across the board. Elga retaliated with a clever trick, erasing a line through the base of half of the ones to turn them into factorials.

    As the battle continued, the contestants began defining their own functions. Moments into their definitions, a student raised her hand and asked Elga if the operation he had written on the board was even computable. Elga cleared his throat, smiled and succinctly replied, “No.”

    Functions became more and more complicated, at one point prompting the announcer to proclaim, “It looks like there are words in your number.”

    Near the end of the duel, Rayo furiously scribbled on the whiteboard: “The smallest number bigger than any number that can be named by an expression in the language of first order set-theory with less than a googol (10100) symbols.”

    Although this definition took a bit of tweaking, including what Rayo described as his “second order logic trick,” it soon won him the duel.

    As Elga collapsed, slain, the referee closed the ceremony. “It was a great game,” Elga said. “Heated at times, but nevertheless, a really great game.”

  21. If it turns out the Clarkkkkson is bigger, counter it with A( A(g64,g64), A(g64,g64) ).

  22. Try omega as defined by pure set theory; its a legitimate number, its what is is supposed by the Axiom of Infinity.

    I suppose it is bending the rules, it is infinitly large, but its only countably infinite!

  23. This has probably been said already, and I doubt many people will read this far down (I know I didn’t), but Clarkkkkkkkson probably doesn’t count for comparisons such as this, since it depends on K which increases (hyperfactorially, mind you) over time. So whatever real number you can think of, it’s just a matter of time before Clarkkkson is bigger than it.
    Am I right in saying the fact that t is an argument in Clarkkkkson’s function means it’s not even a real number? Can you even measure it on a momentary basis? Moments are infinitely transient…

    What would be more interesting would be to find out the SMALLEST real number ever concisely, originally defined.
    That is, if I were to define a number as 1/A(G,G), it wouldn’t count since you beat me to A(G,G). What is the smallest number defined that doesn’t rely on the likes of the xkcd number or Clarkkkson? Hmmm…

  24. Alex, A( A(g64,g64), A(g64,g64) ) is less than g66 is still way less than the Clarkkkkson. Sorry.

    And poorsod, even if we take the Clarkkkkson at t=0 (when K=100), the xkcd number is still far far less than it. Numbers have been defined which far surpass the Clarkkkkson at times beyond the solar lifespan. Sure, the Clarkkkkson will eventually overtake any real number, but it may take a time greater than it itself (measured in years, millenia, whatever) to do it.

  25. Pingback: xkcd » Blog Archive » Large numbers

  26. Pingback: Prog » Blog Archive » A Fresh New Look.

  27. Sure, the Clarkkkkson will eventually overtake any real number, but it may take a time greater than it itself (measured in years, millenia, whatever) to do it.

    Yes, but so will ln(x*(.1)^xkcd)

  28. wow…I read through the entire comments sections without comprehending most of it (I’m a psychologist, not a mathematician), but I can’t help but love a debate that can be so succinctly summed up with “which is larger?” . I tip my hat in respect to all of you who have pursued numbers into the realm of the esoteric, a realm I dare not tread say for a few dips in practical calculus. Kudos to all of you.

  29. Nerds!

    I can’t believe I read the whole thread.

    btw – XKCD is bigger, for now. You don’t have to calculate the numbers out to figure that out, just the number of digits

  30. Haha, Steve! You don’t seem to realize that xkcd and the Clarkkkkson both are practically indistinguishable from their number of digits. That is, given a number near log(xkcd), it is nearly impossible to establish that it is less than xkcd. In fact, you can’t tell xkcd from the number of digits in the number of digits of xkcd, and you can iterate that a million times, and you still can’t tell the difference.

    And, the Clarkkkkson is bigger, as has been established by multiple people in the thread.

  31. I just invented a new number (yes it breaks the rules from the other guy…)

    Clarkkkkson + xkcd = Cake

    (Cake is clearly larger than Pi, and much bigger than Clarkkkkson and xkcd)

  32. I have alwayse held the belief that the solutions to the hardest problems are right in front of us.

    it is clear that this clakeson fellow is using smaller font in his explanaiton then in the xkcd comic. therefore the xkcd is larger.

  33. Pingback: Desunt Cetera

  34. The way I see it, in the clarkkkson number, the guy’s using K as a defined number, when it’s quite clearly not. It changes every day. So, surely the clarkkkson number’s ill-defined, therefore rendering it useless.

    To put it another way, what would happen to mathematics if the answer to 2+2 grew by one each day? Aside from someone failing the spam protection on comments, of course. :P

    The xkcd number would, therefore, be the largest number to stay constant, as it is based on a function, and a constant (if slightly ridiculously large) number, that has been seriously used in a mathematical equation. After all, the answer to A(g_64, g_64) will be constant (if ever-elusive), but the clarkkkson number will change.

    …And to be honest, who wants to listen to someone who doesn’t do their homework? XD

  35. To put all of these numbers in perspective: I remember a text book from the 1960′s that talked about Ackermann’s function. It had these homework questions:

    1. Can you compute A(5,5)?
    2. Can you even imagine how big A(10,10) is?

    The answers were in the back of the book.

    The answers were: No.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>