I think removing the parentheses can affect the overall pattern formation.
12 == (((1+1)^(1+1))*(1+1+1))
12 != +^+*++
Because we are changing the order of operations:
1+1^1+1*1+1+1
2^2*3
2^6
64
Also, I don’t think there is a way to use exponents and make 12 without using parentheses.
So if we simplify the method of notation, then some operations cannot be used for certain numbers. and this changes the pattern, and/or the availability of possible patterns.
This topic is discussed in D. Hofstadter’s book Godel, Escher, Bach: an Eternal Golden Braid.
Indeed, I hadn’t thought far enough ahead to worry about cases where order of operations would matter between exponentiation and multiplication. So parens would have to be acceptable where it’s ambiguous. What the default order of operations should be, can be left as an exercise for the reader.
as for your specific concern, if we left the order of operations as “+ then ^ then *”, +^+*++ would work fine.
For that, I think we’d need a stack with a line-termination character. In effect, we’d be removing two characters for one, which I suppose would be an improvement.
I think removing the parentheses can affect the overall pattern formation.
12 == (((1+1)^(1+1))*(1+1+1))
12 != +^+*++
Because we are changing the order of operations:
1+1^1+1*1+1+1
2^2*3
2^6
64
Also, I don’t think there is a way to use exponents and make 12 without using parentheses.
So if we simplify the method of notation, then some operations cannot be used for certain numbers. and this changes the pattern, and/or the availability of possible patterns.
This topic is discussed in D. Hofstadter’s book Godel, Escher, Bach: an Eternal Golden Braid.
Indeed, I hadn’t thought far enough ahead to worry about cases where order of operations would matter between exponentiation and multiplication. So parens would have to be acceptable where it’s ambiguous. What the default order of operations should be, can be left as an exercise for the reader.
as for your specific concern, if we left the order of operations as “+ then ^ then *”, +^+*++ would work fine.
We could keep the abbreviated syntax but avoid the necessity of parentheses by using post-op notation, couldn’t we?
For that, I think we’d need a stack with a line-termination character. In effect, we’d be removing two characters for one, which I suppose would be an improvement.
So:
The order of operations can be variable dependent on the number
The notation method effects pattern
The pattern can change if primes are always used
Etc.
How many ways can we change the rules? How many rules are there?
It is amazing just how much variation in pattern can be achieved just by changing and/or adding/subtracting rules.
There is the general rule of rules:
The fewer the rules, the less variable the pattern, and the inverse, the more rules the more variable the pattern.
Sorry for the late edit, but, I would also add that the fewer the rules the less adaptable as well...