rationality Type-level rational encoding See https://everythings-a-nail.mataroa.blog/blog/arithmetic-at-the-type-level/