В этой мини-серии статей я хочу объединить свои заметки для математического кружка о различных необычных, но полезных числовых системах, основанных на парах чисел. План знакомства с числовыми системами будет такой:
В этой статье мы (признаюсь, достаточно занудно) построим из натуральных чисел целые, при этом познакомимся с важнейшими инструментами математики: упорядоченной парой, эквивалентностью и факторизацией.
Во второй части от целых мы перейдём к рацион��льным числам, которые тоже можно представить в виде пары — рациональной дроби. Главный вопрос на который мы постараемся ответить: «А чего у дробей всё так сложно-то?»
В третьей части мы сконструируем Гауссовы числа и порассуждаем над более общим вопросом: «Что такое число?». В этой части мы перейдём от пар к матричным представлениям чисел, что позволит нам ввести их классификацию.
Четвёртая часть будет посвящена эллиптическим арифметикам: комплексным числам и числам Эйзенштейна. Здесь мы порассуждаем над сакраментальным вопросом: «Реальная ли мнимая единица?»
В пятой части мы рассмотрим гиперболические арифметики и познакомимся с двойными числами, и немного используем их на практике, чтобы понять «Как работает формула Бине?»
Шестая часть завершит эту серию. Она расскажет о параболических арифметиках, в частности, о дуальных числах, которые позволят арифметике быть неточной. Кроме того, мы порассуждаем о том как вписать в нашу классификацию рациональные дроби.
⚠ Предупреждение! Первые две статьи достаточно техничные. Они нужны для полноты изложения и носят дидактический характер, полезный для того, чтобы приобщить маткружковцев к духу математики. Однако особых открытий они в себе не таят. За открытиями милости прошу в третью и последующие части, однако для того чтобы понять почему всякая экзотика типа дуальных или двойных чисел вообще имеет право называться числами, имеет смысл заглянуть в первые две части. Для тех кто давно уже в теме, сразу скажу, что они не выходят за пределы стандартного введения в теорию чисел, уровня книжки И. В. Арнольда.
Целые числа
Считать на палочках умеют не только дошколята, но и некоторые смышлëные еноты и даже птицы, такие как вороны, попугаи и павлины. В свою очередь, смышлëные математики поняли, что вместо кучек палочек можно использовать абстракции, например, натуральные числа и быстро забыли про палочки. А что если добавить к палочкам камешки? Получится ли с их помощью выразить что-то иное, существенно отличающееся от натуральных чисел?
Считать на палочках легко: две палочки, да три палочки будет пять палочек, в двух кучках по три палочки всего шесть палочек. Так мы учимся основам арифметики, потому что кучки палочек при сложении, умножении или сравнении, ведут себя как кучки чего угодно. А потом незаметно для себя, мы переходим от палочек к числам и встречаемся с первой серьёзной математической абстракцией: натуральным числом.
Натуральные числа используются нами для счёта неделимых вещей и предметов. Такие числа можно сравнивать между собой и упорядочивать. Их можно складывать, перемножать, возводить в степень, снова получая натуральные числа. Наконец, иногда их можно вычитать (если вычитаемое не превышает уменьшаемого) и делить (если делимое кратно делителю).
�� что будет, если прибавить к семи палочкам три камешка? Можно повысить степень абстракции, и сказать, что мы получим десять предметов. Но вообще-то это будет две чётко различимые кучки: 7 палочек и 3 камешка. Если их засунуть в мешок, встряхнуть и снова высыпать, информация никуда не денется, мы опять получим 7 палочек и 3 камешка. В математике такая конструкция из двух несмешиваемых величин называется упорядоченной парой. В нашем случае, мы получили пары натуральных чисел, которые будем записывать следующим образом: Первое число всегда обозначает количество палочек, а второе — количество камешков.

