Моделирование бесконечности

Открытые системы N07/2007

Моделирование бесконечности

Валерий Коржов

Профессор Нижегородского государственного университета им. Н. И. Лобачевского Ярослав Сергеев занимается именно разработкой методики использования бесконечных величин в вычислительной технике. В 2002 году итальянское правительство включило его в число 60 ученых из разных стран, которых было решено пригласить в Италию для научной работы.

Сергеев уверен, что его разработки имеют большое значение для математики, информатики, физики — причем с практической точки зрения. Помимо методов вычислений, он разработал Компьютер Бесконечности (www.theinfinitycomputer.com), работающий с этими числами, создал программный симулятор и первое приложение — калькулятор для персональных компьютеров. Новая теория заинтересовала научное сообщество; Сергеева не раз приглашали прочитать лекции на международных конгрессах. Сейчас он ищет заинтересованные организации — на Западе и в России, — которые бы приобрели его разработки.

Как же можно «посчитать» бесконечность?

В чем состоит ваш метод работы с бесконечностью?

Объяснение придется начать с терминологии. Нам потребуется различать числа и нумералы. Нумерал — это символ, с помощью которого выражают число. Нумерал можно написать, стереть, а число — это понятие, служащее для выражения количества. С помощью различных нумералов можно записать одно и то же число. Например, «3» и «III» — два разных нумерала, выражающие одно и то же количество. Добавив к традиционным правилам записи нумералов дополнительные правила, можно расширить возможности аппарата записи. Мне удалось предложить дополнения, позволяющие записывать бесконечно большие и бесконечно малые числа. Если мы добавим к правилам записи полученных нумералов правила выполнения арифметических операций с ними, то получим расширенную систему счисления.

А какие проблемы возникают при работе с бесконечными величинами?

Необходимо понять, что в математике является объектом, а что инструментом.Проблемы возникали со времен Аристотеля и Зенона, сформулировавшего 40 парадоксов, связанных с непрерывностью и дискретностью. Самый известный — Ахилл и черепаха, но есть и другие. Первым, кто добился серьезного прорыва, был Георг Кантор. В 1873-1874 годах он опубликовал серию статей, в которых, в частности, показал, что существуют различные бесконечные множества: счетные и несчетные, или континуальные. После Кантора ряд известных ученых работало над проблемами, связанными с понятием бесконечного. Однако со временем стало понятно, что многие результаты, вытекающие из теории Кантора, выглядят парадоксально с практической точки зрения. Так, Кантор показывает, что элементы множества четных чисел могут быть поставлены во взаимно однозначное соответствие с элементами множества натуральных чисел. Из этого делается вывод, что оба множества — счетные, имеют одинаковую мощность. И это несмотря на то, что первое множество является частью второго, и, исходя из опыта работы с конечными множествами, естественно ожидать, что четных чисел меньше, чем натуральных.

Другой известный пример связан с так называемым «Гранд-Отелем Гильберта» с бесконечным числом комнат. В обычном отеле нельзя поселить никого, если все комнаты заняты. В Гранд-Отеле, даже если все комнаты заняты, можно переселить жильцов из первой комнаты во вторую, из второй в третью и так далее. Тогда первая комната освободится. Получается парадокс: мы предположили, что все комнаты заняты, но смогли поселить еще одного человека. Казалось бы, мы пришли к противоречию, однако, утверждает Кантор, природа бесконечности такова, что правила конечного мира в ней не действуют. Способ рассуждения, применяемый к бесконечным числам, как говорит он, должен быть иным.

Еще одной проблемой является то, что при вычислениях к бесконечным числам нельзя применять формальные правила, действующие для конечных чисел. Рассмотрим, например, следующее равенство: x = 1 + 2 + 4 + … Умножаем обе части равенства на 2 и прибавляем к полученным результатам по единице. Легко увидеть, что в правой части равенства получается тот же ряд 1 + 2 + 4 + … который мы можем заменить на x. То есть получаем x = 1 + 2x или x = -1. Формально никакой ошибки нет, но результат парадоксален, поскольку мы применили правила работы с конечными числами к числам бесконечным. Предложенный мной метод работы с бесконечными числами позволяет разрешить эти парадоксы.

А как проблемы бесконечности затрагивают вычислительную технику?

