Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Let's define the Meta type. In grammar terms, Meta -> [ Meta* ].
- Meta is a number type. Every meta number is an mset of meta numbers.
- The sum of a meta number is the number constructed by taking each number in each number in the original number.
- The product of a meta number is the number constructed by taking each sum of numbers taken one from each number in the original number.
- Suppose for example that a b c d e f are meta numbers. Then:
- sum [] = []
- sum [a] = a
- sum [a []] = a
- sum [[a b] [c d e] [f]] = [a b c d e f]
- prod [] = [[]]
- prod [a] = a
- prod [a [[]]] = a
- prod [[a b] [c d e] [f]] = [(sum [a c f]) (sum [a d f]) (sum [a e f]) (sum [b c f]) (sum [b d f]) (sum [b e f])]
- Here's how we connect to existing notation:
- 0 = []
- 1 = [[]]
- 2 = [[][]]
- 3 = [[][][]]
- Please convince yourself by using the definitions above that:
- prod [0 a] = sum [] = 0
- prod [1 a] = sum [a] = a
- prod [2 a] = sum [a a]
- prod [3 a] = sum [a a a].
- This is exciting!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement