Angle bracket notation (ConceptTopic, 3)
From Hi.gher. Space
[ System created by Keiji ]
This details Jonathan Bowers' notation on angle brackets. To summarize this, a <1> b = a+b, a <2> b = a*b, a <3> b = a^b, etc.
As an example, using only the numbers 1 to 9:
- 51 = 6 <1> (5 <2> 9)
Now, the reason I've left it only using the numbers 1-9 is because this way it can be shortened even more. By removing all the angle brackets and spaces, leaving only numbers and brackets, we get the following:
- (61(529))
Note that the outermost brackets are only there to denote which is compact angle bracket (CAB) notation and which is ordinary math.
This is very space-saving to store in a computer, as since there are only 11 different symbols it can be stored with two characters per byte. With very large numbers this would be useful. Consider one googolplex, 1010100. A computer currently would be unable to store this number. However, if we convert it to this notation:
- 10 = (225)
- 100 = ((225)32)
- 10100 = ((225)3((225)32))
- 1010100 = ((225)3((225)3((225)32)))
This, being only 23 characters long, can be stored in only 12 bytes of data.
The general rule for the string of characters is "In each group of numbers, where a group is everything between one "(" and its respective ")" exclusively, only 3 numbers or groups are allowed, no more and no less."
Given this rule I will now generate a completely random valid string of characters to prove that it can be expanded to angle-bracket notation: "23((628)7(5(187)(95(752))))" - 27 characters, occupying 14 bytes
First of all, if we take the (752) part, which expands to 7 <5> 2, we get 7 hyper5ed to 2, which is 7 hyper4ed to 7, which is: 7^(7^(7^(7^(7^(7^7)))))
Bearing in mind that 7^7 = 823543, 7^(7^7) would be a very large number let alone the whole thing.
A note to be said here is that if, in (a <b> c), a is 1 and b > 2, then that expression can simply be replaced by 1. This is because:
- 1+n > 1
- 1*n > 1
- 1^n = 1
- 1 hyperNed with n = 1
Thus we can replace the <(1 <8> 7)> in the previous expression with a simple 1.
Extension of the notation
Paul Wright posted this improvement to my notation. I will however change his suggestions to fit my notation style more appropriately:
- a {2} 2 = (a {1} 2) <(a {1} 2)> (a {1} 2) = a <a> a
- a {3} 2 = (a {2} 2) <(a {2} 2)> (a {2} 2) = a <a> a <a <a> a> a <a> a
- a {4} 2 = (a {3} 2) <(a {3} 2)> (a {3} 2) = a <a> a <a <a> a> a <a> a <a <a> a <a <a> a> a <a> a> a <a> a <a <a> a> a <a> a
etc.
- a {n} 3 = a {a {n} 2} 2
- a {n} 4 = a {a {n} 3} 3 = a {a {a {a {n} 2} 2} 2} 2
etc.
And once more:
- a [2] 2 = (a [1] 2) {(a [1] 2)} (a [1] 2) = a {a} a
- a [3] 2 = (a [2] 2) {(a [2] 2)} (a [2] 2) = a {a} a {a {a} a} a {a} a
- a [4] 2 = (a [3] 2) {(a [3] 2)} (a [3] 2) = a {a} a {a {a} a} a {a} a {a {a} a {a {a} a} a {a} a} a {a} a {a {a} a} a {a} a
etc.
This looks incredibly similar to the original a <b> c notation. So, we can further generalize such that:
- a <b, 1> c = a <b> c
- a <b, 2> c = a {b} c
- a <b, 3> c = a [b] c
Again, we can compact the numbers, except this time there are four in a group:
- (2222)
or a more complex example:
- (2(4821)9(2532))
Worked examples
Anything represented in this "four-group" style is a very large number (with a few exceptions). A small number:
- (2222)
- = 2 {2} 2
- = 2 <2> 2
- = 2*2 = 4
A slightly larger number:
- (3222)
- = 3 {2} 2
- = 3 <3> 3
- = 3^3 = 27
And a much larger number:
- (2322)
- = 2 {3} 2
- = 2 <2> 2 <2 <2> 2> 2 <2> 2
- = 4 <4> 4
- = 4^(4^(4^4))
- = 4^(4^256)
- = 4^1.3407807929942597099574024998206E+154
And an even larger number:
- (2223)
- = 2 {2} 3
- = 2 {2 {2} 2} 2
- = 2 {4} 2
- = 2 <2> 2 <2 <2> 2> 2 <2> 2 <2 <2> 2 <2 <2> 2> 2 <2> 2> 2 <2> 2 <2 <2> 2> 2 <2> 2
- = 4 <4> 4 <4 <4> 4> 4 <4> 4
- = 4^(4^(4^4)) <4^(4^(4^4))> 4^(4^(4^4))
- = 4^(4^256) <4^(4^256)> 4^(4^256)
At a guess, that number would have googols of digits or more. Finally, for the record:
- (2233)
- = 2 [2] 3
- = 2 [2 [2] 2] 2
- = 2 [2 {2} 2] 2
- = 2 [4] 2
- = 2 {2} 2 {2 {2} 2} 2 {2} 2 {2 {2} 2 {2 {2} 2} 2 {2} 2} 2 {2} 2 {2 {2} 2} 2 {2} 2
- = 4 {4} 4 {4 {4} 4} 4 {4} 4
- = 4 {4 {4 {4 {4} 2} 2} 2} 2 {4 {4 {4 {4 {4} 2} 2} 2} 2} 4 {4 {4 {4 {4} 2} 2} 2} 2
- = 4 {4 {4 {4 <4> 4 <4 <4> 4> 4 <4> 4 <4 <4> 4 <4 <4> 4> 4 <4> 4> 4 <4> 4 <4 <4> 4> 4 <4> 4} 2} 2} 2 {4 {4 {4 {4 <4> 4 <4 <4> 4> 4 <4> 4 <4 <4> 4 <4 <4> 4> 4 <4> 4> 4 <4> 4 <4 <4> 4> 4 <4> 4} 2} 2} 2} 4 {4 {4 {4 <4> 4 <4 <4> 4> 4 <4> 4 <4 <4> 4 <4 <4> 4> 4 <4> 4> 4 <4> 4 <4 <4> 4> 4 <4> 4} 2} 2} 2
- = 4 {4 {4 {4^(4^256) <4^(4^256)> 4^(4^256) <4^(4^256) <4^(4^256)> 4^(4^256)> 4^(4^256) <4^(4^256)> 4^(4^256)} 2} 2} 2 {4 {4 {4 {4^(4^256) <4^(4^256)> 4^(4^256) <4^(4^256) <4^(4^256)> 4^(4^256)> 4^(4^256) <4^(4^256)> 4^(4^256)} 2} 2} 2} 4 {4 {4 {4^(4^256) <4^(4^256)> 4^(4^256) <4^(4^256) <4^(4^256)> 4^(4^256)> 4^(4^256) <4^(4^256)> 4^(4^256)} 2} 2} 2
You get the point.