Мы знаем, что компьютеры не работают с бесконечными числами. Почему? Система счисления, положенная в их основу, не может работать с бесконечно большими и бесконечно малыми числами, используя те же формальные правила, по которым мы работаем с конечными числами. Непонятно, как записывать бесконечно большие и бесконечно малые числа, как хранить их в памяти компьютера, как проводить с ними арифметические операции. В результате операции, требующие использования таких величин, производятся теоретически.

Классический пример — деление на ноль. У вас оно допускается?

Деление на ноль и в моей системе является запрещенной операцией, но разрешено делить на бесконечно малые и бесконечно большие числа.

С традиционной точки зрения, работая с бесконечностью, мы негласно предполагаем, что можем выполнять бесконечное число операций. Сколько раз мы видели последовательность: один, два, три и так далее. Однако допущение это абстрактно: мы живем в конечном мире и вынуждены заканчивать начатые операции. При построении новых правил работы с числами мы не будем использовать эту абстракцию, поскольку нашей целью является построение компьютера, работающего с бесконечно малыми и бесконечно большими величинами по тем же формальным правилам, которыми мы пользуемся при работе с конечными числами.

Наш первый методологический постулат — существуют бесконечно большие и бесконечно малые объекты, но люди и машины могут выполнить только конечное число операций. Это вроде бы очень просто, но отличия от традиционной точки зрения значительны. Собственно, традиционных точек зрения две: либо не существует никакой бесконечности, но мы тоже конечны; либо есть бесконечность, но и наши возможности бесконечны. Однако стоит признать, что мы не обладаем бесконечными возможностями и не можем дать полного описания бесконечных объектов.

Теперь обратимся к постулату номер два. Он касается дискретности и непрерывности. Физик, который смотрит в свой микроскоп и видит черную точку, не говорит, что объектом исследования является черная точка. Он говорит, что с этим микроскопом и этой линзой он видит объект исследования как черную точку. «Дайте мне более сильную линзу и я, возможно, скажу вам что-нибудь еще». Мы постулируем существование триады — объект, инструмент и исследователь. Инструмент ограничивает возможности исследователя в том, что мы можем сказать об объекте. Мы никогда не сможем потрогать объект напрямую, без инструмента, мы не знаем, что представляет собой объект. В философии и в физике это давно известно, но не в математике. Математики традиционно полагают, что могут «создавать» объекты. Скажем, аксиоматическая система используется математиками для задания некоторого математического объекта.

Однако математики не утверждают, что создают реальные объекты. Они говорят об абстракциях, являющихся приближением к реальным объектам…

Вы затронули принципиальный момент. Возьмем определение вещественного числа. «Вещественным числом является объект, удовлетворяющий следующим аксиомам…» Подобное определение математического объекта с точки зрения философии — произвол, поскольку здесь нет указанной триады. Мы же, следуя традиции естественных наук, не будем говорить, чем являются математические объекты, но сконструируем более мощный инструмент исследования, чтобы лучше описывать свойства изучаемых объектов, наблюдаемых с его помощью. Необходимо понять, что в математике является объектом, а что инструментом. Наш взгляд на аксиоматические системы меняется. Например, в истории с числами становится понятно: нумерал — это инструмент, а число — объект. Действительно, только с помощью нумералов мы видим определенные свойства чисел.

С этой точки зрения, аксиоматическая система не определяет математический объект, а лишь описывает определенные символы и правила работы с этими символами, которые отражают некоторые свойства объекта. Но что за этими символами скрывается, мы не знаем. Точно так же, как с микроскопом. Такой подход продолжает традицию естественнонаучного описания мира.

Перейдем к постулату номер три. Это постулат Аристотеля — «часть меньше целого». Его мы будем применять ко всем числам — конечным, бесконечным и бесконечно малым, ко всем множествам и процессам. В традиционной математике не так — бесконечность плюс один равно той же бесконечности. Мы же будем исходить из того, что при прибавлении к бесконечному числу единицы получится число большее.

Необходимо подчеркнуть, что можно вводить разные аксиоматические системы. Вопрос в том, какая из них лучше отражает мир, в котором мы живем. Допустим, мы разделили нашу Вселенную плоскостью на левую и правую половины, и рассматриваем множество сумочек, находящихся в каждой из половинок. Мы не знаем, конечна или бесконечна Вселенная. Мы не знаем, сколько в ней планет. Мы не знаем, на скольких из них производят сумочки. Другими словами, мы не знаем, конечны или бесконечны множества сумочек слева и справа. Однако если я возьму одну конкретную сумочку и перенесу ее с правой стороны налево, то я точно могу сказать, что правое множество уменьшилось на единицу, а левое увеличилось. И это не зависит от того, конечны эти множества или бесконечны. Если же следовать традиционной точке зрения, то зарегистрировать данную операцию невозможно.

Таким образом, наша точка зрения является существенно более прикладной, чем в традиционной математике. Как следствие, мы не можем использовать такие традиционные инструменты для работы с бесконечностью, как взаимно однозначное соответствие, кардинальные и ординальные числа и т.д. Однако, наш подход не противоречит Кантору, а углубляет его взгляды на существование разновеликих бесконечностей.

Для понимания постулатов было бы неплохо разобрать еще несколько примеров…

Опишу способ выполнения вычислений, который известен тысячелетия, но по какой-то причине математики и физики не заметили его и не формализовали. Допустим, хозяин большого зернохранилища интересуется, сколько в нем зерна. Никто не может считать по зернышку — это заняло бы слишком много времени. А время, которое мы имеем в распоряжении, по первому постулату конечно. Что делают люди? Они берут мешки, начинают их заполнять зерном и считать. Естественно, мы предполагаем, что все зерна одинаковы и все мешки тоже. Мешки настолько велики, что мы не знаем, сколько зерен в мешке, но можем достаточно быстро мешок заполнить. Если же зернохранилище такое большое, что и в мешках считать слишком долго, можно использовать еще более крупные единицы — грузовики, товарные вагоны или что-либо другое. В результате мы получим ответ такого вида: зернохранилище содержит 17 вагонов, 25 грузовиков, 45 мешков и 24 зерна. При этом я могу добавить одно зерно и обнаружу, что стало больше и насколько, а если уберу одну машину, то стало меньше и насколько.

В этом примере мы работали с конечными величинами, которые было невозможно выразить в элементарных единицах измерения — зернах, потому что значение, выраженное в этих величинах, было бы слишком большим. Люди вынуждены вести себя так, будто количество зерна бесконечно. И что они сделали? Они ввели «бесконечные» единицы измерения — мешки, машины и вагоны. В результате ответ, который невозможно сформулировать в элементарных единицах измерения, легко выражается в новых. При этом мы не знаем, сколько более мелких единиц измерения содержится в одной более крупной, то есть никто не считает, сколько зерен в мешках и мешков в машинах. Несмотря на «бесконечность» зерен в зернохранилище мы можем выразить это число с точностью до одного зерна. Это и есть базовая идея бесконечных вычислений, которая с больших, но конечных чисел, была мною обобщена на числа бесконечные.

Как подобный метод подсчета использовать для вычислений?

Можно создать по этому принципу новые единицы измерения, которые позволили бы мерить бесконечные числа.

Введем новую единицу измерения, выражаемую новым нумералом , который называется «гроссуан», от английского grossone («большая единица»). По-итальянски он читается «гроссоне», что значит «толстяк». В немецком языке gross — это «большой». Мы определим этот нумерал через свойства, которые будут описываться аксиомой бесконечной единицы измерения точно так же, как при переходе от натуральных чисел к целым вводится новый элемент — «ноль». Он обозначается некоторым символом и обладает некоторыми свойствами. Введение единицы измерения, обозначающей «тотальность», то есть все рассматриваемые элементы, не новость. В теории вероятности Колмогорова события можно описывать двумя способами — либо как объединение элементарных событий, либо как все возможные события за исключением некоторых. Мы будем действовать по той же схеме.

Гроссуан вводится как число элементов множества натуральных чисел. Сколько этих элементов, мы не знаем. Мешок. Опишем его свойства, добавив соответствующую аксиому к другим аксиомам чисел. Во-первых, мы хотим ввести бесконечную единицу измерения. Ясно, что она должна быть больше любого конечного числа. Во-вторых, гроссуан — это число, а раз это число, то гроссуан умножить на ноль будет ноль, гроссуан минус гроссуан также будет ноль. К гроссуану также относятся и другие свойства чисел, поэтому с ним можно работать, как с обычным числом.

В-третьих, гроссуан обладает свойством делимости. Это свойство, где мы и применяем постулат «часть меньше целого». Мы сказали, что в множестве натуральных чисел гроссуан элементов. Постулируем, что множество натуральных чисел можно разделить на две части, и в каждой из них будет /2 элементов. Другими словами, я не знаю, сколько зерен в мешке, не знаю, сколько зерен в половине мешка, но я знаю, что в половине мешка зерен в два раза меньше, чем во всем мешке. Можно делить и на три части. Что это за подмножества? В одно входят натуральные числа с разностью кратной трем и начинающиеся с 1 — 1, 4, 7 и так далее. Второе множество начинается с двойки — 2, 5, 8… Третье множество — 3, 6, 9… В общем виде это свойство записывается так: множество натуральных чисел может быть разделено на m одинаковых подмножеств, в каждом из которых /m элементов. Это означает, что гроссуан делится на любое конечное натуральное число без остатка.

На этом нововведения закончены, а далее следуют выводы из основных свойств гроссуана. Я был удивлен, как много выводов для самых разных отраслей науки получилось из этих постулатов. Это верный признак того, что выбрано правильное направление.

А как можно оперировать гроссуаном?

Поскольку гроссуан — это число натуральных чисел, следовательно, это последнее натуральное число. То есть существуют бесконечные натуральные числа: — 1,  — 2 и так далее. Трудности, которые возникали при работе с бесконечными числами, связаны с тем, что традиционные системы записи не позволяли их увидеть. Бесконечность можно измерять в этих единицах, и это важный результат, поскольку раньше у нас не было инструмента для измерения бесконечности. Важно также научиться интерпретировать эти числа. Например, что означает  — 2? С точки зрения зерна, это число зерен в мешке, из которого вынули два зернышка. А что означает гроссуан в квадрате? Это множество пар натуральных чисел. В примере с зернами гроссуан в квадрате — это число зерен в машине, а число зерен в вагоне — гроссуан в третьей степени (множество триад из натуральных чисел).

Используя гроссуан, можно измерять бесконечные множества. Например, количество элементов множества целых чисел будет равно 2 + 1. Действительно, множество целых чисел состоит из натуральных положительных (их у нас гроссуан), натуральных отрицательных (еще гроссуан) и еще одного элемента — нуля. Таким образом, многие задачи, над которыми математики думают уже сотни лет и так и не придумали конструктивного ответа, можно решать, не затрачивая больших усилий, благодаря богатству выбранного математического языка.

Обратимся к еще одной аналогии. У племени Пираха из Амазонии система записи чисел ограничивается символами для выражения величин один, два и много. У них операции 1 + 2 и 2 + 2 дают один и тот же результат — много. Это происходит не потому, что результаты равны, а только потому, что их система записи не позволяет выразить другой ответ. И соответственно, в их системе записи много + 1 равно много и много + 2 равно много, что очень похоже на наш современный традиционный подход к бесконечности. Их бесконечность ближе, чем у нас, но результат тот же. Если мы прибавим гроссуан к системе Пираха, то какие мы нумералы сможем записать? Те же 1 и 2, затем /2 — 2, /2 — 1, /2, /2 + 1, /2 + 2,  — 2,  — 1, и все. Для выражения других чисел у нас не хватает символов. Чтобы продолжить вычисления с другими числами (конечными или бесконечными) нужно предложить новые символы и правила работы с ними. Важно подчеркнуть, что предложенные математические инструменты не решают все задачи, связанные с бесконечностью (наши возможности ограничены — смотри первый постулат), но они, безусловно, решают больше задач, чем традиционные подходы, и позволяют ставить новые интересные проблемы.

Мы говорили о бесконечных числах, а что такое бесконечно малые?

Бесконечно малые — это числа, которые содержат части только с отрицательными степенями гроссуана. Самое простое из них — это гроссуан в минус первой степени или 1/. Если вернуться к метафоре с зерном, и попытаться выразить количество зерна в мешках, то отдельные зерна будут выражаться через бесконечно малые единицы. Гроссуан — это мешок с точки зрения зерна, а 1/ — зерно с точки зрения мешка. При этом все бесконечно малые числа — не нули, и могут участвовать в любых операциях.

Введение в явном виде бесконечно малых чисел позволяет нам построить математику, которая очень «физична». В физическом мире один и тот же объект (например, стол) и непрерывный, когда мы смотрим на него глазами, и дискретный — когда смотрим через микроскоп. В традиционной же математике объекты или дискретные, или непрерывные. Новый подход позволяет, меняя инструмент исследования, видеть один и тот же объект то дискретным, то непрерывным.

Сказанное относится и к числам. Понятия конечности, бесконечности и бесконечно малого становятся относительными. Если я смотрю на отрезок, равный одному метру, то он для меня конечен. Если же я сменю единицу измерения и буду делать бесконечно малые шажки, то он станет для меня бесконечным. Если смотреть на него из бесконечного далека, то он будет казаться бесконечно малым. На одну и ту же вещь можно смотреть с разных позиций, принимая разные единицы измерения, используя разные инструменты. Объект один и тот же, а мы выбираем, как на него смотреть. И это очень «физично», не так, как в «старой» математике, где бесконечность является уникальным объектом с уникальными свойствами.

Таким образом, мы получаем новые мощные инструменты для описания реального мира, которые позволяют строить более сложные и точные математические модели.

Как гроссуан можно использовать для работы с компьютером?

Для того чтобы работать с конечными, бесконечно большими и бесконечно малыми числами, используя компьютер, необходимо решить две ключевые технические проблемы. Во-первых, следует создать устройство памяти, способное хранить все эти числа в единой форме. При этом, подчеркнем, бесконечные числа должны храниться в конечной памяти. Во-вторых, необходимо создать новое арифметико-логическое устройство, способное выполнять операции со всеми этими числами.

Для хранения чисел была предложена новая позиционная система счисления с бесконечной базой, в которой числа раскладывают по степеням гроссуана в форме a/β, где a есть некий нумерал, выражающий конечное число. Если степень β — нулевая, то гроссуан в нулевой степени, как и все остальные числа, равен единице, и запись сводится к привычной конечной системе. Таким образом, конечные числа, с которыми мы привыкли работать, в нашей записи оказываются частным случаем. Если в нашем числе есть положительные степени гроссуана, то это бесконечные числа, если только отрицательные, то бесконечно малые. В общем случае, в числе могут быть разнообразные комбинации — несколько бесконечных, конечная и несколько бесконечно малых частей.

Для всех этих чисел можно единым образом описать операции сложения, вычитания, умножения и деления, которые будет выполнять новое арифметико-логическое устройство, соблюдая принцип «часть меньше целого».

Вы обещали разрешить парадоксы, которые приводили в качестве примера.

Начнем с четных и натуральных чисел. Из определения гроссуана следует, что натуральных чисел — , а четных — в два раза меньше, то есть /2. А вот проблема Гильберта с отелем. В нашей терминологии в отеле гроссуан комнат. Начинаем переселять людей из первой во вторую, из второй в третью и так далее. Это приведет к тому, что жилец из комнаты гроссуан должен быть переведен в комнату гроссуан плюс один, но в отеле нет такой комнаты. Человека можно поселить в комнату номер один, но при этом жильца из последней комнаты придется выгнать на улицу. Если мы не хотим никого выгонять, то ситуация такая же как с конечными числами. Если отель заполнен, то он заполнен. Сделать ничего нельзя. Парадокс снят.

Бесконечные „числа"

Существуют и более длинные группы цифр, кото­рые, находясь на конце чисел, сохраняются и в их произведении. Число таких групп цифр, как мы по­кажем, бесконечно велико.

Мы знаем двузначные группы цифр, обладающие этим свойством: это 25 и 76. Для того чтобы найти трехзначные группы, нужно приписать к числу 25 или 76 спереди такую цифру, чтобы полученная трех­значная группа цифр тоже обладала требуемым свой­ством.

Какую же цифру следует приписать к числу 76? Обозначим ее через k. Тогда искомое трехзначное число изобразится:

100k + 76.

Общее выражение для чисел, оканчивающихся этой группой цифр, таково:

 

1000а + 100k + 76, 1000b + 100k + 76 и т. д.

Перемножим два числа этого вида; получим:

