Интересно как
Биекция между положительными рациональными и натуральными числами:

Любое другое положительное рациональное число можно представить в виде

, где

- простые,

- целые ненулевые числа. Если

- отрицательное, то соответствующее простое - в знаменателе дроби.
Простые оставляем так, как есть, а для показателей - если

- положительное, меняем на

, а если отрицательное - на

Напр.

Тоесть, числу

соответствует номер

Обратная задача - по номеру отпеделить число: Факторизация, если степень простого - четная, то делим да 2 и пишем в знаменателе, если нечетная - добавляем

, делим на
Нужно добавить еще один бит для знака (положительное/отрицательное)....вобщем несложно.