Googology Wiki
Register
Advertisement
Googology Wiki

View full site to see MathJax equation

Not to be confused with ε function.
Hyper-E notation
Based onExponentiation
Growth rate\(f_{\omega}(n)\)

Hyper-E Notation (E# for short) is a notation for large numbers devised by Sbiis Saibian.[1] It was first introduced on his Web book One to Infinity: A Finite Journey on November 19, 2011, and was generalized to Extended Hyper-E Notation (xE# for short). Hyper-E Notation is a refined version of a notation Sbiis Saibian devised as a child.

E# is not primitive recursive, and specifically the function E(n) = En##n eventually dominates all primitive recursive functions.[2] In fact, in the fast-growing hierarchy, \(n \mapsto\textrm E100\#\#n\) dominates \(f_n\) for all \(n < \omega\) and is itself dominated by \(f_\omega\).

E# and xE# form part of a larger notation, the Extensible-E System, that also encompasses Cascading-E Notation.

Nathan Ho and Wojowu proved termination for the rules of Hyper-E Notation.[3]

Original definition[]

The original Hyper-E Notation consists of a sequence an of one or more positive integer arguments separated by hyperions (or hyper marks) #. We notate this as E[b]a1#a2#...#an. b is called the base — if it is omitted, as it often is, it defaults to 10. "E[b]d" is also equal to "b^d".

The three rules are as follows:

  • Rule 1. If there are no hyperions:
    \(\textrm E[b]x = b^x\).
  • Rule 2. If the last entry is 1:
    \(\textrm E[b]{a_1}\#{a_2}\#{a_3}\cdots\#{a_n}\#1 = E[b]{a_1}\#{a_2}\#{a_3}\cdots\#{a_n}\).
  • Rule 3. Otherwise(iteration last):
    \(\textrm E[b]{a_1}\#{a_2}\#{a_3}\cdots\#{a_{n-2}}\#{a_{n-1}}\#{a_n} =\)
    \(= \textrm E[b]{a_1}\#{a_2}\#{a_3}\cdots\#{a_{n-2}}\#(\textrm E[b]{a_1}\#{a_2}\#{a_3}\cdots\#{a_{n-2}}\#{a_{n-1}}\#{(a_n-1)})\)

In plain English:

  1. If there is only one argument x, the value of the expression is bx.
  2. If the last entry is 1, it may be removed.
  3. Otherwise...
    1. Evaluate the original expression, but with the last entry decreased by 1. Call this value z.
    2. Remove the last two entries of the expression.
    3. Add z as an entry to the end of the expression.

The priority of the rules are stated in the original webpage below the definition, "There are 3 rules used. If your given a E# expression, you first check to see if rule 1 applies. If it does not you check for rule 2. If that doesn't apply you go to 3." It disables \( a_n \) being 1 in the 3rd rule and avoids an overlapping case classification.

Extended definition[]

Extended Hyper-E notation
Based onhyperion marks
Growth rate\(f_{\omega^{\omega}}(n)\)

Extended Hyper-E Notation allows multiple hyperions to appear between each entry. The number of hyperions following entry an is represented by h(n). For the sake of this definition, #n is a shorthand for n successive hyperion marks. For example, a full expression would be written E(b)a1#h(1)a2#h(2)...#h(n - 1)an#h(n). Saibian uses @ to indicate the rest of the expression such as Bowers uses # to indicate the rest of the array.

The difference between original and extended notation is that extended Hyper-E notation allows more than one consecutive #'s.

  • Rule 1. If there are no hyperions:
    \(E(b)x = b^x\).
  • Rule 2. If the last entry is 1:
    \(E(b) @ \#^{h(n-1)}{a_n}\#^{h(n)}1 = E(b) @ \#^{h(n-1)}{a_n}\).
  • Rule 3. If \(h(n-1)>1\):
    \(E(b) @ \#^{h(n-2)}{a_{n-1}}\#^{h(n-1)}{a_n} = E(b) @ \#^{h(n-2)}{a_{n-1}}\#^{h(n-1)-1}{a_{n-1}}\#^{h(n-1)}{a_n-1}\).
  • Rule 4. Otherwise:
    \(E(b) @ \#^{h(n-2)}{a_{n-1}}\#{a_n} = E(b) @ \#^{h(n-2)}(E(b) @ \#^{h(n-2)}{a_{n-1}}\#{a_n-1})\) (note \(\#^1\) = \(\#\)).

It seems similar to linear array notation rules. We can also rewrite it in plain English:

  1. If there is only one argument x, the value of the expression is bx.
  2. If the last entry is 1, it may be removed.
  3. Let h be the length of the last set of hyperion marks. If h > 1:
    1. Remove the last entry of the expression and call it r.
    2. Again remove the last entry of the expression; this time call it z.
    3. Repeat "z" r times with h - 1 hyperion marks in between each repetition. Append this to the end of the expression. (Restore a removed hyperion mark sequence to glue the two expressions together.)
  4. If the last set of hyperion marks is of length one:
    1. Evaluate the original expression, but with the last entry decreased by 1. Call this value z.
    2. Remove the last two entries of the expression.
    3. Add z as an entry to the end of the expression. (Again, restore a removed hyperion mark sequence to glue the two expressions together.)

Examples[]

  • E6 = E6#1 = 106 = million
  • E100 = E100#1 = 10100 = googol
    This is an example of rule 1 with a one-entry expressions. Since the base defaults to 10, we can abbreviate E(10)100 as E100.
  • E100#2 = E(E100#1) = E10100 = 1010100 = googolplex
  • E100#3 = E(E100#2) = E1010100 = 101010100 = googolduplex
    This is an example of rule 3 (rule 4 in the expansion) with a two-entry expressions. In the second expression, the parentheses can be omitted: E(E100#1) = EE100#1.
  • E303#1 = E303 = eceton = centillion = 10303
  • E303#2 = ecetonplex = EE303 = 1010303
  • E303#3 = EEE303 = 101010303 = ecetonduplex
  • E1#3 = EEE1 = 101010 = trialogue
  • E1#4 = EEEE1 = 10101010 = tetralogue
  • E1#10 = EEEEEEEEEE1 = 10^^10 = Decker
  • E303#6 = EEEEEE303 = 101010101010303 = ecetonquintiplex
  • E1#100 = EEE...EEE1 (100 E's) = giggol
    Repeated application of rule 3: E1#100 = EE1#99 = EEE1#98 = ...
  • E100#100 = EEE...EEE100 (100 E's) = grangol
    This is the same as E1#100, but with a different first entry.
  • E100#101 = EEE...EEE100 (101 E's) = grangolplex
    E100#101 = EE100#100 = 10grangol, hence the name.
  • E100#100#2 = E100#(E100#100) = EEE...EEE100 (grangol E's) = grangoldex
    Now we enter three-entry expressions.
  • E100#100#3 = E100#(E100#100#2) = E100#(E100#(E100#100)) = EEE...EEE100 (grangoldex E's) = grangoldudex
    Increasing the value of the third entry makes nesting deeper and deeper.
  • E100#100#100#100 = E100#100#(E100#100#100#99) = E100#100#(E100#100#(E100#100#100#98)) = ... gigangol
    Four-entry expressions are similar — they create deeper and deeper nesting in the array level below them. This can also be written as E100##4; the beginning of the next level of the notation.
  • E100##100 = E100#100#100#...#100#100#100 with 100 repetitions of 100 = gugold
    Now we have arrived at Extended Hyper-E Notation. Two successive hyperion marks (deutero-hyperions) indicate repetition at the lower level.
  • E100##100#100 = graatagold
    This expression decomposes into Ea##b expressions by applying rule 4 repeatedly.
  • E100##100##100 = E100##100#100#...#100#100 with 100 repetitions of 100 = gugolthra
    We ignore the first ## until the second one has been expanded and all the 100s have been solved.
  • E100###100 = E100##100##...##100##100 with 100 repetitions of 100 = throogol
    Three hyperion marks (trito-hyperions) constitute a repetition of two hyperion marks. Remember, the double marks are solved from right to left.
  • E100####100 = E100###100###...###100###100 with 100 repetitions of 100 = teroogol
    Quadruple hyperions decompose into triples.
  • Godgahlah = E100#####...#####100 with 100 hyperion marks or E100#100100
    Sets of 100 hyperion marks decompose into 99s, 99s decompose into 98s, etc. Also note that the superscript 100 means that there are 100 #'s, and should not be confused with E100#(100100).

Relationship to Other Notations[]

The first segments of Hyper-E notation are based on exponentiation, i.e. En equals 10n. Nesting in a single-entry Hyper-E produces iterated exponentiation, such as EEEn=101010n. Then, hyperion marks come into play. Because hyperion marks are crucial to the recursion in this notation, certain arrangements of hyperions can indicate similarity to other notations defined by recursion.

Hyper-E can relate to arrow notation through the following rule: [4]

\(a \uparrow^{c}b = E(a)\underbrace{1\#1\#...1\#}_{(1\#) \times (c-1)}b\)

for positive integers a, b, c. For example,

  • a↑b = E(a)b
  • a↑↑b = E(a)1#b
  • a↑↑↑b = E(a)1#1#b
  • a↑↑↑↑b = E(a)1#1#1#b

Pseudocode[]

For a fixed number of variables, the original Hyper-E Notation is primitive-recursive, although the values it produces are well beyond that of any computer. The extended Hyper-E Notation is nonprimitive-recursive for two variables or more.

function Eb(a1, a2, ..., an - 1, an): //Default value of b is 10

    if n = 1:
        return ba1

    if an = 1:
        return Eb(a1, a2, ..., an - 1)

    z := Eb(a1, a2, ..., an - 1, an - 1)

    return Eb(a1, a2, ..., an - 2, z)
 
function xEb(a1, a2, ..., an - 1, an;
             h1, h2, ..., hn - 2, hn - 1): //Default value of b is 10

    if n = 1:
        return ba1

    if an = 1:
        return xEb(a1, a2, ..., an - 1;
                   h1, h2, ..., hn - 2)

    if hn - 1 > 1:
        r := an
        z := an - 1
        zseq := z, z, ..., z, z (r times)
        h := ah - 1
        hseq := h, h, ..., h, h (r - 1 times)
        return xEb(a1, a2, ..., an - 2, zseq;
                   h1, h2, ..., hn - 2, hseq)

    z := xEb(a1, a2, ..., an - 1;
             h1, h2, ..., hn - 2, hn - 1)
    return xEb(a1, a2, ..., an - 2, z;
               h1, h2, ..., hn - 2)


Sources[]

See also[]

Browse the Hyper-E numbers
Saibian's Hyper-E numbers | Cascading-E
Greagol — Gugold
Greagol—gigangol series: greagol · greagolgong · googolthrex · ecetonthrex · tria-petaxis · greagolthrex · greagolthrexigong · ecetonduthrex · tetra-petaxis · greagolduthrex · greagolduthrexigong · penta-petaxis · hexa-petaxis · hepta-petaxis · octa-petaxis · enna-petaxis · deka-petaxis · hecta-petaxis
Gigangol—gugold series: gigangol · gigangolgong · ecetontetrex · tria-exaxis · gigangoltetrex · gigangoltetrexigong · ecetondutetrex · tetra-exaxis · gigangoldutetrex · gigangoldutetrexigong · deka-exaxis · hecta-exaxis · gorgegol · gorgegolgong · ecetonpentex · tria-eptaxis · gorgegolpentex · gorgegolpentexigong · ecetondupentex · tetra-eptaxis · gorgegoldupentex · gorgegoldupentexigong · deka-eptaxis · hecta-eptaxis · gulgol · gulgolgong · ecetonhex · tria-octaxis · gulgolhex · gulgolhexigong · ecetonduhex · tetra-octaxis · gulgolduhex · gulgolduhexigong · deka-octaxis · hecta-octaxis · gaspgol · gaspgolgong · ecetonheptex · tria-ennaxis · gaspgolheptex · gaspgolheptexigong · ecetonduheptex · tetra-ennaxis · gaspgolduheptex · gaspgolduheptexigong · deka-ennaxis · hecta-ennaxis · ginorgol · ginorgolgong · ecetonoctex · tria-dekaxis · ginorgoloctex · ginorgoloctexigong · ecetonduoctex · tetra-dekaxis · ginorgolduoctex · ginorgolduoctexigong · deka-dekaxis · hecta-dekaxis · gargantuul · googondol · googoadol · goograndol · googreadol · googigandol · googorgedol · googuldol · googaspdol · googinordol · googarganduul · googonkosol · googontritol · googonsartol · googonpetol · googonextol · googoneptol · googonogdol · googonentol
Gugold — Throogol
Gugold—gugolthra series: gugold · gugoldagong · great googol · great grangol · gugolda-suplex · gugolda-suplexigong · gugolda-dusuplex · gugolda-dusuplexigong · graatagold · graatagoldagong · graatagolda-sudex · graatagolda-sudexigong · graatagolda-dusudex · graatagolda-dusudexigong · greegold · greegoldagong · greegolda-suthrex · greegolda-suthrexigong · greegolda-dusuthrex · greegolda-dusuthrexigong · grinningold · grinningoldagong · grinningolda-sutetrex · grinningolda-sutetrexigong · grinningolda-dusutetrex · grinningolda-dusutetrexigong · golaagold · golaagoldagong · golaagolda-supentex · golaagolda-supentexigong · golaagolda-dusupentex · golaagolda-dusupentexigong · gruelohgold · gruelohgoldagong · gruelohgolda-suhex · gruelohgolda-suhexigong · gruelohgolda-dusuhex · gruelohgolda-dusuhexigong · gaspgold · gaspgoldagong · gaspgolda-suheptex · gaspgolda-suheptexigong · gaspgolda-dusuheptex · gaspgolda-dusuheptexigong · ginorgold · ginorgoldagong · ginorgolda-suoctex · ginorgolda-suoctexigong · ginorgolda-dusuoctex · ginorgolda-dusuoctexigong · gargantuuld · googondold · googonkosold
Gugolthra—throogol series: gugolthra · great gugold · gugolthra-plexitris · graatagolthra · greegolthra · grinningolthra · golaagolthra · gruelohgolthra · gaspgolthra · ginorgolthra · gargantuulthra · googondolthra · gugoltesla · gugoltesla-plexitetris · graatagoltesla · greegoltesla · grinningoltesla · golaagoltesla · gruelohgoltesla · gaspgoltesla · ginorgoltesla · gargantuultesla · googondoltesla · gugolpeta · graatagolpeta · greegolpeta · grinningolpeta · golaagolpeta · gruelohgolpeta · gaspgolpeta · ginorgolpeta · gargantuulpeta · googondolpeta · gugolhexa · graatagolhexa · greegolhexa · grinningolhexa · golaagolhexa · gruelohgolhexa · gaspgolhexa · ginorgolhexa · gargantuulhexa · googondolhexa · gugolhepta · graatagolhepta · greegolhepta · grinningolhepta · golaagolhepta · gruelohgolhepta · gaspgolhepta · ginorgolhepta · gargantuulhepta · googondolhepta · gugolocta · graatagolocta · greegolocta · grinningolocta · golaagolocta · gruelohgolocta · gaspgolocta · ginorgolocta · gargantuulocta · googondolocta · gugolenna · graatagolenna · greegolenna · grinningolenna · golaagolenna · gruelohgolenna · gaspgolenna · ginorgolenna · gargantuulenna · googondolenna · gugoldeka · graatagoldeka · greegoldeka · grinningoldeka · golaagoldeka · gruelohgoldeka · gaspgoldeka · ginorgoldeka · gargantuuldeka · googondoldeka · gugolendeka · gugoldodeka · gugoltriadeka · gugoltetradeka · gugolpentadeka · gugolhexadeka · gugolicosa · gugoltrianta · gugolsaranta · gugolpeninta · gugolexinta · gugolebdominta · gugologdonta · gugoleneninta
Throogol — Godgahlah-ex-grand godgahlah
Throogol—tetroogol series: throogol · great gugolthra · grand throogol · thrangol · threagol · thrigangol · throrgegol · thrulgol · thraspgol · thrinorgol · thrarantuul · throogondol · thrugold · thraatagold · threegold · thrinningold · throlaagold · thruelohgold · thraspgold · thrinorgold · thrargantuuld · throogondold · thrugolthra · thraatagolthra · thrugoltesla · thrugolpeta · thrugolhexa · thrugolhepta · thrugolocta · throotrigol · thrantrigol · threatrigol · thrutrigold · thraatatrigold · threetrigold · thrutrigolthra · thraatatrigolthra · thrutrigoltesla · thrutrigolpeta · thrutrigolhexa · throotergol · thrantergol · threatergol · thrutergold · thraatatergold · thrutergolthra · thrutergoltesla · thrutergolpeta · thrutergolhexa · throopetol · thranpetol · thrupetold · thrupetolthra · throohexol · thranhexol · thruhexold · thruhexolthra · throoheptgol · throogogdol · throogentol · throodekol
Tetroogol—godgahlah series: tetroogol · grand tetroogol · tetrangol · tetreagol · tetrugold · tetraatagold · tetrugolthra · tetrugoltesla · tetrithroogol · tetrithrootrigol · tetrithrootergol · tetrithroopetol · tetrithroohexol · tetrootrigol · tetratrithroogol · tetratrithrootrigol · tetrootergol · tetraterithroogol · tetroopetol · tetroohexol · tetrooheptgol · tetroogogdol · tetroogentol · tetroodekol · pentoogol · pentrangol · pentugold · pentithroogol · pentitetroogol · pentootrigol · pentootergol · pentoopetol · pentoohexol · hexoogol · hexootrigol · heptoogol · ogdoogol · ogdahepti-hexapenti-tetrithroogol · ogdatri-hexi-pentateri-tetrapetithrinortrigolthra · entoogol · dektoogol · endektoogol · icosolus · triantolus · sarantolus · penintolus · exintolus · ebdomintolus · ogdontolus · enenintolus
Godgahlah - godgahlah-ex-grand godgahlah series: godgahlah · chilliatolus · myriatolus · godgahlahgong · grand godgahlah · grand godgahlahgong · grand grand godgahlah · grand grand grand godgahlah · grand grand grand grand godgahlah · hundred-ex-grand godgahlah · godgahlah-ex-grand godgahlah

Advertisement