Description
Type level numbers implemented using type families.
Description
This is type level numbers implemented using type families. Natural numbers use binary encoding. With default context stack numbers up to 2^18-1 could be represented. Signed integer numbers use balanced ternary encoding.
Package is structured as folows:
[
TypeLevel.Number.Classes
] contain generic type families such as Add[
TypeLevel.Number.Nat
] natural numbers implemented using binary encoding[
TypeLevel.Number.Int
] signed integers implemented using balanced ternary encoding[
TypeLevel.Boolean
] type level booleans
So far comparison of numbers, subtraction and multiplication of numbers are supported.