Update
This commit is contained in:
parent
5cb3296fc9
commit
68a9873928
20 changed files with 64 additions and 39 deletions
|
@ -4,7 +4,7 @@
|
|||
|
||||
*UNDER CONSTRUCTION*
|
||||
|
||||
{ This article contains unoriginal research with errors and TODOs, read at own risk. ~drummyfish }
|
||||
{ This article contains unoriginal research with errors and TODOs, read at own risk. Some really interesting and more in-dept information can be found at this nice site: http://mrob.com/pub/math/largenum.html. ~drummyfish }
|
||||
|
||||
Hyperoperations are [mathematical](math.md) operations that are generalizations/continuations of the basic arithmetic operations of addition, multiplication, exponentiation etc. Basically they're like the basic operations like plus but on steroids. When we realize that multiplication is just repeated addition and exponentiation is just repeated multiplication, it is possible to continue in the same spirit and keep inventing new operations by simply saying that a new operation means repeating the previously defined operation, so we define repeated exponentiation, which we call tetration, then we define repeated tetration, which we call pentation, etc.
|
||||
|
||||
|
@ -29,6 +29,8 @@ The following is a sum-up of the basic hyperoperations as they are commonly defi
|
|||
|
||||
The following ASCII masterpiece shows the number [2](two.md) in the territory of these hyperoperations:
|
||||
|
||||
{ When performing these calculations, use some special calculator that allows extremely high numbers such as HyperCalc (http://mrob.com/pub/comp/hypercalc/hypercalc-javascript.html) or Wolfram Alpha. ~drummyfish }
|
||||
|
||||
```
|
||||
2 +1 +1 +1 +1 +1 +1 +1 ... successor
|
||||
| __/ ________/ / 9
|
||||
|
@ -41,13 +43,13 @@ The following ASCII masterpiece shows the number [2](two.md) in the territory of
|
|||
2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 ... multiplication
|
||||
| |4 8 __/ 16 32 64 128 256
|
||||
| | /
|
||||
| | /
|
||||
| | / ~10^(6 * 10^19728)
|
||||
2 ^ (2 ^ (2 ^ (2 ^ (2 ^ (2 ^ (2 ^ (2 ... exponentiation
|
||||
| |4 16__/ 65536 ~10^19000
|
||||
| |4 16__/ 65536 ~10^19728 ~10^(10^(10^19728))
|
||||
| | / not sure about arrows here, numbers get too big, TODO
|
||||
| | /
|
||||
2 ^^(2 ^^(2 ^^(2 ^^(2 ^^(2 ^^(2 ^^(2 ... tetration
|
||||
| |4 |65536
|
||||
| |4 |65536
|
||||
| | | not sure about arrows here either
|
||||
| | |
|
||||
2 ^^^(2 ^^^(2 ^^^(2 ^^^(2 ^^^(2 ^^^(2 ^^^(2 ... pentation
|
||||
|
@ -58,7 +60,7 @@ Some things generally hold about hyperoperations, for example for any operation
|
|||
|
||||
[Hyperroot](hyperroot.md) is the generalization of [square root](sqrt.md), i.e. for example for tetration the *n*th hyperroot of number *a* is such number *x* that *tetration(x,n) = a*.
|
||||
|
||||
**Left associativity hyperoperations**: Alternatively left association can be considered for defining hyperoperations which gives different operations. Here is the same picture as above, but for left associativity -- we see the numbers don't grow THAT quickly (but still pretty quickly).
|
||||
**Left associativity hyperoperations**: Alternatively left association can be considered for defining hyperoperations which gives different operations. However this is usually not considered because, as mentioned in the webpage above, e.g. left association tetration *a ^^ b* can be simplified to *a ^ (a ^ (b - 1))* and so it isn't really a new operation. Anyway, here is the same picture as above, but for left associativity -- we see the numbers don't grow THAT quickly (but still pretty quickly).
|
||||
|
||||
```
|
||||
2 +1 +1 +1 +1 +1 +1 +1 ... successor
|
||||
|
@ -87,6 +89,8 @@ Some things generally hold about hyperoperations, for example for any operation
|
|||
|
||||
In fact we may choose to randomly combine left and right associativity to get all kinds of weird hyperoperations. For example we may define tetration with right associativity but then use left associativity for the next operation above it (we could call it e.g. "right-left pentation"), so in fact we get a binary [tree](tree.md) of hyperoperations here (as shown by M. Muller in his paper on this topic).
|
||||
|
||||
Of course, we can now go further and start inventing things such as hyperlogarithms, hyperfactorials etc.
|
||||
|
||||
## Code
|
||||
|
||||
Here's a [C](c.md) implementation of some hyperoperations including a general hyperN operation and an option to set left or right associativity (however note that even with 64 bit ints numbers overflow very quickly here):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue