3.2.8 - Andre Joyce

Joyce observes that a googol can be expressed as f(50) , where f(n) = g(2,50,g(1,50,2)) = (2*50)^50 = 100^50 = 10^100. Furthermore, googol ends in "L", the roman numeral for 50. Therefore, by appending other roman numbers of value "n", we get that googo-(n) = f(n) = g(2,n,g(1,n,2)) = (2n)^n.

Furthermore Joyce defines googolple-(n) = g(2,g(2,n,2n),n). But does this definition hold up to scrutiny? Following his logic, googolplex should be

googolple-(10) = g(2,g(2,10,20),10) = 10^20^10

Note . . . even . . . close! What is particularly annoying is how Joyce can't even follow his own rules carefully. He has assumed that since googo-(n) = g(2,n,2n) it should follow that googolplex-(n) = g(2,g(2,n,2n),n). However what he failed to take into account is that googol ends in "L" while googolplex ends in "X", so by his own rules this makes no sense!!!

As it turns out it makes little difference. He makes no use of the googolple- operator. -_-

Returning to the googo- operator, the function (2n)^n is not particularly fast by googological standards, but it can at least be demonstrated to grow faster than exponential or even factorial growth. Joyce describes this naming scheme as "one of the early developments in a more logical and laconic system of large number nomenclature now called googology". From this new rule Joyce derives a host of new googolism's. Here are the examples Joyce provided ...

Who is Andre Joyce?!

Ironically, despite being perhaps one of the pillars of googology (along with the likes of Kasner, Steinhaus, Conway, and Bowers), very little is known about Andre Joyce by the googologist community. We don't know when he created his googology, we don't know whether he's alive or dead, we don't have any idea what he looked like (the title picture is of Alfred Jerry, not Andre Joyce), we don't even know that he ever existed! There is every indication however that his "work", which goes beyond googology into recreational linguistics and absurdist "mathematics", is obscure even by googologist standards. The only record we have of his existence and googology are extremely dubious texts which describe him as a pataphysicist.

This is a term which is an important piece of the Joycian puzzle, for pataphysics is the "science of the absurd", self described as "the science of imaginary solutions to practical problems" ... in other words it espouses to be useless by definition. The purpose and nature of pataphysics is intentionally obscure, but it all boils down to basically flaunting the absurd and irrational. These can be seen in the many texts attributed to Joyce, of which "googology" is only the most cohesive, though far from completely sound.

But what is pataphysic's really? Where did it come from? Is it something real or made-up? Self-descriptions aside, how could it be described to an outsider?

