超E符號

**超E符號**（英語：**Hyper-E Notation**，簡稱**E#**）是由Sbiis Saibian設計的一個大數符號。這個記號首次在2011年11月19日於他的網路電子書*從一到無窮大：有限數的指南*被介紹，同時也推廣到了**擴展超E符號**（英語：**Extended Hyper-E Notation**，簡稱**xE#**）。超E符號是Sbiis Saibian於孩童時期所發明的符號的改進版。

E#和xE#都包含在更大的記號中，即擴展-E系統，這也包括連鎖E符號。

Nathan Ho和Wojowu證明了超E符號最終會終止。

## 原始定義

原始超E符號是由一個或多個正整數**參數**「an」及分隔參數的**海柏利昂**「#」所組成的。此記號寫起來會長成這樣：E[b]a1#a2#...#an。其中b是**底數**，如果它被忽略，那麼代表它等於預設值10。「E[b]d」也可表示為「b^d」。

超E符號的三條規則如下：

* **規則1.** 如果沒有海柏利昂：
\(E[b]x = b^x\)
* **規則2.** 如果最後一項是1：
\(E[b]{a\_1}\#{a\_2}\#\cdots\#{a\_n}\#1 = E[b]{a\_1}\#{a\_2}\#\cdots\#{a\_n}\)
* **規則3.** 否則：
\(E[b]{a\_1}\#{a\_2}\#\cdots\#{a\_{n-2}}\#{a\_{n-1}}\#{a\_n}\)
\(= E[b]{a\_1}\#{a\_2}\#\cdots\#{a\_{n-2}}\#(E[b]{a\_1}\#{a\_2}\#\cdots\#{a\_{n-2}}\#{a\_{n-1}}\#({a\_n-1}))\)

如果以中文來表達的話，就是：

1. 如果只有一個參數x，整個表達式的值為bx。
2. 如果最後一項是1，它可以被去除。
3. 否則：
	1. 複製原表達式，但將最後一項減去1，將此表達式設為z。
	2. 將表達式的最後兩項去除。
	3. 在表達式的最後添加z這項參數。

## 擴展定義

Template:Function
**擴展超E符號**允許每個參數間出現多個海柏利昂。在參數an後出現的海柏利昂個數均會以h(n)表示。另外，#n代表連續n個海柏利昂標識。一個完整的表達式應當會寫成E[b]a1#h(1)a2#h(2)...#h(n-1)an。另外，Saibian使用「@」表示不需操作、可以被忽略的表達式，就如同鮑爾斯的「#」一般。

原始和擴展符號的不同之處，在於擴展超E符號允許多於一個且連續的#。

為方便定義，這裡假設p = an-1, q = an, x = h(n-1)：

* **規則1.** 如果沒有hyperions：
\(E[b]q = b^q\)
* **規則2.** 如果最後一項是1：
\(@\#^{x}1 = @\)
* **規則3.** 如果x > 1：
\(@p\#^{x}q = @p\#^{x-1}(p\#^{x}(q-1))\)
* **規則4.** 否則：
\(@p\#q = @(@p\#(q-1))\)（注意\(\#^1 = \#\)）

也可以把這些規則寫成中文：

1. 如果只有一個參數x，整個表達式的值為bx。
2. 如果最後一項是1，它可以被去除。
3. 設h為最後一個海柏利昂標識的長度。如果h > 1：
	1. 去除表達式的最後一項，並設那項為r。
	2. 再次去除新表達式的最後一項，並設那項為z。
	3. 此時複製出r個z，在每個z之間都接上h-1個海柏利昂標識。將此添加到表達式的結尾。
4. 如果最後一個海柏利昂標識的長度為1：
	1. 複製原表達式，但將最後一項減去1，將此表達式設為z。
	2. 將表達式的最後兩項去除。
	3. 在表達式的最後添加z這項參數。

例子
--

* E[10]6 = E6 = E6#1 = 106 = 百萬
* E[10]100 = E100 = E100#1 = 10100 = 古戈爾
這是只有一個參數並應用規則1的例子。由於底數的預設值為10，我們可以將E[10]100縮寫為E100。
* E100#2 = E(E100#1) = E10100 = 1010100 = 古戈爾普勒克斯
* E100#3 = E(E100#2) = E1010100 = 101010100 = 古戈爾度普勒克斯
這是有兩個參數並應用規則3（在擴展定義為規則4）的例子。在第一個等號右邊的表達式中，括號可以被省略，例如：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#5=EEEEE1=1010101010 =Pentalogue
* E1#10 = EEEEEEEEEE1 = 10^^10 = Decker
* E303#6 = EEEEEE303 = 101010101010303 = ecetonquintiplex
* E1#100 = EEE...EEE1 (100 E's) = giggol
這是規則3的重複應用：E1#100 = EE1#99 = EEE1#98 = ...
* E100#100 = EEE...EEE100 (100 E's) = grangol
這和E1#100基本相同，差別在於第一項不同。
* E100#101 = EEE...EEE100 (101 E's) = grangolplex
E100#101 = EE100#100 = 10grangol，故名。
* E100#100#2 = E100#(E100#100) = EEE...EEE100 (grangol E's) = grangoldex
現在表達式開始有三項數字。
* E100#100#3 = E100#(E100#100#2) = E100#(E100#(E100#100)) = EEE...EEE100 (grangoldex E's) = grangoldudex
增加第三項的值，使嵌套越來越深。
* E100#100#100#100 = E100#100#(E100#100#100#99) = E100#100#(E100#100#(E100#100#100#98)) = ... gigangol
這是四項表達式，但運作方式仍然類似。嵌套會越來越深。這也可以寫為E100##4，一個新的層次的開始。
* E100##100 = E100#100#100#...#100#100#100 with 100 repetitions of 100 = gugold
現在已經到達擴展超E符號。兩個連續的海柏利昂標記（*雙海柏利昂*）是較低層次的重複。
* E100##100#100 = graatagold
可以通過反覆應用規則4來簡化為E*a*##*b*。
* E100##100##100 = E100##100#100#...#100#100 with 100 repetitions of 100 = gugolthra
在##的後面所有100都已經解決後，第一個##才會被展開。
* E100###100 = E100##100##...##100##100 with 100 repetitions of 100 = throogol
三超標記（*三海柏利昂*）是雙超標記的重複。雙超標記從右到左解決。
* E100####100 = E100###100###...###100###100 with 100 repetitions of 100 = teroogol
四超標記分解成三超標記。
* Godgahlah = E100#####...#####100 with 100 hyperion marks or E100#100100
100超標記分解成99超標記，99超標記分解成98超標記，等等。另外，上標100意味著有100個#，這不應與E100#(100100)混淆。