Тут надо сделать техническое замечание. Глядя просто на 7 палочек, без камешков, мы не поймём, что перед нами упорядоченная пара. Так что для определённости в любой паре должны быть и палочки и камешки, хотя бы по одной штуке. Это, к тому же, соответствует устоявшейся в нашей стране традиции начинать ряд натуральных чисел с единицы, а не с нуля.
Итак, мы получили бесконечное множество пар натуральных чисел, теперь попробуем собрать из них корректную числовую систему, а точнее, кольцо.
Алгебраическим кольцом называется множество, на котором определены операции сложения, вычитания и умножения, такие, что для сложения выполняются переместительный и сочетательный законы, для умножения — сочетательный и распределительный. Кроме того, для сложения есть единственный нейтральный элемент — ноль, и у каждого числа есть противоположное, такое, что в сумме они дают этот самый нейтральный элемент. Как видно, натуральные числа кольцом не являются, поскольку в них отсутствуют противоположные числа и нет нуля.
Сложение
Определим сложение для пар так, как складывались бы настоящие кучки палочек и камешков. Сложив две пары, мы получим новую пару, в которой отдельно сложатся палочки и отдельно — камешки:
Из-за того, что в натуральных числах все необходимые законы для сложения (переместительный и сочетательный) выполняются, они будут выполняться и для сложения пар. Так что с этим возиться не придётся.
Классы эквивалентности
Мы легко различим две пары и
, и выглядят они по-разному и весят тоже, если собрать их из настоящих палок и камней. Но есть в них кое-что общее, а именно, разница между количеством палок и камней в обеих парах одинаковая:
Мы станем считать такие пары эквивалентными. Эквивалентность, это не равенство, однако оно очень на него похоже. Обозначается оно так . При этом должны выполняться три закона:
1)
2) если , то
,
3) если и
, то непременно
.
Таким образом, мы будем говорить, что пары и
не равны, но эквивалентны друг другу, если дадим корректное определение. Например, такое:
Отношение эквивалентность
выполняется, если найдётся такое натуральное
, что
,
либо
,
.
То есть, , но
, потому что
. Как видим, эквивалентность более мягкое отношение, чем равенство.
Я не буду, как полагается, доказывать, что определённое нами отношение это настоящая эквивалентность (можете сделать это сами), а сразу перейду к тому ради чего математики вводят эквивалентность к факторизации и разбиению на классы эквивалентности.
В силу третьего свойства эквивалентности, всё множество пар можно разделить на непересекающиеся подмножества — классы, в которых все элементы эквивалентны друг другу. Классы мы будем обозначать квадратными скобками. Так, в класс попадут все пары
, где
Если правильно построить отношение эквивалентности, то проявится замечательное свойство классов: возможность обобщения на классы операций, определённых для элементов.
Сейчас мы увидим, как это происходит. Давайте сложим два числа из разных классов
Смотрите-ка, результат сложения попадёт в класс, соответствующий их сумме, для любых чисел и
. Это значит, что мы можем записать это же выражение для классов:
![Иллюстрация того, как сумма элементов из класса с элементами из дают результат, попадающий в класс . Иллюстрация того, как сумма элементов из класса [2] в сумме с элементами из [3] дают результат, попадающий в класс [5].](https://habrastorage.org/r/w1560/getpro/habr/upload_files/a14/663/03b/a1466303b5af7c36572d83f968b7c2d6.png)
Разбиение на классы эквивалентности, позволяющее использовать классы вместо элементов, и согласующееся с операциями алгебраической структуры, называется её факторизацией.
Нейтральный элемент
Теперь мы можем сконструировать нейтральный элемент, то ест, ноль, которого не было в натуральных числах. Если пары и
эквивалентны, то это значит, что прибавление пары
к паре
не меняет класса, к которому эта пара принадлежит. Более того, все пары
эквивалентны друг другу и не эквивалентны никаким парам из других классов. Они формируют отдельный класс, который мы можем обозначить как
, и записать:
что в переводе с языка классов означает:
Если вам кажется, что это надувательство, и никакого нуля из камней и палок мы не собрали, то подумайте над этим вот как. Если у нас в мешке 115 палок и 110 камней, то это очень тяжёлый мешок, в котором палок на пять штук больше, чем камней. Если мы выложим по 100 камней и палок, то нам станет куда легче и тащить и считать, и при этом мы не потеряем информацию о том чего и насколько было больше. Факторизация позволяет нам сосредоточиться на главном — на разнице в количестве предметов.
Вычитание
Раз уж мы заговорили о разнице, то пора поразмыслить о вычитании. В натуральных числах вычитать надо осторожно, чтобы из меньшего не отнять большее. Поскольку в наших парах палки и камни обозначают натуральные числа, мы не можем просто записать, что , потому что в результате могут кончиться предметы. Нам надо как-то хитро определить вычитание, используя только сложение.
Вспомним, что в определении кольца есть упоминание о противоположных элементах, таких, что в сумме они дают ноль. Рассмотрим сумму . Результат будет эквивалентен нулю только если
. Для натуральных чисел единственный вариант решения:
. То есть
Обозначим противоположный элемент привычным знаком «минус», и получим
Очевидно, что два различных элемента в паре можно переставить местами лишь двумя способами, а значит, Кроме того, если
, то от перестановки пара не изменится, а значит
Очевидно теперь, что для любого класса можно определить противоположный ему класс
. Давайте честно сложим друг с другом элементы из противоположных классов:
это подтверждает, что для всех классов
.
Имея противоположные пары, нам совсем нетрудно определить операцию вычитания, как сложение с обратным элементом:
Ощутите всю прелесть этого построения: мы определили вычитание, использовав только сложение! В натуральных числах вычитать можно не всегда, а разность пар существует во всех случаях, ведь их элементы мы только складываем.
Давайте проверим, как это работает. Вычтем например из пары пару
:
Мда.. разу и не понять, работает, или нет? А если посмотреть на классы?
Получается, мы вычли из
и получили
. Всё верно. Но 3 из 5 мы и на палочках могли вычесть. А если наоборот?
Получили пару, противоположную Если мы обозначим знаком минус противоположные классы, то сможем записа��ь, что
Всё работает исправно! Наша модель целых чисел замкнута относительно вычитания!
Вот как разбиваются на классы эквивалентности все упорядоченные пары:

Зелёные стрелки объединяют эквивалентные пары и помещают их в соответствующий класс. Легко увидеть, что для любой пары найдется единственный класс:
Афинная модель
Модель целых чисел, как пар палочек и камешков даёт отличную интерпретацию операции сложения. При этом нейтральный, противоположный элемент и вычитание выглядят несколько искусственно. Полезно рассмотреть представление этой же системы в виде небоскрёба с лифтом. Этажи небоскрёба пронумерованы натуральными числами, начиная с 1, а пара в этой модели обозначает перемещение с этажа
на этаж
.
Противоположный элемент — это поездка в другую сторону. Сумма противоположных поездок естественным образом возвращает нас на исходный этаж, что даёт нейтральный элемент — «нулевое» перемещение.
Так же очень естественно в этой модели производится разбиение на классы. Класс объединяет в себе все перемещения на
этажей вниз, при этом мы теряем информацию о том, с какого этажа мы начинаем поездку. Противоположный класс
соответствует любым перемещениям вверх на
этажей.
А вот сумма перемещений в этой модели выглядит странно. Например, как понимать, что . Это никак не ��охоже на сложение перемещений: подъём с третьего этажа на седьмой после добавлении перемещения на семь этажей вниз, превратился в спуск с тринадцатого этажа на десятый. Крайне не интуитивно! На уровне классов же всё работает прекрасно, и этот же пример выглядит как
.
В математике у такого представления есть имя: одномерное афинное пространство, построенное над натуральными числами. Афинные пространства это предмет изучения геометрической алгебры, и в школе мы с ними явно не встречаемся.
Афинное пространство похоже на векторное, и возможно, кто-то из читателей предположил, что я сведу все свои рассуждения к векторам. Но пример со сложением должен вас насторожить. Векторы, как вы помните, складываются покомпонентно, как и наши пары. Но это сложение имеет совсем иной геометрический смысл и реализует другую модель, о которой мы поговорим, когда будем рассматривать гауссовы числа.
И ещё немного о факторизации
Мы в жизни часто используем разбиение на классы эквивалентности и факторизацию, сами того не осознавая. Например, когда говорим, что «Весам в паре хорошо подходят Львы и Овны, а вот с Девами крепкого союза не получится». Как бы мы не относились к разбиению на классы по знакам зодиака, мы факторизуем иножество людей с его помощью и начинаем оперировать знаками так, как если бы это были конкретные личности. Обратите внимание на «бытовую» факторизацию людей по полу, национальности, профессии... Это свойственно нашему мышлению, но таит в себе опасности, поскольку в отличие от математики, никто не трудится строго доказывать, что факторизующее отношение является эквивалентностью и согласуется с реальными отношениями между людьми.
Наконец, когда мы вместо трёх палочек, трёх камней или трёх миллиардов звёзд, начинаем говорить о числе «три», то мы делаем ни что иное, как факторизацию множества всех кучек счётных объектов, по следующему отношению эквивалентности:
Кучка каких-то объектов эквивалентна кучке других объектов, если каждому объекту из первой кучки можно поставить в пару единственный объект из второй кучки.

Таким образом, натуральное число «три» — это класс эквивалентности, объединяющий в себе все кучки из любых предметов, которые можно разбить на упорядоченные пары с элементами множества {раз, два, три}.
Отношение порядка
Коль скоро мы сообразили, что целые числа оказались «зашиты» в разницу между первым элементом пары и вторым, то имеет смысл использовать эту разницу, для определения отношения порядка на базе сравнения натуральных чисел, и написать так:
Но элементы пары — это натуральные числа, операция вычитания для них корректно не определена. Это не беда, формально перенесём слагаемые, и получим менее очевидное, но корректно определённое отношение:
Выглядит хорошо, но сработает ли наша уловка? Проведём эксперимент: сравним и
, вернее, какие-либо экземпляры этих классов, скажем:
потому что
А как насчëт и
?
потому что
.
И, наконец, сравним два экземпляра одного класса :
потому что
.
Похоже, работает!
Очень легко доказать, что отношение порядка согласуется с разбиением на классы:
Согласуется сравнение и с операцией сложения:
На язык классов последний результат переводится так:
a это значит, в нашей модели целых чисел можно решать простейшие уравнения и неравенства, стандартным методом вычитания из обеих частей одинаковых величин.
Ключевое отличие в отношениях порядка, определённых над натуральными числами и над целыми, состоит в том, что в отличие от целых, среди натуральных чисел существует минимальный элемент. На этом факте основаны метод индукции и анализ завершаемости алгоритмов, так что это довольно важное обстоятельство. Наша модель целых чисел использует исключительно натуральный инструментарий, так что отсутствие минимального элемента не очевидно и его надо доказывать.
Это нетрудно сделать, во-первых, показав, что для любого числа можно построить число
, а во-вторых, что оно будет меньше исходного:
1) Существование:
2) Порядок:
Поскольку никаких ограничений на сравниваемые суммы мы не накладывали, можно заключить, что пары образуют линейно упорядоченное множество, в котором любые два элемента сравнимы, причём однозначно. Однозначность сравнения надо доказывать отдельно, но тут я не хочу раздувать этот материал.
Умножение
Наконец, мы готовы определить операцию умножения для наших пар. В качестве подсказки, вновь формально используем разницу между элементами пары:
А теперь превратим разницы натуральных чисел в пары, сделав, как обычно, уменьшаемое первым элементом, а вычитаемое — вторым:
Ну, что же, никаких операций, запрещённых для элементов пары, мы не используем, значит эта операция, как минимум, корректно определена. Давайте её испытаем:
Предлагаю читателям самостоятельно доказать, что операция умножения согласована с классами эквивалентности и порядка, а также, что для умножения и сложения выполняется распределительный закон, вытекающий из распределительного закона для натуральных чисел.
Полезно также посмотреть на то, как происходит умножение на особые значения: ,
, и
и убедиться в том, что все правила умножения выполняются. Поздравляю, мы построили действующую модель кольца целых чисел!
Благодарю вех дочитавших за терпение ☺ В следующей статье мы из пары целых чисел построим поле рациональных чисел, как фактормножество рациональных дробей. Смысл этих построений состоит в том, чтобы показать почему правила сложения, перемножения и сравнения дробей не могут быть иными.