Pataphysics (sometimes written 'pataphysics) is a 19th century French movement initiated by Alfred Jarry. The term first appeared in print in 1893 and has gained a life of it's own. It has run the gamut from an ideology, a philosophy, a religion, and an important influence on modern art, modernity etc. It should be noted however that we have at least as much to owe to modern science and modern mathematics for our "modern" perspective, and in fact, these developments probably influenced a general sense that the universe is "absurd" and ended up influencing art,philosophy and religion as a result. Although pataphysics predates the 20th century, the 19th century was still a great time of rapid change. There was a general sense of overturning the old and forming the new. Pataphysics was just one of many responses to this, which can be seen all throughout human culture from art, to music, to science, to mathematics.

Although I can not go into an in-depth analysis of what pataphysics is, it's influence, and it's purpose(s), some familiarity with it is a prerequisite to separating what I'll call the "pataphysical" instances of Joyce's work from the truly "googological". In a nutshell, the pataphysicist believes that to be human is to be "absurd", in that the human seeks meaning where there is none. To relieve the pressure from the contrast between reality and our humanity, pataphysicists seek to be more like the universe by embracing the nonsensical, making it near impossible to find meaning. Thus by being more "absurd" in human terms they are actually being less absurd in reality (I have plenty of philosophical qualms with this "solution" but I can not go into an in-depth explanation here) Therefore to try and understand a pataphysical work rationally is to miss the point.

Googology on the other hand is not about exploring the nonsensical, however much it appears to the contrary on the surface. Googology is about exploring a rational world of numbers made of mathematical building blocks.

The pataphysical and the googological are fundamentally at odds, and it shows in the text. It is both a mix of reason and nonsense.

Googologist's express the "absurd", and the whimsical, in the way they name numbers to express the sense of dumbfoundedness that these numbers produce. They lie beyond human capacity to understand and therefore become emblematic of all that we yearn for and fear ... a god-like realm filled with unfathomable sound and fury and yet completely without purpose, ferocious yet without malice, infinitely ingenious and yet without a mind to appreciate their ingenuity. As was said of Turing Machines "if intelligence lies in their design, no mind put it there". In short, the googologist is every bit in touch with the pataphysicist's attempt to communicate with the divine realm of the absurd, but the googologist recognizes that the most important characteristic of this realm is not the irrational ... but the hyper-rational. The universe follows it's own laws, one might say, maniacally, without concern of what the consequences might be and therefore without "purpose". This is what we human beings react to as "absurd". The response however is not to descend into madness ... but to seek to understand the order while retaining one's sense of purpose. By delving into and toying with madness Joyce invites sloppy thinking, and it shows in Joyce's work.

With that in mind, I will point out the places where I believe pataphysics is to blame. There are some places that are so erroneous in the text, that Joyce has to be kidding (then again, maybe not. It's impossible to tell!)

The Text

The "text" of which I speak is actually a secondary source. It is claimed to be drawn from "Let Us Remember Andre Joyce" but there has never been any evidence to support that such a text exists. A google search of the name will just return the "secondary sources". To make matters worse, there are two texts which are very different but seem to be talking about the same Andre Joyce. One text, is said to be a translation of Andre Joyce's "Googology" by Michael Joseph Halm [1]. Another text, is said to be translated by Razilee Purdue [2]. The Razilee Purdue article predates the Michael Joseph Halm article. Razilee Purdue's article is dated 1978-2003 while Michael Joseph Halm's is dated 2006. The texts are actually extremely different and have few commonalities. One curious thing to note is the Razilee's article does not mention any Bowerisms (googolism's invented by Jonathan Bowers'), but Michael's does. Michael's appears to be an expansion of Razilee's. The fact that each article contains unique material further supports the idea that there really is no original text. Both text's lack any organization. They mostly just introduce a bunch of random constructions with very little introduction. Not much additional information can be found on Andre Joyce or his googology. Something of a profile of Andre Joyce can be found at [3]. The texts on googology, don't actually introduce Joyce's prevalent g-notation very well, but some additional clues can be found at the bottom of this page at [4].

Beyond that there is literally no more information to go on to decipher Joyce's googology. All other sources are simply copied and pasted from these texts, including their errors. Joyce's googolism's often appear along side Bowerism's. A typical example can be seen here [5]. One consistent problem is that Joyce's numbers are listed as larger than some of Bowers', yet it turns out that they are no where near them and are much much smaller! This was the result of a misunderstanding of whoever prepared the text (Joyce or Michael, it can't be known for sure), and it has unfortunately been copied verbatim into many other sources. For the first time, I will explore this claim and show it to be false. Let's begin.

The Ackermann Function

Before we get to Joyce's googology, let's first familiarize ourselves with a notation which he uses heavily and calls the "generalized Ackermann Function". This function turns out to be just Knuth's up-arrows in disguise. A three-argument function is used appended with a "g". The arguments are in decreasing significance, so that the first argument is the most significant, following by the second and the third. The first argument we can call the "degree", the second argument the "polyponent", and the third argument the "base". It is generally written in the form:

g(a,b,c)

The following loose definition is provided ...

g(a, b, c) = g(a - 1, g(a, b - 1, c), c),

g(0, a, b) = a + b,

g(1, a, b) = ab

The problem with this is it doesn't actually provide a proper terminating case. if the first argument = 0 or 1, then we have no problem and can simply take the sum or product of the remaining arguments respectively. But if the first argument >1 then we have to apply the first rule. Here we have an example ...

g(2,3,3) = g(1,g(2,2,3),3)

We could add this if only we knew what g(2,2,3) was. To find out we again expand it using rule 1 ...

g(1,g(2,2,3),3) = g(1,g(1,g(2,1,3),3),3)

the problem is we then need to know g(2,1,3). Using the rule we have g(1,g(2,0,3),3) ... but then we need to know g(2,0,3). To know g(2,0,3) we need to know g(2,-1,3), and to know g(2,-1,3) we need to know g(2,-2,3) ... and then in turn g(2,-3,3), g(2,-4,3) , g(2,-5,3), etc.

What's missing is a rule which tells us when to stop. It's clear from the examples that follow however that g(2,a,b) = b^a. From this we can gather that g(2,1,b) = b^1 = b

and g(2,0,b) = b^0 = 1. For the sake of consistency we can use this later rule, since the first argument can range over the non-negative integers, then the second argument should also range over the non-negative integers. Thus in our above example we should get...

g(2,3,3) = g(1,g(2,2,3),3) = g(1,g(1,g(2,1,3),3),3) = g(1,g(1,g(1,g(2,0,3),3),3),3)

Since g(2,0,3) = 1 by definition we get...

g(1,g(1,g(1,g(2,0,3),3),3),3) = g(1,g(1,g(1,1,3),3),3)

Next we apply the 3rd rule ...

g(1,g(1,g(1,1,3),3),3) = g(1,g(1,1*3,3),3) = g(1,g(1,3,3),3) = g(1,3*3,3) = g(1,9,3) = 9*3

= 27

This omission is somewhat justified, on account of the fact that this is just the Ackermann function with the arguments in reverse. Ackermann originally defined his 3-argument function as [6] ...

φ(m,n,p) where m,n,p are elements of {0,1,2,...} :

φ(m,n,0) = m+n

φ(m,0,1) = 0

φ(m,0,2) = 1

φ(m,0,p) = m : for p>2

φ(m,n,p) = φ(m,φ(m,n-1,p),p-1) : n,p>0

This closely agrees with treating "p" as representing the number of up-arrows plus one. Furthermore we find that ...

φ(m,n,0) = m+n

φ(m,n,1) = m*n

φ(m,n,2) = m^n

However, due to the 4th rule we find that...

φ(m,n,3) = m^^(n+1)

φ(m,n,4) = m^^^(n+1)

φ(m,n,5) = m^^^^(n+1)

etc.

We will use a more modern definition which agrees with the hyper-operators without this offset. To do this the rules must be changed slightly...

g(c,b,a) where c,b,a are elements of {0,1,2,3,...} :

1. c=0 ; g(0,b,a) = b+a

2. b=0 , c=1 ; g(1,0,a) = 0

3. b=0 ; g(c,0,a) = 1

4. g(c,b,a) = g(c-1,g(c,b-1,a),a)

These rules are prioritized, so it is not necessary to state for rule 3 that c>1. It's implied since rule 3 can only apply if b=0, but if a=0 then rule 1 would apply first, and if a=1 then rule 2 would apply. Therefore Rule 3 can only apply if c>1. Furthermore it's not necessary to specify that b and c both be greater than 0 in rule 4. If c is 0 then regardless of the value of b rule 1 would apply. If b is 0 and c is not then rule 2 or 3 applies. Ackermann did not use prioritized rule sets but rather used the piece-wise function notation. Prioritized rulesets was pioneered by Bowers'. The technique has proven to be a useful general approach to defining recursive functions and is a common standard used by the googology community.

In any case this should eliminate any ambiguity in regards to how the g(c,b,a) function should work, even if not explicitly stated. In general we can say that...

g(0,b,a) = b+a

g(1,b,a) = b*a

g(2,b,a) = a^b

g(3,b,a) = a^^b

g(4,b,a) = a^^^b

g(5,b,a) = a^^^^b

and in general

g(c,b,a) = a^^^...^^^b w/c-1 ^s for c>1

alternatively it is convenient to use multiple stars where...

* denotes multiplication

** denotes ^

*** denotes ^^

and in general

***...*** w/n *s denotes ^^^...^^ w/n-1 ^s

Thus...

g(c,b,a) = a***...***b w/c *s : c>0

Joycian Googology

With that cleared up we can proceed further with Joyce's googology.

It begins with the observation that there are many ways to describe the googol using "Ackermann's Generalized Exponential Notation" (shortened to AGE from here in).

The equality ...

googol = g(2,100,10) = g(2,2,g(3,2,10)) = g(2,50,g(1,2,50))

...is given. The first expression is clearly equal to a googol since g(2,100,10) = 10^100. The other expressions seem convoluted and it's less obviously true. Looking at the 2nd expression and simplifying we have...

g(2,2,g(3,2,10)) = g(2,2,10^^2) = g(2,2,10^10) = (10^10)^2

and here we encounter one of the first anomalies. In one of the sources it is claimed that Andre Joyce is a "Franco-American mathematician", but it is clear from the equality...

10^100 = (10^10)^2

that we are not looking at the work of a professional mathematician, for this is an egregiously elementary error! Naively it is often assumed that:

(a^b)^c = a^(b^c)

This is not true in the general case. Take for example...

(3^3)^3 = (27)^3 = 19,683

while ...

3^(3^3) = 3^27 = 7,625,597,484,987

Typically we find that (a^b)^c << a^(b^c). Furthermore it turns out that...

(a^b)^c = a^(b*c)

This is, of coarse, one of the basic exponential laws, and yet Andre has somehow got it wrong! Given that pataphysics is the science of the absurd, is it knowingly false, or false out of ignorance? I can't say. But it doesn't matter. Knowingly or unknowingly it's wrong. The actual evaluation would be...

g(2,2,g(3,2,10)) = (10^10)^2 = 10^(10*2) = 10^20 != 10^100

We will have to be wary for further cases of poor analysis. Is the 3rd expression correct?

g(2,50,g(1,2,50)) = g(2,50,2*50) = g(2,50,100) = 100^50

Yes. 100^50 = (10^2)^50 = 10^(2*50) = 10^100. It is strange that Andre get's this right, but somehow get's the other one wrong. A simple correction would be...

g(2,10,g(2,10,10)) = (10^10)^10 = 10^(10*10) = 10^100

yet this is not what we see. Andre goes on to define the googolplex as ...

googolplex = ten-to-the-googolth = g(2,g(2,100,10),2) = g(2,2,g(3,3,10))

Inexplicably only "ten-to-the-googolth", is a correct definition! g(2,g(2,100,10),2) would be 2^10^100 not 10^10^100. 2^10^100 is smaller than 10^10^100 ( 2^10^100 ~ 10^10^99.5 ). Again a simple correction ...

googolplex = g(2,g(2,100,10),10) = 10^10^100

Why the base of 2? To make matters worse we can see that...

g(2,2,g(3,3,10)) = g(2,2,10^^3) = g(2,2,10^10^10) = (10^10^10)^2

This demonstrates a profound ignorance of how large numbers actually work! The implication here is that...

(10^10^10)^2 = 10^10^10^2 = 10^10^100

This is completely erroneous! The correction evaluation is...

(10^10^10)^2 = (10^(10^10))^2 = 10^((10^10)*2) = 10^(2*10^10)

Instead of giving us 1 followed by a googol zeroes, it reduces to 1 followed by a mere 20 billion zeroes, which is vastly smaller. Even the decimal expansion would be dwarfed relative to the decimal expansion of a googolplex. The difference in magnitude is incomprehensible and is indistinguishable from a googolplex. In general when A/B ~ A in googological terms it means that A is vastly larger than B. This is typically not the exception in googology, but the norm. Numbers are rarely close enough in magnitude that A/B produces a comfortably sized number (astronomical or smaller), and the ratio is usually itself googologically large. For the person who was the first to call himself a "googologist", Andre sure doesn't know his exponential laws!

Viewed from the outside, googology (as practiced by the googology community) may seem indistinguishable from pataphysical nonsense. "Imaginary solutions" of impractical value. It may be true that googology is impractical, but it MUST be distinguished from nonsense if it is to have any value at all. The point of googology is to invent well-defined large numbers, and to be able to compare various large numbers through a sound mathematical analysis. Let it not be inferred from the whimsical names that googologist's often give to the numbers they define, that there definitions are also whimsical! If it is not well-defined it's not a number!

From this point of view, it might be argued that what Andre Joyce was doing wasn't quite "googology" as we recognize and understand it today. He may have been largely unconcerned with how correct he was. The entire concept of "googology" was probably something of a joke. It's absurd as a study. So he perhaps gave it the same irreverent focus as his "jootsy calculus" and other profoundly ridiculous things. The difference with his googology however was that it was the closest thing to sense.

For the sake of posterity we will continue to go through Andre's work, but we have more than fair warning that there are problems already.

After the prefunctory introduction, Andre finally get's down to naming his first googolism:

eleventyplex = g(2,110,10) = 10^110

This is perfectly sound, if a bit silly. Next however we have...

millilliardplex = g(2,6003,g(3,2,10))

We know from our exploration of -illion schemes that a millilliard is from the long scale system in which a millillion would be 10^6000, and therefore a millilliard would be 10^6003. Therefore a millilliardplex should be 10^10^6003 based on the established conventions. Yet we have...

g(2,6003,g(3,2,10)) = g(2,6003,10^^2) = g(2,6003,10^10) = (10^10)^6003

which is 10^60,030 not 10^10^6003 which is MUCH larger. At least Andre is wrong in a consistent way. But we should know better. Remember (a^^b)^c != a^a^...^a^c w/b a's. Instead we have (a^^b)^c = (a^a^^(b-1))^c = a^(c*a^^(b-1)) which is generally much smaller.

Given this consistent mistake we can assume that whenever Andre uses (a^b)^c what he is actually trying to summon is the number a^(b^c). The key to getting these values is to nest the 2nd argument of the g-function, NOT the first! So it should be...

millilliardplex = g(2,g(2,6003,10),10)

This still doesn't really establish anything new. It's a well-established practice that n-plex = 10^n. The next idea however is new.

Joyce observes that gross = 12^2 and great gross = 12^3. So he concludes that if n = g(2,a,b) then great-(n) = g(2,a+1,b). So a gross is g(2,2,12) and a great gross is g(2,3,12). This is a very curious observation and it proves to not even be followed anyway. By such reasoning, since googol = g(2,100,10), a great googol should be = g(2,101,10). Instead great googol = g(2,1000,10) ... so much for any kind of consistency -_-

Yet there is a vague amount of sense here since googol = 10^10^2 and great googol = 10^10^3. So a rule that does more closely match what is happening would be ... if n = f(n), then great-(n) = f(n+1). In this case let f(n) = 10^10^n, googol = f(2) and great googol = f(3).

Joyce goes on to define...

great googolplex = g(2,1000,g(3,2,10)) = (10^10)^1000

which should actually be g(2,g(2,1000,10),10) = 10^10^1000

He goes on to generalize this to...

n-ex-great googol = g(2,n+2,g(2,100,10)) = (10^100)^(n+2)

n-ex-great googolplex = g(2,n+2,g(2,100,g(3,2,10))) = ((10^10)^100)^(n+2)

The degree of brokenness here is quite unbelievable. Even by Joyce's already tortured arithmetic standards, this definition makes no sense. Let n=1. For great googol we get (10^100)^(1+2) = (10^100)^(3). Even if we adopt his broken logic we would have 10^100^3, but this is NOT 10^1000. Instead it would be 10^1,000,000. Furthermore the actual value would be (10^100)^(3) = 10^300. To get the result he is going for he needs 10^10^(n+2), which can be achieved using g(2,g(2,n+2,10),10). Likewise for n-ex-great googolplex what is needed is 10^10^10^(n+2), which can be achieved using g(2,g(2,g(2,n+2,10),10),10). Viewed at this way Joyce's suggestion is actually somewhat useful for filling out the spaces between the members of the googol series. For example we have...

great googol = 10^1000

great great googol = 10^10,000

great great great googol = 10^100,000

great great great great googol = 10^1,000,000

great great great great great googol = 10^10^7

great great great great great great googol = 10^10^8

etc.

great googolplex = 10^10^1000

great great googolplex = 10^10^10,000

great great great googolplex = 10^10^100,000

great great great great googolplex = 10^10^1,000,000

great great great great great googolplex = 10^10^10^7

great great great great great great googolplex = 10^10^10^8

etc.

This is actually somewhat useful, as these numbers can act as various hyper-orders of magnitude. For example we can say 3^3^3^3 is roughly of the order of 10^10^12. In Joycian googology this would be a ten-ex-great googol.

Googology typically involves numbers larger than a googol but occasionally the googological impulse can also involve smaller numbers, since part of googology is about inventing names for numbers. Joyce extends the great gross with ...

great great gross = 12^4

great great great gross = 12^5

great great great great gross = 12^6

great great great great great gross = 12^7

great great great great great great gross = 12^8

etc.

using the formula 'n-ex-great gross' = g(2,n+2,12). For once he get's it right! This works nicely and is a fairly natural extension.

Going further, since a Baker's dozen is 13, and a Baker's gross is 169 or 13^2, it follows that a great Baker's gross should be 2197 or 13^3, that a great great Baker's gross should be 13^4, etc. and that in general 'n-ex-great Baker's gross' = g(2,n+2,13). Unfortunately a typo in the article states 'n-greats Baker's gross = g(2,n+2,12).

Going further still, we have Poulter's dozen = 14, Poulter's gross = 196 = 14^2, great Poulter's gross = 14^3, and in general n-ex-great Poulter's gross = g(2,n+2,14). This time there is no typo.

After this more googolism's follow, this time without explanation...

great googol = g(2,3/2,g(2,100,10)) = (10^100)^(3/2)

here we get a 4th value for great googol, in addition to 10^101, 10^300, and 10^1000. This time great googol = 10^150. What Joyce means, of coarse is, great googol = 10^100^(3/2) = 10^1000. We see here that this exponential error is systemic and is not an isolated incident.

Moving on we have...

googolteen = g(2,100,10)+10 = 10^100+10(from googol+teen )

googolty = g(2,101,10) = 10^100*10 = 10^101 ( from googol+ty)

googolilliard = g(2,6*g(2,2,100,2)+3,10)

This use of a 4-argument g-function is probably another typo. It is probably meant to be g(2,6*g(2,100,10)+3,10) = 10^(6*10^100+3) which is consistent with n-illiard being 10^(6n+3).

googolylliard = g(2,16*g(2,100,10)+8,10) = 10^(16*10^100+8)

googolplex = g(2,g(2,100,10),10) = g(2,g(2,g(2,2,10),10),10) = g(3,2,2,10)

eleventyplex = g(2,110,10)

The construction of googolylliard appears to be using Knuth's -yllion suffix. In Knuth's system each new denomination is the square of the previous one [7]. He begins with a myriad (10,000) as the base, and then let's myllion be myriad^2 or 10^8. From here on Knuth defines...

(n)-yllion = 10^2^(n+2)

By this reckoning googolyllion should be 10^2^(10^100+2), but -ylliard is not defined in Knuth's system, so the meaning of googolylliard is unclear. It appears Joyce has made the mistake that Knuth's system uses 10^16 as the base multiplier so that , myllion = 10^16, byllion = 10^32, tryllion = 10^48, etc. and therefore n-yllion = 10^(16n) while n-ylliard = 10^(16n+8). This is a misunderstanding of how Knuth's system works, but at this point I'm not too surprised.

The more interesting case is the new equalities for a googolplex which appear to suggest a way to continue to a 4-argument g-function. The first part is correct. googolplex = g(2,g(2,100,10),10) = g(2,10^100,10) = 10^10^100. As for the second part we have...

g(2,g(2,g(2,2,10),10),10) = g(2,g(2,10^2,10),10) = g(2,g(2,100,10),10) = 10^10^100

So this is also correct. Lastly we see that...

g(3,2,2,10) = g(2,g(2,g(2,2,10),10),10)

This suggests the definition...

g(1,a,b,c) = g(a,b,c)

g(n,a,b,c) = g(a,g(n-1,a,b,c),c)

While this definition is well-defined (although only implicit!) it is nothing particularly remarkable, and in fact is poorly structured for making larger numbers. First and foremost, the new argument is simply acting as a functional power, feeding back into the 2nd argument. This technique is known as primitive recursion. Primitive recursion is a very basic technique, and it was defined prior to 1928. So this is nothing new. To make matters worse, the primitive recursion should be applied to the 1st argument not the 2nd! The reason is that, this will make the new argument redundant. You see, by recursively plugging into the 2nd argument, we are doing exactly the same thing that the 1st argument already accomplished. Therefore we will find that g(n,0,a,b) grows just as fast as g(1,n,b) , g(n,1,a,b) grows just as fast as g(2,n,b), that g(n,2,a,b) will grow just as fast as g(3,n,b), and in general g(n,k,a,b) will grow just as fast as g(k+1,n,b) (plus a constant of offset). Don't believe me? Consider the following sequence.

g(3,1,10)

g(3,2,10)

g(3,3,10)

etc.

vs.

g(1,2,10,10)

g(2,2,10,10)

g(3,2,10,10)

etc.

In the first case we get g(3,1,10) = 10 , g(3,2,10) = 10^^2 = 10^10 , g(3,3,10) = 10^^3 = 10^10^10 , g(3,4,10) = 10^10^10^10, etc. On the other hand we have...

g(1,2,10,10) = g(2,10,10) = 10^10

g(2,2,10,10) = g(2,g(1,2,10,10),10) = g(2,g(2,10,10),10) = 10^10^10

g(3,2,10,10) = g(2,g(2,2,10,10),10) = g(2,10^10^10,10) = 10^10^10^10

As you see we are describing the same sequence, except that the second sequence has a offset of 1. A function grows faster than another if an only if, it can always eventually surpass it no matter how much of a headstart the other function gets. If however the functions can't catch up to each other if the other is given a lead, then neither is actually faster than the other and they are growing at the same rate. This is the case here. So Joyce has haphazardly created a redundant recursion. If we recursively plugged into the first argument however, this would produce a radical new growth rate.

As it turns out later in the text, this assumption proves false. We find that the new 4th argument (which is listed 1st), actually iterates for the last argument not the second to last. Rather it is the 5th argument that iterates the 2nd to last. In light of this,

googolplex = g(3,2,2,10)

is probably a typo and what was meant was

googolplex = g(3,1,2,2,10)

... or maybe Joyce was just being patalogical ...

Googo- Operator

Oddly, rather than follow the logic and try to create a powerful polyadic g-function, Joyce instead opts to go back to a googol and make a very curious observation and than extrapolate from that.

Andre Joyce has become part of the folk-lore and history of the googology community. Yet little is known about his work, and even less of the man himself. As a sort of cornerstone of the idea of continuing where Milton and Kasner left off, he holds a certain respect as a forefather. His work has been copied countless times on other sites of large number enthusiasts, and his claims have mostly been taken at face value. But how large are the numbers Joyce came up with? How precisely does his notation work? Is it even properly defined? How relevant is Joyce's work in today's "googology"?

"Googology" has gained a life of its own, gaining in sophistication and moving from mere humor to something pursued with a "seriousness" that probably would have thrown Joyce off!

In this article we will take a critical look at the seminal text of Andre Joyce, a sacred cornerstone of googology ( a google search of "googology" will bring it up on the first page right with googology.wiki, and that's saying something). In so doing some of mystique may wear off. There is nothing more impressive sounding than a vague idea! But I promise that the lessons we will learn from it will make us all much better googologist's in the long run. There is little sense to this senseless subject of googology if it is not at least mathematically sensible!

Ironically, despite the familiarity the googological community has with Joyce's work, very little analysis has ever been brought to bare on it on the internet. I seek to remedy this forthwith. This is in part because the text itself is confusing, vague, and poorly written. I myself had avoided giving it a proper analysis because it didn't look particularly powerful, but it did look particularly confusing! So I put it off for many years. Having finally faced the text head on, my suspicions have been confirmed. None of the ideas presented in Joyce's work are revolutionary, and the text is vague, confusing and worse yet contains many many errors.

Why bother then? Because there are lessons to be learned, distinctions to be made, and viable googolism's to harvest. I do believe the text does capture something of the spirit of the modern googology movement, the idea of creating large numbers without some practical end in mind (this is in contrast to things like Graham's Number, where it is stressed that the number is connected to some problem in serious mathematics). Joyce's googolism's, such as a googoc, for better or worse, have become part of the developing canon of googology, and they can be found along side those googolism's invented by Bowers' and others and various lists of googolism's. I would be remiss to simply ignore Joyce's work. It is simply too prevalent to ignore.

There is also one last very important reason to take a critical look at Joyce's work. Joyce's claims of reaching some of Bowers' higher googolism's has needed to be debunked for a long time. Joyce's claims, as I shall demonstrate with support of the text, are completely erroneous. Unfortunately this has not stopped non-googologist's from taking his claims at face value. I will seek to rectify this manner.

In short, I seek to once and for all set the record straight on Joyce's work; the good, the bad, ... and the down right patalogical ... :/

3.2.8

The Jubilant Googology

of

Andre Joyce

PREV>> 3.2.5 - Mega

Introduction

In the beginning was the word, and the word was "googol", and the word was good. The word was invented by Milton, and the world was introduced to the word by Edward. Then Milton said "let there be googolplex", and there was googolplex, and it was very good. Edward also introduced the world to googolplex, and together the googol and googolplex took the world by storm.

Then something happened. People liked the googol and googolplex and wanted to extend it. They saw that inventing number names was fun, and they wanted to join in the fun and make a "name for themselves", these were the men of old, the nephilim. And so, many more googolism's were invented. None of these has ever been as successful as the humble googol and googolplex in so far as you won't find them in any dictionary, or even urban dictionary! Yet On the internet they exist in super-abundance: here be dragons ... esoteric numbers so obscure and bizarre that whole new notations need to be invented just to describe them! They are created by the so called googologist's. They work in obscurity unbeknownst to most of the world (if you have found this site, you are one of the lucky few. Welcome to the world of googology).

Enter Andre Joyce, a mysterious figure who coined the term "googology" and defined it as the "study of large numbers, especially those similar to googol and googolplex". He also called himself a googologist (a person who practices googology), in addition to being a pataphysicist. In this sense he was the first "googologist" because he was the first to self-identify as such ... and yet while Joyce gave us the word googology, he can not properly be thought of the first "googologist" if that term is to mean anything! It's clear that Kasner was creating googology even if only to make a point about mathematics. He coined a "googol" after all, what's more googological then that?! What is googology then? It is the practice of coming up with large numbers for their own sake ... to stagger the human imagination with the endless wonders of the finite and the infinite!

By that reckoning, Archimedes is perhaps the earliest known person to practice googology when he wrote the Sand-Reckoner. In it he created a massive extension on the existing greek number system just to demonstrate how our ability to create numbers far outstrips the numbers we actually observe in nature, when the prevailing folk wisdom was the opposite: that nature far outstrips our ability to create numbers. Archimedes demonstrated the quintessential "googological impulse", a penchant for creating large number systems that far outstrip any practice purpose!

Up until very recently, such a practice was usually nothing more than a private musing (Archimedes Sand-Reckoner was only intended for one other reader, the King of Syracuse). In more recent years however,with the advent of the internet a small community of self-styled "googologist's" has formed and turned the private musings into a collaborative endeavor to gather all the googolism's of the world into one place!

Andre Joyce's work preceded this event, and wasn't even the main inspiration. He wasn't even the only one to engage in googology prior to the emergence of the community. However his work has played some role in the development of the ethos of googology.

g(10^100,10^100+1,g(10^100+1,10^100,2),2)

< g(10^100+1,10^100*g(10^100+1,10^100,2),2)

= 2^^^...^^^(10^100*2^^^...^^^googol) ~ 2^^^...^^^2^^^...^^^googol

Remarkably, the iteration is so insignificant at this scale that it appears to have no effect at all! None the less it is technically bigger. It's the difference between...

2^^^...^^^(googol+2^^^...^^^googol)

and...

2^^^...^^^(googol*2^^^...^^^googol)

But the numbers involved are so BIG that adding or multiplying by a googol is comparatively insignificant, so we can largely ignore them and just say that either way baggoogol would be less than g(googol+2,5,2). Likewise we find that for a traggoogol and quadraggoogol it makes little difference.

traggoogol ~< g(10^100+1,10^100*g(10^100+1,g(10^100+1,10^100,2),2),2)

= 2^^^...^^^(googol*2^^^...^^^2^^^...^^^googol)

~< g(googol+2,6,2)

quadraggoogol ~< g(10^100+1,10^100*g(10^100+1,g(10^100+1,g(10^100+1,10^100,2),2),2),2)

= 2^^^...^^^(googol*2^^^...^^^2^^^...^^^2^^^...^^^googol)

~< g(googol+2,7,2)

In true patalogical fashion, Joyce give's us these definitions only to contradict them later with a different definition later. None the less, the above values can be legitimately obtained by following Joyce's rules. It's just that they are extremely ad hoc definitions.

In any case Joyce just moves on to the next googolism. This time it's not so much his own creation, but the result of a common practice of combining the SI prefixes with the googolplex. These create numbers which go beyond the usual tetrational range go into the lower pentational range. These numbers are still inconceivably smaller than the numbers we just encountered since they only involve at most 3 up-arrows ( o_0; googology is insane isn't it!). Joyce says...

googolyottaplex = g(g(2,24,10)+3,1,2,2,10) = g(2,2,g(3,24,10)+3,10)

Just in case you don't already know a googolyottaplex is just a googol followed by 10^24 plexes, or 10^10^10^10^...^10^10^100 w/10^24+1 10's, nothing more, nothing less. Since 10^100 = g(1,1,2,100,10) and 10^10^100 = g(2,1,2,100,10), it follows that a googolyottaplex = g(10^24+1,1,2,100,10). It's a pretty simple definition. Somehow ... Joyce manages to get it wrong 2 for 2. Firstly we have...

g(2,2,g(3,24,10)+3,10) = g(2,g(3,24,10)+3,g(2,2,g(3,24,10)+3))

= ((10^24+3)^2)^(10^24+3) ~ (10^48)^(10^24) ~ 10^10^26

using the gear jammed version, and ...

g(2,2,g(3,24,10)+3,10) = g(1,2,g(3,24,10)+3,g(2,g(3,24,10)+3,10))

= (10^(10^24+3))^(10^24+3) = 10^(10^24+3)^2 ~ 10^10^48

>:(

what the f--k!?! How could it be THIS wrong?! Either way it's less than a googolplex!

Then to top it off of coarse g(g(2,24,10)+3,1,2,2,10) is not correct either. Instead we would have...

g(g(2,24,10)+2,1,2,2,10) since this is equal to g(g(2,24,10)+1,1,2,g(2,2,10),10) =

g(g(2,24,10)+1,1,2,100,10) which I previously established was the actual value of a googolyottaplex.

So apparently Joyce can't handle other peoples googology for sh-t. Thankfully he goes back to what he does best ... creating some of the weirdest and most random googolism's I've ever seen...

Some how by observing that ...

googol = g(2,50,g(1,50,2)) = (2*50)^50 = 100^50 = 10^100

Joyce comes up with some crazy vowel and repeating letter scheme that gives him the following values ....

googgol = g(2,50,g(1,50,3)) = (3*50)^50 = 150^50 (approx. 6.37*E108)

googgool = g(2,50,g(2,50,3)) = (3^50)^50 = 3^2500 (approx. E1192)

geegeel = g(3,50,g(3,50,2)) = (2^^50)^^50 ~< 2^^100

geeggeel = g(3,50,g(3,50,3)) = (3^^50)^^50 ~< 3^^100

geiggeil = g(8,50,g(8,50,3)) = (3^^^^^^^50)^^^^^^^50 ~< 3^^^^^^^100

geiggeim = g(8,1000,g(8,1000,3)) = (3^^^^^^^1000)^^^^^^^1000

~< 3^^^^^^^2000

I don't really have a major problem with this, although my personal style of googology begins with the notation and then I come up with the names after for values I think ought to have one. Joyce works in the reverse. He invents words and then tries to figure out what numbers they go? But it's alright I guess. The one contention I have however is I like googolism's to have unique spoken forms as well as written forms. How are you supposed to distinguish googol , googgol, and googgool in speech? I Don't know, and I doubt Joyce cares...

The completely Mangled Work of Jonathan Bowers'

If you thought all the proceeding was bad this is where Joyce's googological ineptitude really shines. Who ever is preparing the text (Michael?) seems to want to prove that anything Bowers' can do Joyce can do better. This turns into an absolutely EPIC fail! To be fair though, googology can be very deceptive. Beginners be warned, study a notation very carefully before you boast that you've "beaten it". The basic failure here is that the author of the text completely and utterly fails to realize the import of Bowers' work and gravely underestimates the power of his notation. Oddly enough, the text even gets the really basic stuff wrong, the stuff the notation is actually capable of describing! Out of the 13 Bowerism's (googolism's by Bowers') the text attempts to define in JMGEN it only gets 2 ... RIGHT! That's a really bad score. If your a seasoned googologist, grab some popcorn, this is bound to get pretty hilarious. If your not, just take my word for it, Bowers' notation is way way WAY scarier than this!

First up is the gaggol ...

gaggol = g(3,10000,10) = 10^^10,000

Wouldn't you know it ... it's way too small. Bowers' defines this number as 10^^^100. But wait how can 100 beat out 10,000 ... very very easily in googology. Just observe...

10^^10,000 = 10^^10^4 < 10^^10^10 = 10^^10^^2 << 10^^10^^10

<< 10^^10^^10^^10

<<< 10^^10^^10^^10^^10^^ .. .. ^^10^^10^^10^^10^^10 w/100 10s

= 10^^^100

See it now? The real value just utter dwarfs this. Remember that even with power towers numbers like 10,000 start becoming really insignificant. When we get to tetration and pentation, unimaginably more so. The sad thing is the correct value can be written in the g-function as...

gaggol = g(4,100,10)

... and this is just the beginning. It get's unimaginably worse from here...

Next we have...

gygol = g(3,10000000,10) = 10^^10,000,000

It's so wrong it hurts. This is probably a distortion of Bowers' gigol which is 10^^^^^100. Once again ...

10^^10,000,000 = 10^^10^7 < 10^^10^10 = 10^^10^^2 < 10^^10^^10 = 10^^^3 <<< 10^^^100 <<< 10^^^10^^^10 = 10^^^^3 <<< 10^^^^100 <<< 10^^^^10^^^^10 = 10^^^^^3 <<< 10^^^^^100

o_0;

Totally left in the dust. Of coarse all Joyce had to do was use g(6,100,10)

Next we have...

gagol = g(3,1000000000,10) = 10^^1,000,000,000

Does Joyce even know how up-arrows work?! And what is up with this random progression. First 10,000 then 10,000,000 then 1,000,000,000? Shouldn't it be 10,000,000,000 . . . you know what, forget it, I'm not even going to bother! Sigh... the correct value is gagol = 10^^^^^^100 = g(7,100,10). Needless to say this is incomprehensibly larger. But it gets worse ... oh so much worse.

Next the text tries to define a boogol which is 10^^^...^^^10 w/100 ^s. Would be

g(101,10,10) ... Yet somehow ...

boogol = g(11,100,10) = 10^^^^^^^^^^100

ARRRRGGGG! WHAT THE F---

Okay, okay we'll let that side, it's just a simple switching of arguments, right? RIGHT?! Oh wait...

tritri = g(4,3,3) = 3^^^3

This one is ACTUALLY CORRECT ...

tridecal = g(11,10,10) = 10^^^^^^^^^^10

and this one! This is the last time this ever happens. From here on in is the mostly epicly EPIC FAIL in all of googology history! First up is tetratri...

tetratri = g(2,1,1,4,3,3) = g(1,1,1,g(4,3,3),3,3) = g(g(4,3,3),3,3)

= 3^^^...^^^3 w/3^^^3 ^'s

Pretty scary right? well ... IT'S NOT EVEN F--KING CLOSE!!! Firstly Bowers' also uses a function which can take an arbitrary number of arguments and he also is extending on up-arrows. In Bowers' notation we have...

{b,p,c} = b^^^...^^^p w/c ^s

Bowers' uses 1's as default, as Joyce does, and ending 1's are removed, same as Joyce. Bowers' list's his arguments from least to greatest, but that's inconsequential. Bowers' also extends on this basic 3-argument scheme to arbitrary arguments, but that's where the parallels end. Bowers' uses a much more sophisticated recursion than what we see in Joyce's notation. Joyce is simply using primitive recursion (at best) for each additional argument. What Bowers' does is very clever though. He turns {b,p,1,2} into an iterator of the Ackermann function, {b,p,2,2} as a primitive recursion over that, {b,p,3,2} as a primitive recursion over that, and so on so that before he even reaches {b,p,1,3} he's already exhausted Joyce's g-notation for arbitrary arguments! and guess what ... a tetratri is {3,3,3,3}. HOLY SH-T! Joyce is royally screwed. Turns out that...

g(g(4,3,3),3,3) = {3,3,3^^^3-1} < {3,3,3^^^3} = {3,3,{3,3,3}} = {3,3,1,2}

<<< {3,3,3,3}

Ouch! And get's progressively more insanely worse from here on in. Remember that Joyce can't even get up to {b,p,1,3} as we proceed ...

(Joyce) pentatri = g(3,1,1,4,3,3) = g(2,1,1,g(4,3,3),3,3) = g(1,1,1,g(g(4,3,3),3,3),3,3)

= g(g(g(4,3,3),3,3),3,3).

The real pentatri = {3,3,3,3,3} which is a whole 'nother level of complexity beyond a {3,3,3,3}, Yet Joyce's value is less than {3,4,1,2}. CR-P!

How about ...

grand tridecal = g(3,1,1,11,10,10) = g(2,1,1,g(11,10,10),10,10)

= g(1,1,1,g(g(11,10,10),10,10),10,10) = g(g(g(11,10,10),10,10),10,10)

This is less than {10,4,1,2}. The real grand tridecal is {10,10,10,2}.

This was really just the very tippest of the iceberg. From here on, things just get UTTERLY INSANELY EPICLY FAIL!!!

What do I mean? Well consider the next Bowerism, called a dimentri , which Bowers' defines succinctly as 3^3&3. I can't do justice to this short-hand here (Bowers' notation is an advanced topic we will discuss in Section IV), but for now don't be fooled by the seemly small 3^3. It's not what you think! Joyce makes the mistake of thinking this means a mere 27 3's or something (?) ...

dimentri = g(g(2,3,3),1,1,4,3,3) = g(27,1,1,4,3,3)

This is less than {3,28,1,2}. Now here is the really crazy thing. To begin imagining dimentri think of something like this ...

{3,3,3,3,3,3,3,3,3 ... ... ,3,3,3,3,3,3,3,3,3}

but there isn't 27 3's ... oh hell no. In fact there's more than {3,3,3} 3's, more than {3,3,3,3} 3's, more than {3,3,3,3,3} 3's ... in fact this won't get us anywhere close. Even if we iterated the number of 3's it would get us no where close. What Bowers' does is he invents a notation that can go beyond a linear arrangement of arguments. Instead we can have 2-dimensional arrays of arguments, where each new row recursively plugs into the lower rows. Even just having a mere single 3 in the next row...

{3,3,3}

{3 }

Is vastly larger than any number of 3's you could think of using only a single row. And of coarse you can have an arbitrary number of rows, forming the first plane. First?! That's right, you can have multiple planes forming the first realm. Dimentri is a number in the first realm! Feel free to scream...

Although technically dimentri begins with 27 3's (hence the notation), the 3^3 also refers to how these arguments are arrayed in 3-dimensional space. Bowers' array notation expands into the lower spaces ... by the time it returns to a single row the number of 3s is simply indescribable. Joyce has no idea the kind of recursive dragon he's messing with. He think's the 3^3 refers to a mere 27 iteration steps. But iteration steps are the most basic building block of googology. This won't get you anywhere near what Bowers' is working with.

Joyce continues on blissfully unaware of the epic ownage ...

dulatri = g(g(2,g(2,2,3),3),1,1,4,3,3) = g(3^3^2,1,1,4,3,3)

This is stupidity compounded with stupidity. Note only is this still basic iteration, but Bowers' defines dulatri as (3^3)^2&3 and (3^3)^2 != 3^3^2. This is the same exponential error we've seen since the beginning. Does the fact that 3^3^2 > (3^3)^2 mean that Joyce has a chance? Not in hell. Turns out...

g(3^3^2,1,1,4,3,3) = g(19683,1,1,4,3,3) < {3,19684,1,2} << {3,3^3^3,1,2} =

{3,3^^3,1,2} = {3,{3,3,2},1,2} << {3,{3,3,3},1,2} = {3,{3,2,1,2},1,2}

<<< {3,{3,3,1,2},1,2} = {3,3,2,2}

Joyce is still just struggling to get out of 4 arguments (and in fact it's impossible for him to do. Remember his notation can't get past {b,p,1,3} ). What about Bowers' ... umm ... weelll at this point it starts getting difficult to even describe what's going on in ordinary terms. Remember the realm ... yeah you can have n-realms, which forms the first flune, you can have n-flunes, to form the first 5-d block, you can have n-5-d blocks to form the first 6-d block, and you can keep going to the googolth dimension, grand tridecalth dimension ... dimentrith dimension ... you can even iterate the number of dimensions ... and that's just the very very beginning of what a dulatri has to offer. Although difficult to imagine infinity-dimension space forms a block in Bowers' system and then you can have rows of these blocks, planes, realms, and so on. A Dulatri is a realm of infinite-dimensional blocks! I told you it was scary. It get's worse...

trimentri = g(g(2,g(2,3,3),3),1,1,4,3,3) = g(3^3^3,1,1,4,3,3)

Needless to say this is still way less than {3,3,2,2}. But Bowers' trimentri is ... almost indescribable in laymen's terms. Imagine we could have not flunes of infinite-dimensional blocks but ... infinite dimensional blocks of infinite dimensional blocks. But that's nowhere near a trimentri. Once you have that idea, go to infinite-dimensional blocks of infinite-dimensional-blocks of infinite-dimensional blocks of ... and repeat that infinitely. This itself forms a new block. Call this block X. Now you can have rows of X, planes of X, realms of X, flunes of X, infinite-dimensional blocks of X ... X blocks of X, X blocks of X blocks of X, X blocks of X blocks of X blocks of X blocks of ... and repeat that infinitely. This forms the kind of block required for a trimentri .... AAAAHHHHHHHH!?!?!

(Don't worry if that doesn't make sense right now, when we get to section IV we will investigate Bowers' notation in depth)

Lastly we have ...

decaltrix = g(g(11,10,10),1,1,11,10,10)

Firstly there's no Bowerism named decaltrix, it's tridecatrix and it's {10,10,10}&10. This explains Joyce's definition. So how big is Joyce's number? Did he reach 5 arguments in Bowers' notation. Nope...

g(g(11,10,10),1,1,11,10,10) < {10,{10,10,10}+1,1,2} << {10,{10,10,{10,10,10}},1,2} =

{10,{10,3,1,2},1,2} <<< {10,{10,10,1,2},1,2} = {10,3,2,2}

Bowers' 4-argument arrays are like an endless stairway Joyce just can't climb out of. And what of Bowers' tridecatrix? It transcends description in ordinary language ... go up to Y blocks formed from nesting X blocks, Z blocks from nested Y blocks, ... have googologically many block types in this sequence ... iterate the numbers of block types into itself ... whatever ... it's absolutely nowhere near what a tridecatrix. I can't even explain it to you ... it's that mind bogglingly indescribable!!!

Joyce has absolutely NOTHING on Bowers'. From henceforth let it never be said that any of Joyce's numbers exceed a trimentri [5] ... all Joyce's numbers are unworthy of even the humble tetratri , {3,3,3,3}. That's right, he never even made it up to the tetratri. In fact, he didn't even make it to a grand tridecal , {10,10,10,2}.

At the end of the article I'll provide a complete list of Joyce's numbers and show where they must fall between Bowers' numbers.

Joycian Fringe Googology!

Thankfully Joyce get's back to his own numbers from here on out. Finally Joyce reaches the pinnacle of his numbers. To his credit, he manages to surpass Graham's Number, a number apocryphally described as "the largest number ever used in a serious mathematical proof" (we'll be learning more about this number later in this chapter). This serves as a kind of bench mark for googology, and Joyce passes the test, though admittedly this kind of old-school these days.

In any case Joyce defines a googolplux ...

googolplux = g(g(2,100,10),g(2,100,10),1,1,2,100,10)

= g(g(3,2,g(2,100,10)),1,1,2,100,10)

Some things to note here: This number occurs immediately after the text's attempt to describe Bowerism's in g-notation, and Bowers' used the "-plux" root in a number called golapulusplux. Was a googolplex inspired by a golapulusplux, and did Joyce think it was larger? Who knows.

Looking at the definition we already have problems (more errors? This thing is just laden with them isn't it). We see that the first definition involves 7-arguments, but we haven't been given any rules for how to handle such a case. The 2nd expression is only 6-arguments and is therefore a defined value ... but the transformation doesn't make sense. How does he get from one to the other? Well let's look at the second expression...

g(g(3,2,g(2,100,10)),1,1,2,100,10) =

g((10^100)^^2,1,1,2,100,10) =

g((10^100)^(10^100),1,1,2,100,10) =

g(googol^googol,1,1,2,100,10)

Note the similarity with...

g(googol,googol,1,1,2,100,10)

Perhaps the comma was just a typo. In that case there is nothing ambiguous here. This number has been erroneously listed as 10^1,000,000 at [8], and listed alongside what is frequently called a maximusmillion, or as I prefer a millionplex. Since 10^1,000,000 already has a name, and Joyce's number has nothing to do with it, I see no reason to except this usage as "standard" even among googologist's. Joyce's googolplux is way way way beyond such a number, even beyond Graham's Number in fact. How can we describe this number. Begin with 10**100 where ** represents exponentiation. This is just the humble googol and it's the first step in our construction. Next we have 10*****...*****100 w/googol *'s. This is the 2nd step. Next have 10*****...*****100 w/as many *'s as the 2nd step, that's the 3rd step. Continue in a likewise manner until you reach the googol^googol step! This sequence passes up Graham's Number at only the 65th step. Here is a visual representation of a googolplux...

mag-(n) = g(n,n+1,n,2)

and that Joyce continued it further with ...

bag-(n) = g(2,n,n+1,n,2)

trag-(n) = g(3,n,n+1,n,2)

quadrag-(n) = g(4,n,n+1,n,2)

From these various prefixes Joyce suggests the formations fugagoogol , gaggoogol , and megafugagoogol, but he only provides an explicit definition for the last one...

megafugagoogol = g(4,2,g(2,100,10)) = (10^100)^^^2 = (10^100)^^(10^100)

which is, thankfully, correct. He goes on further to suggest that...

baggoogol = g(2, z, z + 1, z, 2), traggoogol = g(3, z, z + 1, z, 2), quadraggoogol = g(4, z, z + 1, z, 2), etc.

--[sic] Joyce

umm ... what is "z"? As you can see the text has this really bad and (noticeable) tendancy to copy and paste text without making the necessary adjustments. We can surmise that "z" was suppose to be substituted with googol. In this case we should have...

baggoogol = g(2,10^100,10^100+1,10^100,2)

traggoogol = g(3,10^100,10^100+1,10^100,2)

quadraggoogol = g(4,10^100,10^100+1,10^100,2)

These are 5 argument cases. Applying the appropriate rule we can actually compute these values. We have...

baggoogol = g(2,10^100,10^100+1,10^100,2) = g(1,10^100,10^100+1,g(10^100+1,10^100,2),2) =

g(10^100,10^100+1,g(10^100+1,10^100,2),2)

The problem: we run smack dab into the 4-argument case. If we take Joyce's rules at face value than a gear jam is inevitable and we will find this is no greater than...

g(10^100+1,g(10^100+1,10^100,2),g(10^100+1,10^100,2)^(10^100+1))

via...

g(a,b,c,d) = g(b,c,c^b)

A confusing mess, no? To make matters simpler we can approximate it as follows...

g(10^100+1,g(10^100+1,10^100,2),g(10^100+1,10^100,2)^(10^100+1))

~ g(10^100+1,g(10^100+1,10^100,2),g(10^100+1,10^100,2))

= (2^^^...^^^googol)^^^...^^^(2^^^...^^^googol)

w/^^^...^^^ contains googol ^s

That's better. Now we can use the Polyponent-Addition-Lemma (PAL) to say...

(2^^^...^^^googol)^^^...^^^(2^^^...^^^googol)

~ 2^^^...^^^(googol+2^^^...^^^googol)

~ 2^^^...^^^2^^^...^^^googol

... This is a huge number to be sure, but it's mainly due to the fact that we literally have a googol up-arrows between the arguments. So what about a traggoogol? We'll in that case we have...

traggoogol = g(3,10^100,10^100+1,10^100,2) =

g(2,10^100,10^100+1,g(10^100+1,10^100,2),2) =

g(1,10^100,10^100+1,g(10^100+1,g(10^100+1,10^100,2),2),2)

= g(10^100,10^100+1,g(10^100+1,g(10^100+1,10^100,2),2),2)

again the gear jam in rule 1 means having a googol in the 4th argument makes no difference. We get ...

g(10^100+1,g(10^100+1,g(10^100+1,10^100,2),2),g(10^100+1,g(10^100+1,10^100,2),2)^(10^100+1))

~ (2^^^...^^^2^^^...^^^googol)^^^...^^^(2^^^...^^^2^^^...^^^googol)

~ 2^^^...^^^(2^^^...^^^googol+2^^^...^^^2^^^...^^^googol) [PAL]

~ 2^^^...^^^2^^^...^^^2^^^...^^^googol

Although the number of up-arrows is very large, (seriously this wouldn't fit in the observable universe!), we are still only iterating the next operator (the googol+1 up-arrow operator). This is a little unusual for numbers this big. Usually once we have this many arrows we'd want to start iterating the number of up-arrows. We can easily between baggoogol with

g(googol+2,5,2) and traggoogol with g(googol+2,6,2). So we aren't exactly pushing the limits of the Ackermann function here. It's almost as if we are going sideways when we should be going up. None the less, let's finish with the quadraggoogol ...

quadraggoogol = g(4,10^100,10^100+1,10^100,2) =

g(3,10^100,10^100+1,g(10^100+1,10^100,2),2) =

g(2,10^100,10^100+1,g(10^100+1,g(10^100+1,10^100,2),2),2) =

g(10^100,10^100+1,g(10^100+1,g(10^100+1,g(10^100+1,10^100,2),2),2),2)

= g(10^100+1,g(10^100+1,g(10^100+1,g(10^100+1,10^100,2),2),2),g(10^100+1,g(10^100+1,g(10^100+1,10^100,2),2),2)^(10^100+1))

~ (2^^^...^^^2^^^...^^^2^^^...^^^googol)^^^...^^^(2^^^...^^^2^^^...^^^2^^^...^^^googol)

~ 2^^^...^^^(2^^^...^^^2^^^...^^^googol+2^^^...^^^2^^^...^^^2^^^...^^^googol)

~ 2^^^...^^^2^^^...^^^2^^^...^^^2^^^...^^^googol

< 2^^^...^^^^7 = g(googol+2,7,2)

What if the gear jam were corrected? Well the values would get larger, but perhaps not by as much as you think. The answer would still not involve much more than a googol up-arrows. Consider a baggoogol with this corrected definition...

baggoogol = g(2,10^100,10^100+1,10^100,2) =

g(10^100,10^100+1,g(10^100+1,10^100,2),2)

In this case we would apply "^^^...^^^2^^^...^^^googol" to "2" a googol times! By using PAL we can find a simple upperbound for g(a,b,c,d). Just observe.

g(1,b,c,d) = g(b,c,d)

g(2,b,c,d) = g(b,c,g(b,c,d)) < g(b,c+c,d) = g(b,2c,d)

if... g(k,b,c,d) < g(b,kc,d)

then...

g(k+1,b,c,d) =g(k,b,c,g(b,c,d)) < g(b,kc,g(b,c,d) < g(b,kc+c,d) = g(b,(k+1)c,d)

therefore...

g(a,b,c,d) < g(b,ac,d)

Thus ...

By taking the 3rd rule and replacing b with 1, c with b, d with c, and e with d, we get the 2nd rule. Thus the 2nd rule is redundant. What he have here is a simple primitive recursion. But a primitive recursion requires a base case. Joyce doesn't seem to realize that he needs to specify this, or he considers it "obvious". Lucky for us, however, it can easily be inferred from some of his later examples. For example Joyce defines:

googolduplex = g(4,1,2,2,10)

googoltriplex = g(5,1,2,2,10)

We already know that a googolduplex = 10^10^10^100 , and a googoltriplex = 10^10^10^10^100. Because we know what values Joyce is going for we can use this to help us interpret Joyce's expressions. Applying rule 3 we have...

googolduplex = g(4,1,2,2,10) = g(3,1,2,g(2,2,10),10) = g(3,1,2,100,10) =

g(2,1,2,g(2,100,10),10) = g(2,1,2,10^100,10) = g(1,1,2,g(2,10^100,10),10) =

g(1,1,2,10^10^100,10)

Now note, if we let 1 be the default value, and establish the rule:

g(1,@) = g(@)

Whenever g contains more than 3 arguments we can say...

g(1,1,2,10^10^100,10) = g(1,2,10^10^100,10) = g(2,10^10^100,10) = 10^10^10^100

which is the correct value for a googolduplex. So it works! We can also see what is happening pretty clearly here. The 5th argument allows us to iterate the polyponent. It therefore can be used to very good effect to define numbers that fall between the cracks of up-arrow notation, such as those in the googol family. We can also see that...

googoltriplex = g(5,1,2,2,10) = g(4,1,2,g(2,2,10),10) = g(4,1,2,100,10)

= g(3,1,2,g(2,100,10),10) = g(3,1,2,10^100,10) = g(2,1,2,g(2,10^100,10),10) =

g(2,1,2,10^10^100,10) = g(1,1,2,g(2,10^10^100,10),10) = g(1,1,2,10^10^10^100,10)

= g(1,2,10^10^10^100,10) = g(2,10^10^10^100,10) = 10^10^10^10^100

Furthermore we can see that...

googol-(n)-plex = g(n+2,1,2,2,10) = g(n+1,1,2,100,10) = g(n,1,2,googol,10)

I like to call googol-(99)-plex a "grangol" (formed from grand-googol). In this notation we have...

grangol = g(100,1,2,100,10)

As you can see, the 5-argument g-function is perfectly well defined, and is even functional. This still does not produce anything beyond the Ackermann function however!

For example ...

g(n,1,2,100,10) < g(3,n+2,10)

What about the 6-argument case? Is it well defined, and is so, is it more powerful than the Ackermann function?

Rules 4 and 5 deal with the 6-argument case, but again the 2 rules are redundant and can be reduced to a single case. In this case, the 4th rule suffices for cases involving 6-arguments...

g(a,b,c,d,e,f) = g(a-1,b,c,g(d,e,f),e,f)

Once again a base case is needed. Joyce doesn't have any examples of worked out 6-argument expressions, but we can gather that the rules are basically the same. First of all it's clear that rules 2 and 5 are using 1's as place holder values, suggesting that 1's are default for all arguments past 3. Thus 1 will be the terminating case for 6-arguments and beyond, and will simply be dropped in such a case. With this in mind, it turns out that finally Joyce produce's something which grows faster than the Ackermann function and is on par with Graham's function (we will learn about Graham's function in this chapter). To give an example of how this works consider the following...

g(1,1,1,4,3,3) = g(1,1,4,3,3) = g(1,4,3,3) = g(4,3,3) = 3^^^3 (HUGE!)

Now let's try a 2...

g(2,1,1,4,3,3) = g(1,1,1,g(4,3,3),3,3) = g(g(4,3,3),3,3) = g(3^^^3,3,3) =

3^^^^^^^^^ ... ... ^^^^^^^^^3

w/3^^^3-1 ^s

Woah! Where did that come from! The 6-argument iterates the "degree" of the Ackermann function. This leads immediately to an increment in what is known as the "order-type" (order-type is a more advanced topic we will learn more about in Section IV). This "increment" is the most basic building block of recursive functions. Yet Joyce has wasted 3 arguments to get here from the Ackermann function. No matter. All is forgiven, because we now actually have something to write home about. The next step is scary big...

g(3,1,1,4,3,3) = g(2,1,1,g(4,3,3),3,3) = g(1,1,1,g(g(4,3,3),3,3),3,3) =

g(g(g(4,3,3),3,3),3,3) =

3^^^^^^^^^ ... ... ... ^^^^^^^^^3

w/3^^^...^^^3-1 ^s

w/3^^^3-1 ^s

Each time we increment the 6th argument we feed back the number of arrows into itself! This leads to a growth rate here-to-for unencountered! In short, this beats up-arrow notation, because the number of arrows quickly becomes more than can be written out in the universe!

The final rule appears to be . . . patalogical? Note that the form does not follow any other expression in JMGEN. The arguments are not simply separated by commas, but two are grouped within paratheses. Does this mark some special status? This might be okay if what followed wasn't complete nonsense...

g((a,b),c,d) = g((a-1,b-1),g((a,b),c-1,d),d) = g(a-1,g(b-1,g(b,c-1,d)-1,d)

Let's take the first rule at face value. This is at least well formed. Now let's try and example...

g((3,3),3,3) = g((2,2),g((3,3),2,3),3) =

g((2,2),g((2,2),g((3,3),1,3),3),3)

At this point we run into a serious problem, because if we continue we are going to keep decrementing indefinitely. Problem is, we aren't told what the base case is! Even if we assume it's a 1, we aren't told what we are suppose to do here. The second statement is even worse and isn't even syntactically correct! Note that it is missing a closing paratheses...

g(a-1,g(b-1,g(b,c-1,d)-1,d)

Like rule 1, rule 6 never comes into play, so it doesn't seem to make much of a difference.

What about going beyond 6-arguments? Well the rules don't tell us what to do in this case. This would mean the best we could hope for is some clues from some worked out examples. Turns out however, that Joyce only makes very sparing use of the g-function past 6-arguments. So let's proceed with Joyce's googology for the time being. When we get to examples involving more than 6-arguments we will return to this issue...

More Joycian Googology

Joyce continues his system, expanding on his "bar" root, in ways that aren't clear to me. He defines...

umpbarbar = g(1,g(2,1000,1000),1000) = 1000*1000^1000 = 10^3*10^3000 = 10^3003

(also umpdubar )

umpbarbarbar = g(1,g(2,g(2,1000,1000),1000),1000) = 1000*1000^1000^1000 =

10^3*10^(3*10^3000) = 10^(3*10^3000+3)

(also umptribar )

For whatever reason the text has this bad habit of discussing other peoples work and generally getting it wrong in one way or another. There is little indication of whether this is part of Joyce's work or additional commentary on the part Michael Halm, presumably to "demonstrate" that Joyce's notation is already capable of matching or surpassing other notations. This leads to an epic (and I mean EPIC!) fail when we get up to the work of Jonathan Bowers.

In the meantime here's what Michael/Joyce did to f--k-up the work of Alistair Cockburn (remember we talked about his work earlier in the chapter). Firstly the text states...

gargoogol = g(2,2,g(2,100,10)) = (10^100)^2 = 10^200

This is actually correct. The problem. Earlier in the text it says that Kieran defined this as a googolplex googolplexes. That would be a gargoogolplex. A gargoogol would be a googol googol's of coarse. It get's worse however. Next it defines...

fuga-(n) = g(3,2,n) = n^^2 = n^n

This is not correct if you go back and read Cockburn's original article. It's...

fz-(n) = g(3,2,n) = n^^2 = n^n

To Joyce's credit he does give the correct definition for megafuga- ...

megafuga-(n) = g(4,2,n) = n^^^2 = n^^n

(finally something correct)

The text also attempts to define the "gag" suffix using the g-function...

gag-(n) = g(n+1,n,2)

The gag-(n) function is defined as A(n,n) using the 2-argument Ackermann function. For technical reasons, the conversion between the 2-argument and the 3-argument Ackermann function is not quite this simple, though it serves as an approximation. The text goes on to say that a Tom Kreitzberg suggested the continuation...

g(a,1,b,c,d) = g(a-1,1,b,g(b,c,d),d)

g(a,b,c,d,e) = g(a-1,b,c,g(c,d,e),e)

Joyce's More Generalized Exponential Notation

Joyce's More Generalized Exponential Notation (referred to as JMGEN forth with) allows for more than 3 arguments in the g-function. The problem is that the rules are either, ambiguous, broken, or poorly designed. The following 6 rules are offered...

g(a,b,c,d) = g(a-1,b,c,g(a,b,c))

g(a,1,b,c,d) = g(a-1,1,b,g(b,c,d),d)

g(a,b,c,d,e) = g(a-1,b,c,g(c,d,e),e)

g(a,b,c,d,e,f) = g(a-1,b,c,g(d,e,f),e,f)

g(a,1,1,b,c,d) = g(a-1,1,1,g(b,c,d),c,d)

g((a,b),c,d) = g((a-1,b-1),g((a,b),c-1,d),d) = g(a-1,g(b-1,g(b,c-1,d)-1,d)

This is how the rules appear verbatim in the text. To the untrained eye, these may appear indistinguishable from any other googological notation, as a random assemblage of mathematical statements that define some function. However, not all such assemblages produce large numbers, and one also has to be careful to make sure it is well-defined and doesn't contain infinite loops. We see that the 1st rule deals with 4 arguments, the 2nd and 3rd rule deal with 5 arguments, the 4th and 5th deal with 6 arguments, and the 6th rule, as far as I can tell is pure nonsense (it might be patalogical). Earlier we got a rule for the 4th argument g-function from the example with a googolplex, but this is inconsistent with the rule for 4 arguments presented here.

For convenience, I'll reverse the order of the arguments. The first argument, will be the furthest right, and denoted by a, the 2nd argument will be the next from the right, denoted by b, and so on. Here is the previously implied rule...

g(1,c,b,a) = g(c,b,a)

g(d,c,b,a) = g(c,g(d-1,c,b,a),a)

As noted earlier, this only produces a redundant recursion no stronger than the recursions found with 3 arguments. But it get's worse because the new rule is nothing like the above. Let's work out the example given earlier for a googolplex , g(3,2,2,10) , and see how it evaluates given the new rule:

g(3,2,2,10) = g(2,2,2,g(3,2,2)) = g(2,2,2,2^^2) = g(2,2,2,4) = g(1,2,2,g(2,2,2))

= g(1,2,2,2^2) = g(1,2,2,4)

Here we need to make a leap, because Joyce has failed to include terminating conditions. Since "1"s are used as place holders in the other rules, it seems that Joyce intends to use "1"s as terminating values for arguments past 3. In that case we have...

g(1,2,2,4) = g(2,2,4) = 4^2 = 16

So instead of getting a googolplex, we get a measly 16! But perhaps this is just a fluke. What if we change the last argument from a 3 to a 4? Well then we get...

g(4,2,2,10) = g(3,2,2,g(4,2,2)) = g(3,2,2,2^^^2) = g(3,2,2,4) = g(2,2,2,g(3,2,2))

= g(2,2,2,2^^2) = g(2,2,2,4) = g(1,2,2,g(2,2,2)) = g(1,2,2,2^2) = g(1,2,2,4) = g(2,2,4)

= 4^2 = 16

16 again. Hmm. Maybe this is just a degenerate case, due to the 2's. So let's replace b with 10 and c with 3 and try the sequence d=1,2,3,etc. That will probably give us a pretty good idea what is going on with this recursion ...

g(1,3,10,10) = g(3,10,10) = 10^^10 = HUGE!

... good start ...

g(2,3,10,10) = g(1,3,10,g(2,3,10)) = g(3,10,10^3) = g(3,10,1000)

= 1000^^10

This is a rather strange result. Even though it's technically larger, tetration is a very powerful operation and has counter-intuitive properties. Having a large base like 1000 doesn't make much of a difference in this case. This number will still be vastly smaller than 10^^11. Not a good sign for a recursion. Let's see what happens next...

g(3,3,10,10) = g(2,3,10,g(3,3,10)) = g(2,3,10,10^^3) = g(1,3,10,g(2,3,10))

= g(3,10,g(2,3,10)) = 1000^^10

what?! This is no larger than before. What happens with d=4?! ...

g(4,3,10,10) = g(3,3,10,g(4,3,10)) = g(3,3,10,10^^^3) = g(2,3,10,g(3,3,10))

= g(2,3,10,10^^3) = g(1,3,10,g(2,3,10)) = g(3,10,10^3) = 1000^^10

It appears the rotor is stuck! I'll call this being gear jammed. Although larger and larger values keep cropping up in the evaluation process they keep getting overwritten until we reach the base case of a mere 1000^^10. Even if the overwrite wasn't occurring, we still are only going up an arrow at a time, which we could have just achieved by incrementing c in the 3-argument version! It appears that Joyce has carelessly slapped a definition together without considering whether it actually produces large values! As a general rule of thumb, it should not be assumed that any set of transformations necessarily leads to larger and larger numbers.

Some further analysis reveals the problem. In the rule...

g(a,b,c,d) = g(a-1,b,c,g(a,b,c))

notice that the substitution occurs in the spot where "d" was (ie. the 1st place). Yet by the same token g(a,b,c) does not take d as an argument. The result is that d keeps being overwritten with smaller and smaller values. This occurs until we reach the base case. This can be seen by applying the formula an arbitrary number of times...

g(a,b,c,d) = g(a-1,b,c,g(a,b,c)) = g(a-2,b,c,g(a-1,b,c)) = g(a-3,b,c,g(a-2,b,c)) =

... = g(1,b,c,g(2,b,c)) = g(b,c,g(2,b,c))

Thus ...

g(a,b,c,d) = g(b,c,g(2,b,c)) = g(b,c,c^b)

Notice that it doesn't matter what values "a" and "d" are. Did Joyce intend something different, or was he simply coming up with random rules for the pataphysics of it. I don't know. What I will say is this is why Pataphysics will rot your brain! Ironically, we who call ourselves googologist's have moved beyond the purely pataphysical, preferring instead the sensible and concrete abstraction rather than the purely nonsensical one.

At this point all we can do is speculate. What if a typo lead to this definition when what was actually meant was ...

g(a,b,c,d) = g(a-1,b,c,g(b,c,d))

This actually makes a lot more recursive sense, although it's still a little odd. Here the counter (a) isn't being copied but stored in the 4th argument. However we run into another problem. Let's go back to our previous example...

g(1,3,10,10) = g(3,10,10) = 10^^10

g(2,3,10,10) = g(1,3,10,g(3,10,10)) = g(3,10,10^^10) = (10^^10)^^10 ~ 10^^20

That's way better than before ...

g(3,3,10,10) = g(2,3,10,g(3,10,10)) = g(2,3,10,10^^10) = g(1,3,10,g(3,10,10^^10))

= g(3,10,g(3,10,10^^10)) = ((10^^10)^^10)^^10 ~ 10^^30

So what we have here is a genuine iteration now. The problem is, it's iterating in the base instead of the polyponent. The result is again, grow rates already covered by the 3-argument function. For a googologist, Joyce appears to be no better at it than the average modern beginner! Googology is not just slapping rules together in a haphazard manner. It is a skill that has to be learned and developed for the purpose of coming up with the largest numbers possible.

It turns out however to make little difference since Joyce never actually use the 4-argument g-function, except in places where it is clearly in error (as pointed out earlier).

More interesting is the 5 argument version. Rules 2 and 3 deal with the 5-argument version. It turns out 2 rules aren't necessary and a single rule covers both cases.

xova = g(2,27,10) = 10^27

weica = g(2,30,10) = 10^30

vunda = g(2,33,10) = 10^33

uda = g(2,36,10) = 10^36

treda = g(2,39,10) = 10^39

satta = g(2,42,10) = 10^42

rinda = g(2,45,10) = 10^45

qeda = g(2,48,10) = 10^48

pica = g(2,51,10) = 10^51

oca = g(2,54,10) = 10^54

nica = g(2,57,10) = 10^57

menta = g(2,60,10) = 10^60

Beyond this point the text becomes rather cryptic. Here is the excerpt for how to continue ...

Beyond menta- -(e)nta- is used until sara- [s + quaranta] g(2, 120, 10), -(a)ra- until inqua- [i + cinquanta] g(2, 150, 10), -(i)nqua- until yessa- [y + sessanta] g(2, 180, 10), -(e)ssa- until otta- [o + settanta] g(2, 210, 10), (e)tta- to fetta- [f + settanta] g(2, 237, 10). To prevent confusion with eta- or yotta- higher infixes would have increase to trisyllablic, (o)ttanta- until uvanta- [u + novanta] g(2, 270, 10), (o)vanta- to lovanta- [l + novanta] g(2, 297, 10). This is the limit of this system since to apply it any higher we would have both kenta- [k + venti] g(2, 66, 10) and [k + cento] g(2, 300, 10).

--Joyce [sic]

As it so happens Joyce makes little use of all this, except for lovanta = g(2,297,10), which forms the basis of one of his googolism's.

To go much further in Joyce's work we now have to face it's most perplexing feature ... a rather ad hoc multi-argument extension of the Ackermann function.

He goes on in a style inspired by the works of Aronson and Blowers, by going backwards through the alphabet while reciting latin with slight modifications along the way. Here is his list of extended prefixes...

mega = g(2,6,10) = 10^6

giga = g(2,9,10) = 10^9

tera = g(2,12,10) = 10^12

peta = g(2,15,10) = 10^15

exa = g(2,18,10) = 10^18

zetta = g(2,21,10) = 10^21

yotta = g(2,24,10) = 10^24

googoc = g(2,100,200) = 200^100 (approx. 1.26*E230)

googoci = g(2,101,202) = 202^101 (approx. 6.92*E232)

googocci = g(2,201,402) = 402^201 (approx. 2.81*E523)

googoccic = g(2,299,598) = 598^299 (approx. 1.71*E830)

The first 3 should not require comment for anyone familiar with roman numerals. The last one however is not a standard roman numeral. However by a obvious extension we can interpret 'ic' as "99" by following the rule of small-to-large. Since 'i' is smaller than 'c', it must be subtracted from 'c' (100) and thus this results in 100-1 = 99. Thus 'ccic' is 200+99 = 299. Joyce recognizes some potential problems with pronunciation and attempts to pre-empt them by allowing greater flexibility in the way that roman numerals can be interpreted including the allowance of vowels to make them more pronounceable. Joyce offers these special cases ...

ij = 2

vij = 7

xij = 12

xvij = 17

xxij = 22

il = 49

ic = 99

cil = 149

cic = 199

cid = 399

All of these are pretty clear adaptions. Final 'i's can be replaced with 'j's. When a smaller denomination comes first it should be subtracted from the larger. Only the last one is ambiguous. Does it mean c+id or (ci)d. If it's the first then we interpret it as 100+(500-1) = 100+499 = 599. If it's the latter we get 500-(100+1) = 500-101 = 399. It is the latter interpretation that Joyce is using, but it is hardly the most natural. There is no rule in roman numerals that says you can subtract in this way.

Further oddities are added to the system ...

ox = 3

vox = 8

xox = 13

xvox = 18

mox = 1003

Joyce uses the last one to form ...

googolmox = g(2,1003,2006) = 2006^1003 (approx. E3312)

Note here that Joyce violates his own principle. This should be interpreted as googo-lmox, where lmox = LMIII. This should be interpreted as (1000-50)+3 = 950+3 = 953. Yet Joyce is simply using "mox" with a value 1003.

Joyce also adds vowels to some of the roman numerals, when in combination, in order to aid in pronounceability. For example ...

"ex" = X

"el" = L

"em" or "ump" = M

Joyce uses the last one to define umpteen as 1000+10 (1010) and umpty as 1000*10 (10,000). Furthermore from these we get...

googolex = g(2,60,120) = 120^60 (approx. 5.63*E124)

googoxem = g(2,990,1980) = 1980^990 (approx. E3263)

googomump = g(2,2000,4000) = 4000^2000 (approx. E7204)

(Note googomump is not to be confused with the similarly named gogoomump which is 10^12000 from the source [8]. However I suspect that this was just an error on the part of the author who not only got the definition wrong but the name as well!)

To allow for even more variety Joyce allows symbols to be repeated based on the greek numeral attached to them. For example ...

quadrix = 9999

based on the the principle that "quadr" is 4, while "ix" is 9. So it's '9' repeated 4 times. Using this scheme he comes up with some further examples ...

vigintiv = 44444444444444444444

That's 20 "4"s. These so called "repdigits" can be more conveniently represented using simple elementary functions. Since 10^n-1 is always represented as n "9"s, and (10^n-1)/9 would be n "1"s repeating, we can get any digit, k, repeated n times using the formula k*(10^n-1)/9. Thus...

quadrix = 10^4-1

while...

vigintiv = 4*(10^20-1)/9

Joyce also allows the mixing of such components to create mixes of such strings. For example...

quadrixvigintiv = 999944444444444444444444

duquadrixvigintiv = 999944444444444444444444999944444444444444444444

These can be expressed by adapting the approach used earlier to take into account shifts in the starting position of a repdigit. In this case, if we want digit "k" repeated "n" times following "m" digits we can use...

k*10^m*(10^n-1)/9 = k*(10^(m+n)-10^m)/9

Such repdigit representations can then be added to get the whole. For example...

quadrixvigintiv = (10^24-10^20)+4*(10^20-1)/9

and

duquadrixvigintiv = (10^48-10^44)+4*(10^44-10^24)/9+(10^24-10^20)+4*(10^20-1)/9

Note that duquadrixvigintiv introduces a new rule, but that it's application is ambiguous. Is it (du-quadrix)vigintiv or du-(quadrixvigintiv). In the first case it would be 9999999944444444444444444444 (8 "9"s followed by 20 "4"s). In the second case it would be 999944444444444444444444999944444444444444444444 (4 "9"s followed by 20 "4"s followed by 4 "9"s followed by 20 "4"s). Joyce has used the second interpretation here.

Lastly Joyce coins ...

centix = g(2,101,10)-1 = 100 "9"s

Here we see yet another of Joyce's many errors. A 100 "9"s should be 10^100-1 or g(2,100,10), but Joyce has introduced an "off-by-one-error". This is because 10^n always contains n+1 digits (A 1 followed by "n" zeroes), not n digits. Consequently 10^n-1 always contains exactly "n" digits, all 9s. Correcting for this it's clear that Joyce intended to use...

centix = g(2,100,10)-1 = 10^100-1 = 99999...99999 w/100 "9"s

Interestingly, after setting up these under the pretense of being used as prefixes, Joyce doesn't actually bother to apply them to the googo- operator. Instead they become numbers in their own right.

Joyce continues rather tangentially to further adaptions of this suffix system. Joyce uses the root (n)-ile to mean 1/n. Thus by applying a multiplier, m, we can get (m)(n)-ile = m/n. What follows however is quite strange. He coins...

integral-megaseptile = [g(2,6,10)/7] = [10^6/7] = 142,857

The ' [ ] ' are acting here as a floor function. Since the notation is non-standard however, I prefer the more explicit...

integral-megaseptile = (10^6-1)/7 = 142,857

This produces the desired positive integer without having to muck about with fractions (not that I have much against fractions in general, but in googology, restricting the subject to integer values creates a convenient theory in which we can think of googological functions as being produced as merely compositions and recursions on the successor function and it's inverse). Joyce goes on in this obtuse manner with a few more examples ...

integral-exaundevigintile = (10^18-1)/19 = 52,631,578,947,368,421

Joyce obtains the value 52,631,578,947,368,424 however multiplying this number by 19 actually produces 1,000,000,000,000,000,056 which is too much. On the other hand multiplying by my number results in 999,999,999,999,999,999 demonstrating that (10^18) mod 19 is indeed 1. Moving on...

integral-dekapetaseptemdecile = (10^16-1)/17 = 588,235,294,117,647

integral-dekazettatrevigintile = (10^22-1)/23 = 434,782,608,695,652,173,913

integral-myriayottaundetrigintile = (10^28-1)/29 = 344,827,586,206,896,551,724,137,931

integral-dekazettayottaseptemquadragintile = (10^46-1)/47

= 212,765,957,446,808,510,638,297,872,340,425,531,914,893,617

You may notice the little "-1" appended in each case. This is a consequence of Fermat's Little Theorem. This theorem can be used to generate an integer of the form (10^(p-1)-1)/p for any prime p, except for 2 or 5. Fermat's Little Theorem states:

a^(p-1) = 1 (mod p) : (a mod p) !=0

In Joyce's case, he has set a=10. Thus we have 10^(p-1) mod p = 1, provided 10 mod p != 0. In the case of 2 or 5 we have 10 mod 2 = 0 and 10 mod 5 = 0, and thus Fermat's Little Theorem does not apply. For all other primes however we are guaranteed to get a non-zero modulus because they are necessarily relatively prime to 10, which is just 2*5. Thus we can make much larger integers of the Joycian form, up to the largest numbers we can prove prime. Since the largest known prime is hyper-exponential, and the form basically gives a number with a number of digits approximately equal to p, we could say the largest such numbers would be hyper-hyper-exponential. So the potential for googological expansion of this idea is rather limited.

In any case Joyce moves on to his next bizarre idea. Joyce notes that "bars" are used in roman numerals to multiply by 1000. Using the root "bar" as a multiplier, x1000, he devises the following googolism's...

googolbar = g(2,50000,100000) = 100,000^50,000 = 10^250,000

googocbar = g(2,100000,200000) = 200,000^100,000 (approx. E530,102)

googodbar = g(2,500000,1000000) = 1,000,000^500,000 = 10^3,000,000

googombar = g(2,1000000,2000000) = 2,000,000^1,000,000 (approx. E6,301,030)

googomembar = g(2,2000000,4000000) = 4,000,000^2,000,000 (approx. E13,204,120)

Now we're talking! These numbers go beyond astronomical, containing hundreds of thousands, millions, and tens of millions of digits. Thus we see the beginning of googologically large numbers here, though still quite tiny by modern googological standards (Interestingly, a googol isn't quite googological by this standard, being only a few orders of magnitude above astronomical, but a googolplex is, completely transcending "astronomical").

Joycian Extended Prefixes

Before we continue I'd like to cover Joyce's extension of the SI prefixes. There aren't too many of them and they are used in the construction of some further googolism's. Joyce recognizes all of the standard SI prefixes and give them the correct definitions...

Don't misunderstand this value. It does not say a googolplux has 10^10^102 (that's equivalent to a googol^googol) stars. Instead that's the number of times the stars are being cycled back into themselves. The first member has 2 stars, the 2nd has a googol stars, and the 3rd has 10*** ... googol stars ... ***100 stars! That's way more than googol^googol stars. A googol^googol amounts to way less than 10***100. So we have a real monster here. It's much larger than g(g(2,g(2,3,3),3),1,1,4,3,3), which only iterates stars a mere 7,625,597,484,987 times, but it is admittedly much less than g(g(11,10,10),1,1,11,10,10) which iterates stars 10***********10 times!!! Still googolplux is a ridiculously big number, and I'll admit, I think it's pretty cool. The best thing Joyce has come up with so far, even if the name is kind of unimpressive.

Is this the end of Joyce's googology? Not quite. He goes further than this still. Next he coins the googolpluc ...

googolpluc = g(g(g(2,2,3),2,g(2,100,10)),1,1,2,100,10)

The key here is the last argument, g(g(2,2,3),2,g(2,100,10)). This can be simplified to ...

g(3^2,2,10^100) = g(9,2,googol) = googol^^^^^^^^2 = googol^^^^^^^googol

So...

googolpluc = g(googol^^^^^^^googol,1,1,2,100,10)

Now we are starting to get somewhere. This leaves the previous number of iterations in the dust. Here is a visual representation of a googolpluc ...

This even seems to be making some progress in Bowers' array notation. googolpluc would be bounded by...

g(n,1,1,2,100,10) < {10,n+1,1,2}

Therefore...

googolpluc = g(googol^^^^^^^googol,1,1,2,100,10) < {10,googol^^^^^^^googol,1,2}

= {10,{googol,googol,7},1,2} < {10,{10,googol+100,7},1,2}

< {10,{10,10^101,7},1,2} < {10,{10,10^^10,7},1,2} < {10,{10,{10,10,7},7},1,2}

< {10,{10,3,8},1,2} < {10,{10,10,10},1,2} = {10,{10,2,1,2},1,2}

< {10,{10,10,1,2},1,2} = {10,3,2,2}

So Joyce is still upper-bounded by the 4-argument array {10,3,2,2}. That shouldn't be surprising considering that a googolpluc is still less than g(g(11,10,10),1,1,11,10,10). Okay, here is Joyce's next attempt at a truly massive number, a googolplum ...

googolplum = g(g(g(3,3,3),2,g(2,100,10)),1,1,2,100,10)

Evaluating this we get...

g(g(3^^3,2,10^100),1,1,2,100,10) = g(g(7625597484987,2,googol),1,1,2,100,10)

That's googol^^^...^^^googol with 7,625,597,484,985 ^s. This number is even more massive than g(g(11,10,10),1,1,11,10,10). It's the largest of Joyce's numbers so far! We can represent it visually as ...

Pretty wild ( just make sure you don't eat this many plums). We see the beginnings of a new stack forming on the right. So how far is this along Bowers' arrays? Did Joyce pass up {10,3,2,2} yet? Let's see...

g(g(7625597484987,2,googol),1,1,2,100,10)

< {10,g(7625597484987,2,googol)+1,1,2}

= {10,{googol,googol,7625597484985}+1,1,2}

< {10,{googol,googol+1,7625597484985},1,2}

< {10,{10,googol+101,7625597484985},1,2}

< {10,{10,10^101,7625597484985},1,2}

< {10,{10,{10,10,2},7625597484985}1,2}

< {10,{10,{10,10,7625597484985},7625597484985},1,2}

= {10,{10,3,7625597484986},1,2}

<< {10,{10,10,{10,10,10}},1,2}

= {10,{10,3,1,2},1,2}

<< {10,{10,10,1,2},1,2}

= {10,3,2,2}

Nope. Not even close. Joyce is simply going too slow to reach {10,3,2,2} which is itself vastly smaller than {10,10,10,2} (grand tridecal).

7 or more arguments?

And here we reach Joyce's final bid for really large numbers. He revisits the baggoogol but this time its...

baggoogol = g(2,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

g(2,50,100) is just 100^50 = 10^100, so this is just a googol. Thus a baggoogol can also be written as...

g(2,1,1,googol,googol,googol,googol)

The main difficultly here is that Joyce is now undeniably using a 7-argument g-function, and yet the text doesn't supply a clear rule past 6-arguments. It's clear that the 7th argument is meant to iterate the 4th, based on the progression, the 4th iterates the 1st, the 5th iterates the 2nd, and the 6th iterates the 3rd. This is also implied by the place-holder 1's in the 5th and 6th position. Joyce lists this number, along with a whole series of 7-argument numbers after a googolplum, so it could be surmised that this is Joyce's attempt to transcend the 6-argument g-function. Joyce probably assumed these would be much larger. But there is a problem. If the 7th argument iterates the 4th and the 4th iterates the 1st, then this won't grow anywhere as fast as the 6th argument. Paradoxically this should be going slower and consequently, these numbers should be vanishingly small compare to the googolplux, googolpluc, and googolplum, contrary to popular opinion.

But before we can even get to comparisons we first have to establish a rule for the 7-argument g-function. In the absence of anything definitive, he have to either attempt to extrapolate from Joyce's rules to a general case, or use worked out examples to reverse engineer it. The problem is there are no worked out examples. Joyce doesn't show us how to expand the baggoogol in this instance. So our only choice is to extrapolate from the rules for 4,5, and 6 arguments. Unfortunately there is not one clear way to continue, so instead I will present a few theories.

The first theory that comes to mind is based on the fact than in all the rules except the first one, Joyce simply grabs the last 3 arguments, plugs them into a 3-argument g-function, and decrements the lead argument. We can assume the first case is a typo, especially since this leads to a gear-jam. It seems likely, given the general quality of Joyce's work, that Joyce would probably consider it reasonable to extend this to all additional arguments. However, Joyce would be falling into a trap. If this holds then every argument past the 6th would lead to a gear jam. Firstly here is how the rule would look...

g(1,@) = g(@)

g(a,b,c,d, ... ,x,y,z) = g(a-1,b,c,g(x,y,z), ... ,x,y,z)

This works as long as g(x,y,z) is overwriting x, y, or z. Otherwise, this will simply keep being overwritten with the exact same arguments ( a gear jam). If this is so, then it doesn't matter how large Joyce makes the 7th argument, it will always result in the same value because the 7th argument will just happily tick down without actually iterating anything. Here is an example ...

g(3,1,1,100,100,100,100)

= g(2,1,1,g(100,100,100),100,100,100)

Note that the last 3 arguments are unaffected by this. So what 3 arguments does the function grab on the next step?...

g(2,1,1,g(100,100,100),100,100,100)

= g(1,1,1,g(100,100,100),100,100,100)

the exact same values. Then once we reach 1 we can remove the leading 1s and get...

g(1,1,1,g(100,100,100),100,100,100)

= g(g(100,100,100),100,100,100)

Note that it doesn't even matter what the value of the 4th argument is, because it simply get's overwritten...

g(3,1,1,10000000000,100,100,100)

= g(2,1,1,g(100,100,100),100,100,100)

= g(1,1,1,g(100,100,100),100,100,100

=g(g(100,100,100),100,100,100)

It also doesn't matter how large the 7th argument is...

g(10000000000,1,1,100,100,100,100)

= g(9999999999,1,1,g(100,100,100),100,100,100)

= g(9999999998,1,1,g(100,100,100),100,100,100)

= g(9999999997,1,1,g(100,100,100),100,100,100)

...

= g(4,1,1,g(100,100,100),100,100,100)

= g(3,1,1,g(100,100,100),100,100,100)

= g(2,1,1,g(100,100,100),100,100,100)

= g(1,1,1,g(100,100,100),100,100,100)

= g(g(100,100,100),100,100,100)

The only thing that changes is how many steps are required to evaluate. The value of the final expression remains the same!

So if this is really what Joyce had in mind then is g-function is quite useless past 6-arguments (which might suggest why he stopped at 6 in the first place). This pattern of taking the last 3 arguments and plugging it into a 3-argument g function simply won't work past 6 arguments.

How else could we interpret the continuation? Perhaps Joyce was smarter than this and he knew that he needs an argument to iterate with itself. In this case a variety of choices can be made. Let's say he sticks to the 3-consecutive-argument rule, but the 3 arguments can change. After the 5th argument, we use the following rule...

g(a,b,c,d,e,f@) = g(a-1,b,c,g(d,e,f),e,f@)

What's nice about this rule is it jibes with the rule for 6-arguments, and will work for all successive arguments. In this case we actually do get iteration, but it is not particularly fast and is less powerful than the usual primitive recursion. Consider our previous example. We now have...

g(3,1,1,100,100,100,100)

= g(2,1,1,g(100,100,100),100,100,100)

= g(1,1,1,g(g(100,100,100),100,100),100,100,100)

= g(g(g(100,100,100),100,100),100,100,100)

This would lead to a larger value than before, and better yet we can keep getting larger values as we increase the 7th argument. This is assuming that the 4th argument itself isn't gear jammed by taking Joyce's Rule 1 literally (As I said it's probably a typo, but it's impossible to say with all the patalogical fluff floating around ). In the case where there are no gear jams however, this still isn't particularly powerful recursion and it won't be much more powerful than iteration caused by the 6th argument. In fact the bulk of the power will come from the iteration with the 3rd argument caused by the 7th argument. The first 3 arguments hardly matter, and the 4th argument is so out of scale with the recursion that we can say ...

g(g(g(100,100,100),100,100),100,100,100) ~ g(g(100,100,100),100,100)

You might recall from our earlier analysis of the 4th argument that it was demonstrated that even with the correction...

g(a,b,c,d) < g(b,ac,d)

Therefore...

g(g(g(100,100,100),100,100),100,100,100) =

g(100,100*g(g(100,100,100),100,100),100) =

100***...100 stars...***(100*100***...g(100,100,100) stars...***100)

Despite how fast 100***...100 stars...***n grows in ordinary terms, this is such a huge "n" in this case that the result is approximately "n". This isn't so strange if you consider the following examples...

10^10^^100 = 10^^101

10^10^^^100 = 10^(10^^10^^^99) = 10^^(1+10^^^99) <<< 10^^^101

10^10^^^^100 = 10^10^^^10^^^^99 = 10^10^^(10^^^(10^^^^99-1)) =

10^^(1+10^^^(10^^^^99-1)) <<< 10^^10^^^10^^^^99 = 10^^10^^^^100

<<< 10^^^^101

In short, the "100 stars" wouldn't even contribute a +1 to the lead polyponent of 100. The multiplying by 100 can also more or less be ignored compared to the other factor. Thus we can say that...

g(g(g(100,100,100),100,100),100,100,100) ~ g(g(100,100,100),100,100)

So even under these generous assumptions the 7th argument can not grow faster than an iterated ackermann function. In other words the 7th is no more powerful than the 6th! Furthermore if this is actually Joyce's design of the polyadic g-function (g-function which can take 3 or more arguments), then Joyce can do no better than an iterated-iterated-ackermann function. To see why this is we will need to define a function for the purpose of comparisons. Let...

j(n) = g(n,1,1,11,10,10)

Thus...

j(1) = g(11,10,10)

j(2) = g(g(11,10,10),10,10)

j(3) = g(g(g(11,10,10),10,10),10,10)

j(4) = g(g(g(g(11,10,10),10,10),10,10),10,10)

etc.

j(n) has the growth rate of an iterated-ackermann function (for seasoned googologist's this is an order-type of w+1). We only need to consider the 6th,9th,12th, and in general the (3n)th argument to see why Joyce can't surpass an iterated-iterated-ackermann. For the 9th argument we get...

g(1,1,1,11,10,10,11,10,10) ~ j(11)

g(2,1,1,11,10,10,11,10,10)

= g(1,1,1,g(11,10,10),10,10,11,10,10) ~ j(j(1))

g(3,1,1,11,10,10,11,10,10)

= g(2,1,1,g(11,10,10),10,10,11,10,10)

= g(1,1,1,g(g(11,10,10),10,10),10,10,11,10,10)

= g(g(g(11,10,10),10,10),10,10,11,10,10) ~ j(j(2))

g(4,1,1,11,10,10,11,10,10)

= g(3,1,1,J(1),10,10,11,10,10)

= g(2,1,1,J(2),10,10,11,10,10)

= g(1,1,1,J(3),10,10,11,10,10)

= g(J(3),10,10,11,10,10) ~ j(j(3))

in general ...

g(n,1,1,11,10,10,11,10,10) ~ j(j(n-1))

Next we use this to establish the growth rate for 12 arguments...

g(1,1,1,11,10,10,11,10,10,11,10,10) ~ j(j(11))

g(2,1,1,11,10,10,11,10,10,11,10,10)

= g(1,1,1,j(1),10,10,11,10,10,11,10,10) ~ j(j(j(1)))

g(3,1,1,11,10,10,11,10,10,11,10,10)

= g(2,1,1,j(1),10,10,11,10,10,11,10,10)

= g(j(2),10,10,11,10,10,11,10,10) ~ j(j(j(2)))

g(4,1,1,11,10,10,11,10,10,11,10,10)

= g(3,1,1,j(1),10,10,11,10,10,11,10,10)

= g(2,1,1,j(2),10,10,11,10,10,11,10,10)

= g(j(3),10,10,11,10,10,11,10,10) ~ j(j(j(3)))

... in general ...

g(n,1,1,11,10,10,11,10,10,11,10,10) ~ j(j(j(n-1)))

therefore...

g(n,1,1,11,10,10,11,10,10,11,10,10,11,10,10) ~ j(j(j(j(n-1))))

therefore...

g(n,1,1,11,10,10,11,10,10,11,10,10,11,10,10,11,10,10) ~ j(j(j(j(j(n-1)))))

As you can see every time we add 3 more arguments we nest one more j-function. Thus when taken to arbitrary arguments we can an arbitrary number of j's. Thus we are iterating the j-function which itself is an iterated-Ackermann function.

Is this the only way Joyce could have continued? No. But we can only really speculate at this point. It is possible that Joyce's function can go further than this, but it requires a serious modification of the rules. Perhaps Joyce is smart enough to realize that not only does he have to iterate, but he needs to iterate a g-function with the same number of arguments as the argument it is iterating. This way, he get's a primitive recursion for every 3 arguments, rather than a mere recursive step every 3 arguments. To do this we can use the following rule:

g(a,b,c,d,@) = g(a-1,b,c,g(d,@),@)

provided @ contains at least 2 additional arguments. Thus we would have for our 7 argument example...

g(2,1,1,100,100,100,100) = g(1,1,1,g(100,100,100,100),100,100,100)

= g(g(100,100,100,100),100,100,100) ~ g(g(100,200,100),100,100,100)

~ g(100,100*g(100,200,100),100) = 100***...***(100*100***...***200)

< 100***...***(100***...***100***...***100) = 100***...101 stars...****4

= g(101,4,100)

g(3,1,1,100,100,100,100) = g(2,1,1,g(100,100,100,100),100,100,100)

= g(1,1,1,g(g(100,100,100,100),100,100,100),100,100,100)

g(g(101,4,100),100,100,100) ~ g(100,100*g(101,4,100),100)

~ g(101,5,100)

g(4,1,1,100,100,100,100) = g(3,1,1,g(100,100,100,100),100,100,100)

~ g(2,1,1,g(101,4,100),100,100,100)

= g(g(g(101,4,100),100,100,100),100,100,100)

~ g(g(101,5,100),100,100,100)

~ g(101,6,100)

In general ...

g(n,1,1,100,100,100,100) ~ g(101,n+2,100)

Paradoxically this actually makes the 7th argument much much weaker! This is because we are iterating the 4th argument which only iterates the base of the Ackermann function, whereas before we were iterating the 3rd argument, the degree! In the long run however this will pay off. Consider the following upshot, again using the j-function as an informal measure...

g(1,1,1,11,10,10,11,10,10) ~ j(11)

Same as before. But now consider...

g(2,1,1,11,10,10,11,10,10) =

g(1,1,1,g(11,10,10,11,10,10),10,10,11,10,10) ~ j(j(11))

g(3,1,1,11,10,10,11,10,10) =

g(2,1,1,g(11,10,10,11,10,10),10,10,11,10,10) ~

g(2,1,1,j(11),10,10,11,10,10)

= g(1,1,1,g(j(11),10,10,11,10,10),10,10,11,10,10) ~

g(j(j(11)),10,10,11,10,10) ~ j(j(j(11)))

g(4,1,1,11,10,10,11,10,10) ~

g(3,1,1,j(11),10,10,11,10,10) ~

g(2,1,1,j(j(11)),10,10,11,10,10) ~

g(1,1,1,j(j(j(11))),10,10,11,10,10) ~ j(j(j(j(11))))

g(5,1,1,11,10,10,11,10,10) ~

g(4,1,1,j(11),10,10,11,10,10) ~

g(3,1,1,j(j(11)),10,10,11,10,10) ~

g(2,1,1,j(j(j(11))),10,10,11,10,10) ~

g(1,1,1,j(j(j(j(11)))),10,10,11,10,10) ~ j(j(j(j(j(11)))))

... in general ...

g(n,1,1,11,10,10,11,10,10) ~ j(j(j( ... j(j(j(11))) ... ))) w/n j's

So already with 9 arguments we have as much power as we had before with arbitrary arguments. And it gets much better. Define...

j2(n) = j(j(j(...j(j(j(11)))...))) w/n j's

Then we can go on to say...

g(1,1,1,11,10,10,11,10,10,11,10,10) ~ j(j(j(j(j(j(j(j(j(j(j(11))))))))))) ~ j2(11)

g(2,1,1,11,10,10,11,10,10,11,10,10)

~ g(1,1,1,g(11,10,10,11,10,10,11,10,10),10,10,11,10,10,11,10,10)

~ g(j2(11),10,10,11,10,10,11,10,10) ~ j2(j2(11))

... o_0;

g(3,1,1,11,10,10,11,10,10,11,10,10)

~ g(2,1,1,j2(11),10,10,11,10,10,11,10,10)

~ g(1,1,1,j2(j2(11)),10,10,11,10,10,11,10,10)

~ j2(j2(j2(11)))

in general...

g(n,1,1,11,10,10,11,10,10,11,10,10) ~ j2(j2(j2(...j2(j2(j2(11)))...))) w/n j2's

Now just define...

j3(n) = j2(j2(j2(...j2(j2(j2(11)))...))) w/n j2's

You can probably guess what happens. Every time we add 3 new arguments, we get one more iteration stacked on top of the Ackermann function. Thus under this scheme Joyce's system can reach a hypothetical limit of arbitrary primitive recursions on the Ackermann function. For those who are familiar with ordinal notations we can say that the best case scenario is that Joyce's polyadic g-function is no higher than order-type w*2. This makes it far weaker than conway chain arrows and means it can't even surpass 4-argument conway chains, let alone 4-argument arrays. The above rule will still produce a function bounded by {b,p,1,3} as stated earlier!

In short, Joyce provides no justication to believe he can add more than a single primitive recursion per argument, and his rules suggest that it's more like per every 3 arguments, or perhaps that all his arguments only amount to about 2 extra primitive recursions.

So there you have it folks. Joyce has no business saying the g-function can trump linear arrays with more than 4 arguments, let alone higher array structures. Let's now finish our exploration of Joyce's work before we wrap up with a final list of his googolism's sorted by size...

Joyce's Last Bastion

The last googolism's Joyce coins are the 7 argument values...

baggoogol = g(2,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

traggoogol = g(3,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

quadraggoogol = g(4,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

centaggoogol = g(100,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

dentaggoogol = g(500,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

mentaggoogol = g(1000,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

bentaggoogol = g(2000,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

trentaggoogol = g(3000,1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

yottaggoogol = g(g(2,24,10),1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

lovantaggoogol = g(g(2,297,10),1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

myriaplexaggoogol =

g(g(2,10000,10),1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

megaplexaggoogol =

g(g(2,1000000,10),1,1,g(2,50,100),g(2,50,100),g(2,50,100),g(2,50,100))

As I pointed out in the previous sub-heading, there is no one definitive way to define a 7-argument g-function given Joyce's ambiguous writings, and instead the best I can provide is a list of possible theories of how to continue. There are 4 rulesets we will consider, and we will see how large these values can potentially get. These are:

(1) Gear-jammed version (Joyce's rule 1 verbatim)

(2) Grab 3 last arguments

(3) Grab 3 sequential arguments

(3) Grab last n arguments

Under the first ruleset, in which we take Joyce's rule 1 at face value, it doesn't actually matter what the other rules are. Inevitably we will get in all cases...

g(X,googol,googol,googol)

For some possibly large X that will reduce to...

g(googol,googol,(2,googol,googol))

Thus we could say under this scheme...

baggoogol = traggoogol = quadraggoogol = ... = megaplexaggoogol =

(googol^googol)****...****googol w/googol *s

In this case, Joyce doesn't even make it to Graham's Number, and a googolplux is much much larger than these.

Scenario 2 is more interesting. Here the 4-argument Function is not gear jammed, but the 7-argument is. In this case we have...

g(X,1,1,googol,googol,googol,googol)

= g(g(googol,googol,googol),googol,googol,googol)

Once again, all Joyce's values would end up being the same and ...

baggoogol = traggoogol = quadraggoogol = ... = megaplexaggoogol =

googol****... googol stars ...****(googol*googol****.... googol stars ...****googol)

~ g(googol+1,3,googol)

On the scales we are talking about, adding another * isn't a significant improvement. Again, in this scenario all of these values would be less than Graham's Number and much less than a googolplux. This would be rather ironic since Joyce no doubt intended for these to be vastly larger.

Next let's consider scenario 3 in which all the gear-jams are fixed, but Joyce carelessly only takes 3 arguments everytime reducing his system to order-type w+2. In this case the values are now distinct. We have...

g(X,1,1,googol,googol,googol,googol)

= g(g(g...g(g(g(googol,googol,googol),googol,googol)...,googol,googol),googol,googol,googol)

~ g(X-1,1,1,googol,googol,googol)

For size reference recall that...

googolplux = g(10^10^102,1,1,2,100,10)

So X has to be greater than 10^10^102 if it's to be any sort of challenge to a googolplux, googolpluc, and googolplum.

Guess what ... turns out ALL of these (n)-ggoogol numbers are vastly smaller than a googolplux then! So much for making a new record.

Finally in scenario 4 we iterate the 4th argument resulting in roughly...

g(X,1,1,googol,googol,googol,googol)

~ g(googol+1,X+2,googol)

And guess what ... these are unimaginably worse than before. At these under scenario 3, centaggoogol and above could at least claim to be larger than Graham's Number.

The conclusion seems inescapable. These numbers are actually smaller than googolplux, googolpluc and googolplum! Yet they are consistently listed as larger and therefore larger than Bowers' tridecatrix! As you can see this claim does not hold under scrutiny.

I believe it is safe to say that in all of Joyce's writings, the largest well defined value is a googolplum. A mind-boggling number by ordinary standards. Even so a googolplum is much smaller than {10,3,2,2}. So in all of Joyce's writings he doesn't even reach a grand tridecal.

As we progress through Section III and Section IV I'll show you how we can get much much further even than a grand tridecal!

Joyce's Googology : Final Assessment

Joyce's work is no longer competitive in the current googology scene! However, his googology is still a good place for beginners to learn the ropes of notation creation. Joyce gave us the "term" googology, and also provided some decent googology, similar to the likes of Edward Kasner, Cockburn, Steinhaus, Moser, and Graham. It's part of the history of googology, and so it will remain a cornerstone. But it must be taken with a grain of salt. Just because it is sacred writ, doesn't mean it is above analysis. Let it stand on it's own merits and shortcomings. I hope that I have done my part to both deflate the "myth" surrounding the power of the g-function, as well as redeemed it's value by showing that it CAN be well-defined with just the slightest amount of extra care to detail. I must warn fledging googologist's that this level of informality should not be emulated. The goal of googologist's should always be to advance their craft, both in expressing themselves whimsically, but also, in demonstrating their mathematical prowess. There is no googology without it's potent combination of whimsy and rationality. To forget one or the other is, in my opinion, to miss the point. Joyce, perhaps didn't understand the real spirit of what he aimed to practice. Googology is not nonsense. It is practical. Practical not in the sense that it serves some "practical end" outside of itself, but that it is a practice/craft which seeks to create a tangible rational end product ... well defined numbers. Without that it's all just gibberish and hand waving.

Reference Table for Joycian googolism's

The following table puts most of the viable Joycian googolism's in their correct size order from least to greatest, and it also includes other popular large numbers as size references. This is meant to correct any false information regarding the size of Joyce's numbers. I have excluded numbers which I feel are too ambiguous for inclusion. Basically if there is more than 1 way to interpret a Joycian googologism, then it isn't included on this list. Since "baggoogol" and the like have at least 2 distinct definitions they are excluded. This list also serves to provide a rough count on the number of Joycian googolism's

conclusion

whimsy has it's place in googology, but it must always defer to mathematical soundness. We are not prone to practice whimsical-mathematics (read crank-mathematics), only to practice mathematics whimsically. There is a difference.

NEXT>> 3.2.9 - Graham's Number