Грегори Чейтин
Из идей сложности и случайности, впервые высказанных Готфридом Лейбницем в его «Рассуждении о метафизике» (1686), и их подтверждения в современной теории информации следует, что невозможно создать «самую общую теорию всего» в математике.
В 1956 году журнал Scientific American опубликовал статью Эрнста Нагеля (Ernest Nagel) и Джеймса Ньюмана (James R. Newman) «Доказательство Гёделя». Через два года ее авторы выпустили одноименную книгу, которая переиздается до сих пор. В те дни я был еще ребенком, но до сих пор помню трепет, который испытал, открыв ее в Нью-йоркской публичной библиотеке.
Меня поразило то, как Курт Гёдель (Kurt Gödel) использовал
математику, чтобы показать, что ее собственные возможности
ограничены. Он опроверг высказанное около столетия назад Давидом
Гильбертом утверждение о существовании полной теории
математики, т.е. конечной совокупности принципов, из которых с
помощью последовательного использования правил математической логики
можно вывести все положения математики. Гёдель показал, что
существуют истинные математические утверждения, которые не могут
быть доказаны таким образом. Его выводы основаны на двух
самоотносимых парадоксах: «данное утверждение ложно» и «данное
утверждение недоказуемо». (Более подробные сведения о теореме
неполноты Гёделя
|
Всю жизнь я разбирался с доказательством Гёделя и теперь, полвека спустя, издал собственную книжку. В какой-то степени это моя версия книги Нагеля и Ньюмана, однако доказательство Гёделя — не главная ее тема. Моя работа основана на измерении информации и доказательстве того, что некоторые математические факты не удается втиснуть в теорию, потому что они слишком сложны. Согласно моему подходу, Гёдель открыл только верхушку айсберга: существует бесконечное множество верных математических теорем, которые невозможно доказать, исходя из конечной системы аксиом.
|
В 1686 году было издано философское эссе Готфрида Лейбница (Gottfried W. Leibniz) «Рассуждения о метафизике» (Discours de métaphysique), в котором поставлен вопрос: как отличить факты, которые можно описать неким законом, от фактов, никаким законам не подчиняющихся? В четвертом разделе своего эссе Лейбниц высказал очень простую и глубокую мысль: теория должна быть проще данных, которые она объясняет, иначе она не объясняет ничего. Концепция научного закона становится бессмысленной, если допускает неограниченный уровень математической сложности, потому что в таком случае всегда можно сформулировать закон независимо от того, насколько случайны и беспорядочны факты. И наоборот, если единственный закон, объясняющий какие-то данные, оказывается слишком сложным, то рассматриваемые данные на самом деле не подчиняются никакому закону.
Современная математическая теория алгоритмической информации позволила дать точные количественные определения понятиям сложности и простоты. Обычная теория информации определяет объем информации числом битов, необходимых для ее кодирования. Например, для кодирования простого ответа «да/нет» нужен один бит. В отличие от этого, объем алгоритмической информации определяется длиной компьютерной программы, необходимой для генерации данных. Минимальное число битов, необходимых для хранения программы, называется количеством алгоритмической информации данных. Например, бесконечный ряд натуральных чисел 1, 2, 3,... содержит очень мало алгоритмической информации: все числа ряда можно получить с помощью коротенькой компьютерной программы. Не имеет значения, сколько времени понадобится для выполнения вычислений и какой объем памяти придется использовать, важна лишь длина программы в битах. (Разумеется, точное значение количества алгоритмической информации зависит от выбранного языка программирования, однако для рассматриваемых в данной статье вопросов это несущественно.)
В качестве другого примера возьмем число π, равное 3,14159... Количество алгоритмической информации в нем тоже невелико: для последовательного вычисления всех его знаков нужен довольно короткий алгоритм. А вот случайное число, содержащее всего миллион знаков, скажем, 1,341285...64, характеризуется гораздо бóльшим количеством алгоритмической информации. Поскольку в таком числе нет определяющей структуры, длина самой короткой программы, необходимой для его написания, будет близка к длине самого числа:
Начать
Напечатать
«1,341285...64»
Конец
|
(В программу должны быть включены все цифры, замененные многоточием.) Никакая более короткая программа не позволит рассчитать подобную последовательность цифр: ее невозможно сжать, в ней нет избыточности. Самое лучшее, что можно сделать, — просто передать ее, как она есть. Такие последовательности называются неприводимыми или алгоритмически случайными.
Как же соотносятся вышесказанное с научными законами и фактами? Идея заключается в том, чтобы взглянуть на науку глазами программиста: научная теория подобна компьютерной программе, предсказывающей результаты наблюдений, т.е. экспериментальные данные. Такая точка зрения опирается на два фундаментальных принципа. Согласно первому («бритва Оккама»), из двух теорий, объясняющих некоторые данные, следует предпочесть более простую. Иначе говоря, наилучшей теорией является самая короткая программа, позволяющая рассчитать результаты наблюдений. Второй принцип, изложенный Лейбницем, в современных понятиях звучит так: теория, объем которой в битах равен количеству объясняемых ею данных, бесполезна, поскольку теорией такого размера можно описать совершенно случайные данные. Полезная теория обеспечивает сокращение количества информации: осмысление данных — это их сжатие в краткие алгоритмические описания. Чем проще теория, тем лучше понимание сути явления.
Лейбниц, живший за два с половиной века до появления компьютерных программ, очень близко подошел к современному понятию алгоритмической информации. Лейбниц знал, что все можно представить в виде двоичных кодов, и создал одно из первых вычислительных устройств; рассматривая понятия сложности и простоты, он осознавал огромный потенциал вычислений. Если бы Лейбниц объединил все известные ему элементы, то, скорее всего, усомнился бы в одном из устоев своей философии — принципе достаточной причины, согласно которому все происходящее имеет причину. Более того, если какое-то положение истинно, то оно истинно по какой-то причине. Бывает, что в суете и хаосе повседневной жизни в это трудно поверить. Даже если мы не всегда можем увидеть причину (возможно потому, что цепочка рассуждений слишком длинна и запутанна), ее видит Бог. Вот и всё! Здесь Лейбниц соглашался с древнегреческими авторами этой идеи.
Математики, несомненно, безоговорочно принимают принцип достаточной причины Лейбница, потому что всегда стремятся всё доказать. Даже если истинность теоремы очевидна, и миллионы примеров подтверждают ее, математики все равно требуют обобщенного доказательства, на меньшее они не согласны. И здесь концепция алгоритмической информации может внести удивительный вклад в философские рассуждения об источниках и пределах познания. Она показывает, что некоторые математические факты истинны безо всяких причин, и бросает вызов принципу достаточной причины. Как будет показано ниже, существует бесконечное число неприводимых математических фактов, истинность которых нельзя объяснить никакой теорией. Они неприводимы не только вычислительно, но и логически. «Доказать» эти факты можно только одним способом: признать их аксиомами без всяких рассуждений.
Понятие «аксиома» тесно связано с логической неприводимостью. Аксиомы — это математические положения, которые мы считаем самоочевидными и не пытаемся доказать, исходя из более простых принципов. Все математические теории основаны на аксиомах, из которых выводятся следствия, называемые теоремами. Именно так поступал Евклид два тысячелетия назад: его труды по геометрии стали классическим примером математического изложения.
В древней Греции, чтобы убедить сограждан проголосовать именно так, а не иначе, вы должны были бы привести им свои доводы. Вероятно, именно поэтому греки пришли к мысли, что математические положения нужно доказывать, а не выводить опытным путем. (В отличие от греков, древнейшие цивилизации Месопотамии и Египта, похоже, полагались на эксперимент.) Метод логических рассуждений оказался чрезвычайно плодотворным: с его помощью были созданы современная математика, математическая физика и все точные науки, включая технологию создания компьютеров — в высшей степени математичных и логичных машин. Утверждаю ли я, что подход, на котором математика и вся наука строились в течение двух тысячелетий, терпит крах? В каком-то смысле да. Моим контрпримером, иллюстрирующим ограниченность возможностей логики и рассуждений, моим источником бесконечного потока недоказуемых математических положений является число, которое я назвал «омега» (Ω).
Первый шаг к открытию числа Ω был сделан в знаменитой статье, опубликованной ровно через 250 лет после издания эссе Лейбница. В 1936 году на страницах «Трудов Лондонского математического общества» (Proceedings of the London Mathematical Society) Алан Тьюринг впервые представил математическую модель простой универсальной вычислительной машины. Кроме того, он задался вопросом: можно ли определить, остановится когда-нибудь компьютерная программа или нет? Так была сформулирована знаменитая проблема останова.
Разумеется,
запустив программу, вы можете со временем обнаружить, что она
остановилась. Фундаментальная проблема заключается в том, чтобы
решить, когда вы сдадитесь и престанете ждать, если программа не
останавливается. Для множества частных случаев она может быть
решена, но Тьюринг показал, что общего решения не существует.
Никакой алгоритм и никакая математическая теория не позволят
определить, какая программа остановится, а какая нет.
(Современное доказательство данного положения Тьюринга
Следующим шагом на пути к числу Ω становится рассмотрение множества всех возможных программ. Остановится ли когда-нибудь выбранная случайным образом программа? Вероятность останова и есть Ω. Определим сначала, как осуществить случайный выбор программы. Программа представляет собой последовательность битов, поэтому для выбора значения каждого последующего бита будем просто бросать монету. Сколько битов должна содержать программа? Будем бросать монету до тех пор, пока компьютер не перестанет запрашивать следующий бит. Число Ω есть вероятность того, что при введении такой случайной последовательности битов машина когда-нибудь остановится. (Численное значение Ω зависит от выбора языка программирования, но удивительные свойства этого числа с ним не связаны. Когда же язык выбран, Ω приобретает определенную величину, так же, как число π или число 5.)
Поскольку число Ω выражает вероятность, оно должно быть больше нуля, но меньше единицы, т.к. некоторые программы останавливаются, а некоторые – нет. Число Ω, записанное в двоичном коде, будет иметь вид вроде 0,1110100... Последовательность битов после запятой неприводима, а сами они оказываются неприводимыми математическими фактами (каждый факт состоит в том, является ли данный бит нулем или единицей).
|
Число Ω можно определить как бесконечную сумму, и каждая программа длиной N битов вносит в нее свой вклад, равный ½N. Иными словами, каждая N-битовая программа, которая останавливается, добавляет единицу к N-ному биту двоичного представления числа Ω. Сложив все биты, соответствующие остановившимся программам, мы можем получить точное значение Ω. Создается впечатление, что Ω можно вычислить точно, как √2 или π. Однако это не так: число Ω строго определено и имеет вполне конкретное значение, но рассчитать его невозможно, поскольку это позволило бы решить проблему останова, у которой действительно нет решения. Если говорить конкретнее, знание первых N битов числа Ω позволяет определить, остановится ли когда-нибудь любая программа длиной до N битов, из чего следует, что для нахождения N битов числа Ω требуется программа длиной не менее N битов. Заметьте, я не утверждаю, что нельзя определить некоторое число битов числа Ω. Например, зная, что компьютерные программы 0, 10 и 110 останавливаются, мы можем говорить, что с точностью до первых трех битов Ω имеет вид 0,111. Дело в том, что первые N битов Ω нельзя вычислить с помощью программы, которая была бы существенно короче N битов.
Самое главное, что Ω дает нам бесконечное число неприводимых битов. Любая программа конечной длины, сколько миллиардов битов она бы ни содержала, не поможет нам определить оставшиеся биты, которых бесконечно много. Иными словами, при любом конечном наборе аксиом мы имеем бесконечное число истин, которые не могут быть доказаны с помощью этого набора.
|
Из неприводимости числа Ω следует, что всеобъемлющей математической теории существовать не может. Бесконечное множество битов Ω составляет бесконечное множество математических фактов (является ли каждый выбранный бит единицей или нулем), которые не могут быть выведены из каких бы то ни было принципов, более простых, чем сама последовательность битов. Значит, сложность математики бесконечна, тогда как любая отдельная теория «всего на свете» характеризуется конечной сложностью и, следовательно, не может охватить все богатство мира математических истин. Из сказанного отнюдь не следует, что от доказательств нет никакого толка, и я ни в коем случае не против логических рассуждений. На самом деле, неприводимые принципы (аксиомы) всегда составляли часть математики. Просто число Ω показывает, что их гораздо больше, чем предполагалось ранее.
Обзор: неприводимая сложность |
Возможно, математикам не нужно пытаться все доказать. Иногда им следует просто добавлять новые аксиомы, когда дело доходит до неприводимых фактов. Проблема в том, чтобы понять, что они неприводимы, и признать, что их невозможно доказать. Однако математики никогда не сдадутся, в отличие от физиков, которые всегда готовы обойтись правдоподобными рассуждениями вместо строгих доказательств, и охотно выводят новые законы, чтобы осмыслить свежие экспериментальные данные. Возникает интересный вопрос: похожа ли математика на физику?
Принято считать, что математика и физика совершенно не похожи друг на друга. Физики описывают мир, исходя из результатов экспериментов и наблюдений. Законы, управляющие Вселенной, будь то законы Ньютона или Стандартная модель физики элементарных частиц, должны устанавливаться эмпирически и затем приниматься за аксиомы, которые невозможно доказать логическим путем, а можно лишь проверить экспериментально. Математики же в некотором смысле независимы от мира. Их выводы и теоремы, например, свойства целых или вещественных чисел, никак не зависят от окружающей нас реальности. Математические истины должны быть верны в любом мире. И все же определенное сходство есть. В физике, и вообще в естественных науках, ученые формулируют законы, сублимируя результаты наблюдений. Затем они показывают, как результаты наблюдений могут быть выведены из получившихся законов. В математике происходит нечто подобное: математики сжимают результаты вычислительных экспериментов в аксиомы, а затем выводят из них теоремы.
Если бы Гильберт оказался прав, то математика была бы замкнутой системой, в которой нет места новым идеям. Существовала бы статичная замкнутая теория, объясняющая в математике все, и это было бы похоже на диктатуру. Чтобы математика развивалась, нужны новые идеи и простор для творчества. Недостаточно усердно работать, выводя все возможные следствия из фиксированного числа базовых принципов. Лично мне больше нравятся открытые системы, я не люблю жестких, авторитарных способов мышления.
Имре Лакатош (Imre Lakatos), бежавший в 1956 году из Венгрии и впоследствии занимавшийся философией науки в Англии, тоже считал, что математика похожа на физику. Он ввел понятие квазиэмпиричности, чтобы показать, что и математике не чужды эксперименты. Например, еще в 1742 году Кристиан Гольдбах опытным путем пришел к предположению, что любое четное число больше двух можно представить в виде суммы двух простых чисел. Предположение Гольдбаха успешно проверено для чисел до 1014, но строго не доказано. Мне кажется, что математика квазиэмпирична. Иными словами, она отличается от физики (которая истинно эмпирична), но, вероятно, не так сильно, как полагает большинство людей.
Идея добавления новых аксиом не чужда математикам. Возьмем для примера пятый постулат Евклида: через выбранную точку, лежащую вне прямой, можно провести только одну прямую, параллельную данной. Столетиями геометры ломали голову, пытаясь доказать это, исходя из остальных постулатов Евклида. Не удалось. Наконец, математики поняли, что пятую аксиому можно заменить и получить неевклидову геометрию криволинейных пространств, в частности сферического и седлообразного. Другим примером может служить закон исключенного среднего в логике и аксиома выбора в теории множеств, которыми охотно пользуется в своих доказательствах большинство математиков. Но ведь есть ученые, которые их не признают и исследуют так называемую интуиционистскую логику и конструктивистскую математику. Оказывается, математика пока не стала монолитной системой абсолютных истин!
Другой очень интересной аксиомой может стать утверждение «P не равно NP», где P и NP – названия классов задач. К классу NP относятся задачи, для которых предлагаемое решение можно проверить очень быстро. Например, для задачи «найти множители числа 8 633» предлагаемое решение «97 и 89» быстро проверяется простым перемножением. (Существует строгое определение понятия «быстро», но подробности здесь не имеют значения.) Класс P составляют задачи, которые можно быстро решить, не имея предварительного предположения. Вопрос, ответа на который не знает никто, состоит в том, можно ли быстро решить любую задачу класса NP. (Есть ли способ быстро найти множители числа 8 633?) Иначе говоря, тождественны ли классы P и NP? Это один из пунктов списка «Проблем тысячелетия» Математического института Клэя (Clay Millennium Prize Problem), за решение каждой из которых назначена награда в $1 млн.
Большинство специалистов по вычислительной технике убеждено, что P не равно NP, но строгое доказательство пока не найдено. Истинность такого предположения подтверждается множеством эмпирических свидетельств, но можно ли на этом основании принять его в качестве аксиомы? Специалисты по вычислительной технике именно так и поступили. Правда, остается вопрос о надежности некоторых широко применяемых криптографических систем: считается, что взломать их невозможно, но никто не может этого доказать.
На стыке физики и математики возникла экспериментальная математика: открытие новых математических закономерностей путем компьютерной обработки большого числа примеров. Такой подход не столь убедителен, как короткое доказательство, но может быть убедительнее длинного, сложного доказательства и в некоторых случаях вполне приемлем. В прошлом данную концепцию отстаивали и Дьердь Пойа (George Pólya), и Лакатош, убежденные сторонники эвристических методов и квазиэмпирической природы математики. Он применяется и обосновывается в книге «Новый вид науки» (A New Kind of Science) Стивена Вольфрама (Stephen Wolfram), вышедшей в 2002 году.
Масштабные компьютерные вычисления могут быть очень убедительными, но избавляют ли они от необходимости доказательств? И да, и нет. Вычисления и доказательства дают свидетельства разного рода. В особо важных случаях я считаю необходимыми и те, и другие, поскольку доказательства могут содержать ошибки, а компьютерные вычисления могут, по несчастью, быть остановлены как раз перед обнаружением контрпримера, который опроверг бы предполагаемый вывод.
Рассмотренные вопросы чрезвычайно интересны, но далеки от решения. Со времени публикации статьи о доказательстве Гёделя прошло 50 лет, а сейчас, в 2006 году, мы все еще не знаем, насколько серьезна неполнота, и не следует ли из-за нее пересмотреть математические методы. Возможно, через 50 лет ответ будет найден.
Дополнительная литература:
Обнаружен организм с крупнейшим геномом Новокаледонский вид вилочного папоротника Tmesipteris oblanceolata, произрастающий в Новой Каледонии, имеет геном размером 160,45 гигапары, что более чем в 50 раз превышает размер генома человека. | Тематическая статья: Тема осмысления |
Рецензия: Рецензия на книгу Дубынина В.А. Мозг и его потребности. От питания до признания | Топик ТК: Интервью с Константином Анохиным |
| ||||||||||||