Hyper-E notation
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).
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 →E100##n dominates fn for all n < ω and is itself dominated by fω.
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[edit]
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:
- E[b]x = b^x.
- Rule 2. If the last entry is 1:
- E[b]a1#a2#a3...#an#1 = E[b]a1#a2#a3...#an
- Rule 3. Otherwise(iteration last):
- E[b]a1#a2#a3...#an-2#an-1#an = E[b]a1#a2#a3...#an-2#(E[b]a1#a2#a3...#an-2#an-1#an-1)
In plain English:
- If there is only one argument x, the value of the expression is b^x.
- If the last entry is 1, it may be removed.
- Otherwise...
- Evaluate the original expression, but with the last entry decreased by 1. Call this value z.
- Remove the last two entries of the expression.
- Add z as an entry to the end of the expression.
- If there is only one argument x, the value of the expression is .
- If the last entry is 1, it may be removed.
- Otherwise...
- Evaluate the original expression, but with the last entry decreased by 1. Call this value z.
- Remove the last two entries of the expression.
- 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 an being 1 in the 3rd rule and avoids an overlapping case classification.
Extended definition[edit]
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, 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. 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)an#h(n)1 = E(b) @ #h(n-1)an.
- Rule 3. If h(n-1)>1:
- E(b) @ #h(n-2)an-1#h(n-1)an = E(b) @ #h(n-2)an-1#h(n-1)-1an-1#h(n-1)an-1.
- Rule 4. Otherwise:
- E(b) @ #h(n-2)an-1#an = E(b) @ #h(n-2)(E(b) @ #h(n-2)an-1#an-1 (note #1 = #).
Examples[edit]
- 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 = , 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).
References[edit]
This article "Hyper-E notation" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Hyper-E notation. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.