1000 000ab + 100 000ak + 100 000bk + 76 000а + 76 000b + 10 000k2 + 15 200k + 5776.

Все слагаемые, кроме двух последних, имеют на конце не менее трех нулей. Поэтому произведение оканчивается на 100k + 76, если разность:

 

15200k + 5776 -  (100k + 76) =15 100k + 5700 = 15 000k + 5000 +100 (k + 7)

делится на 1000. Это, очевидно, будет только при k = 3.

Итак, искомая группа цифр имеет вид 376. Поэтов му и всякая степень числа 376 оканчивается на 376, Например;

3762 = 141 376.

 

Если мы теперь захотим найти четырехзначную группу цифр, обладающую тем же свойством, то должны будем приписать к 376 еще одну цифру спе­реди. Если эту цифру обозначим через l, то придем к задаче: при каком  произведение

(10 000а +1000l + 376) (10 000b + 1000l + 376)

оканчивается на 1000l + 376? Если в этом произведе­нии раскрыть скобки и отбросить все слагаемые, ко­торые оканчиваются на 4 нуля и более, то останутся члены

 

752 000l + 141 376.

 

Произведение оканчивается на 1000l + 376, если раз­ность

 

752 000l + 141 376 - (1000l + 376) = 751 000l + 141 000 = (750 000l + 140 000) + 1000 (l + 1)

делится на 10000. Это, очевидно, будет только при l=9.

Искомая четырехзначная группа цифр 9376. Полученную четырехзначную группу цифр можно дополнить еще одной цифрой, для чего нужно рассу­ждать точно так же, как и выше. Мы получим 09376. Проделав еще один шаг, найдем группу цифр 109376, затем 7109376 и т. д.

Такое приписывание цифр слева можно произво­дить неограниченное число раз. В результате мы по­лучим «число», у которого бесконечно много цифр:

...7109 376.

Подобные «числа» можно складывать и умножать но обычным правилам: ведь они записываются спра­ва налево, а сложение и умножение («столби­ком») также производятся справа налево, так что в сумме и произведении двух таких чисел можно вы­числять одну цифру за другой — сколько угодно цифр.

Интересно, что написанное выше бесконечное «число» удовлетворяет, как это ни кажется невероят­ным, уравнению

х2 = х.

B самом деле, квадрат этого «числа» (т. е. произве­дение его на себя) оканчивается на 76, так как ка­ждый из сомножителей имеет на конце 76; по той же причине квадрат написанного  «числа»  оканчи­вается на 376; оканчивается на 9376 и т. д. Иначе говоря, вычисляя одну за другой цифры «числа» х2, где х=... 7109376, мы будем получать те же цифры, которые имеются в числе х, так что х2 = х.

Мы рассмотрели группы цифр, оканчивающиеся на 76'). Если аналогичные рассуждения провести для групп цифр, оканчивающихся на 5, то мы получим такие группы цифр:

5, 25, 625, 0625, 90 625, 890 625, 2 890 625 и т. д. В результате мы сможем написать еще одно беско­нечное «число»

... 2 890 625,

также удовлетворяющее уравнению х2 = х. Можно бы­ло бы показать, что это бесконечное «число» «равно»

(((5)2)2)2………

Полученный интересный результат на языке бес­конечных «чисел» формулируется так: уравнение х2 = х имеет (кроме обычных х = 0 и x = 1) два «беско­нечных» решения:

х=. . . 7109376 и х=. . . 2890625,

а других решений (в десятичной системе счисления) не имеет2).

 

================================

 

') Заметим, что двузначная группа цифр 76 может быть най­дена при помощи рассуждений, аналогичных приведенным выше:

достаточно решить вопрос о том, какую цифру надо спереди при­писать к цифре 6, чтобы полученная двузначная группа цифр обладала   рассматриваемым   свойством.   Поэтому   «число» ...7109376 можно получить, приписывая спереди одну за дру­гой цифры к шестерке.

2) Бесконечные «числа» можно рассматривать не только в де­сятичной, а и в других системах счисления. Такие числа, рассма­триваемые в системе счисления с основанием р, называются р-адическими числами. Кое-что об этих числах можно прочесть в книге Е. Б. Дынкнна и В. А. Успенского «Математические бе­седы» (Гостехиздат, 1952).