Шрифт:
Интервал:
Закладка:
С другой стороны, остается ощущение, что принципы построения этих машин содержат излишние ограничения. Разрешение устройству считывать за один раз только одну двоичную цифру (0 или 1) и передвигаться каждый раз только на один шаг да еще вдоль единственной одномерной ленты, на первый взгляд, ограничивает возможности машины. Почему бы не разрешить одновременное использование четырех, пяти или, возможно, тысячи разных лент, по которым одновременно двигалось бы большое количество взаимосвязанных считывающих устройств? Почему бы не ввести целую плоскость с нулями и единицами (или, например, трехмерное пространство), вместо того чтобы настаивать на использовании одномерной ленты? Почему бы не использовать другие системы счисления или символы из каких-нибудь более сложных алфавитов? По сути, ни одно из этих изменений ни в малейшей степени не влияет на то, что в принципе может быть достигнуто с помощью машины Тьюринга, хотя некоторые из них отразились бы на экономичности производимых операций (как это наверняка произошло бы, разреши мы использование нескольких лент). Класс осуществляемых операций, попадающих, таким образом, под определение «алгоритма» (или «вычисления», или «выполнимой процедуры», или «рекурсивной операции»), остался бы в точности тем же самым, если мы расширим определение наших машин и включим в него даже все предлагавшиеся выше модификации одновременно!
Мы можем видеть, что нет необходимости в дополнительных лентах, коль скоро устройство может по мере надобности находить свободное место на одной ленте. При этом может потребоваться постоянная перезапись данных с одного места ленты на другое. Это, может быть, «неэффективно», но в принципе не ограничивает возможности машин Тьюринга[44]. Сходным образом, использование более чем одного устройства Тьюринга для параллельных вычислений — идея, ставшая очень популярной в последние годы в связи с попытками более точного моделирования человеческого мозга, — не дает никаких принципиальных преимуществ (хотя при определенных обстоятельствах может увеличиться быстродействие). Использование двух непосредственно не связанных друг с другом устройств не даст выигрыша по сравнению с двумя взаимосвязанными устройствами. Но если два устройства связаны друг с другом, то, в сущности, это уже одно устройство!
А что можно сказать об ограничении Тьюринга, касающегося одномерности ленты? Если мы считаем, что эта лента представляет собой «окружение», то, возможно, мы бы предпочли в качестве такового иметь плоскую поверхность, или, допустим, трехмерное пространство. Может показаться, что плоскость лучше подошла бы для изображения «блок-схемы» вычислений (как в вышеприведенном описании последовательности действий алгоритма Евклида), чем одномерная лента[45]. Однако запись блок-схемы в «одномерной» форме не представляет принципиальных трудностей (например, можно использовать обычное словесное описание). Двумерное плоское изображение дает только удобство и простоту восприятия, но, по сути, ничего не меняет. Всегда есть возможность преобразовать координаты отметки или объекта на двумерной плоскости или в трехмерном пространстве и явным образом отобразить их на одномерной ленте. (Фактически, использование двумерной плоскости полностью эквивалентно использованию двух лент. Две ленты дают две «координаты», которые нужны для определения местоположения точки на двумерной плоскости; аналогично, три ленты могут выполнять ту же роль для точки в трехмерном пространстве.) И хотя эта одномерная запись может вновь оказаться «неэффективной», принципиальные возможности устройства это никак не ограничивает.
Несмотря на все это, по-прежнему остается вопрос о том, действительно ли понятие машины Тьюринга охватывает все логические или математические операции, которые мы могли бы назвать «механическими». В то время, когда Тьюринг написал свою основополагающую работу, ситуация была гораздо менее ясной, чем сегодня, поэтому Тьюринг справедливо посчитал необходимым предоставить развернутое изложение этого вопроса. Детально рассмотренная Тьюрингом проблема получила дополнительное обоснование благодаря тому, что совершенно независимо от Тьюринга (и на самом деле несколько ранее) американский логик Алонзо Черч (совместно со Стивеном Клини), стремясь найти решение проблемы алгоритмической разрешимости Гильберта, предложил свою схему лямбда-исчисления. Хотя то, что это была всеобъемлющая полностью механическая схема, было не так очевидно, как в случае с подходом Тьюринга, ее несомненным преимуществом была удивительная компактность математической структуры. (Я буду рассматривать замечательный анализ Черча в конце главы.) Независимо от Тьюринга были предложены и другие подходы к решению задачи Гильберта (см. Ганди [1988]), среди которых можно выделить работу американского логика польского происхождения Эмиля Поста (опубликованную несколько позже работы Тьюринга, но содержащую идеи, более близкие идеям Тьюринга, нежели Черча). В скором времени было доказано, что все эти схемы совершенно эквивалентны.
Это значительно укрепило точку зрения, известную как тезис Черча — Тьюринга, которая утверждает, что машина Тьюринга (или ее эквивалент) на самом деле определяет то, что в математике понимают под алгоритмической (или выполнимой, или рекурсивной, или механической) процедурой. Сегодня, когда быстродействующие электронные компьютеры прочно вошли в нашу жизнь, немного найдется тех, кто считает необходимым ставить под сомнение эту теорию в ее изначальной формулировке. Вместо этого сейчас исследователи обратили внимание на вопрос, какие логические и математические операции могут выполнять реальные физические системы (возможно, включающие и человеческий мозг), подчиняющиеся точным физическим законам: точно такие же, что и машины Тьюринга, или же их возможности больше или меньше? Что касается меня, то я с удовольствием принимаю исходную математическую интерпретацию тезиса Черча — Тьюринга. С другой стороны, вопрос о его отношении к поведению реальных физических систем заслуживает отдельного рассмотрения и будет занимать в дальнейшем центральное место в наших рассуждениях.
Числа, отличные от натуральных
В предыдущих параграфах мы рассматривали действия над натуральными числами и отметили тот замечательный факт, что машина Тьюринга может оперировать с натуральными числами произвольной величины, несмотря на то, что каждая машина имеет фиксированное и конечное число внутренних состояний. Однако часто возникает необходимость в операциях с более сложными числами, такими как отрицательные числа, обыкновенные дроби и бесконечные десятичные дроби. Первые две категории (т. е. числа вида -597/26) легко поддаются обработке машинами Тьюринга, причем и числители, и знаменатели могут быть сколь угодно большими. Все, что для этого нужно — какой-нибудь подходящий код для знаков «-» и «/», который можно легко выбрать при использовании расширенной двоичной записи (например, «3» = 1110 для знака «-», а «4» = 11110 — для знака «/»). Таким образом, отрицательные числа и обыкновенные дроби рассматриваются как конечные наборы натуральных чисел, и с точки зрения общих вопросов вычислимости ничего нового не дают.
То же можно сказать и о конечных десятичных выражениях с произвольным числом знаков после запятой, поскольку они представляют собой лишь частный случай обыкновенных дробей. Так, например, конечная десятичная аппроксимация иррационального числа π, заданная числом 3,14159265, есть просто дробь 314 159 265/100 000 000. Однако бесконечные десятичные выражения, такие как полная запись числа π
π = 3,14159265358979…,
представляют определенные трудности. На самом деле, ни входные, ни выходные данные машины Тьюринга не могут быть бесконечными десятичными выражениями. Можно было бы думать, что нашлась бы машина Тьюринга, способная выдавать одну за другой все последовательные цифры — 3, 1, 4, 1, 5, 9… в десятичной записи числа π и переносить их на выходную ленту, а мы просто позволим этой машине работать бесконечно долго. Но это запрещено для машин Тьюринга. Мы должны дождаться остановки машины (сопровождаемой звонком колокольчика!), прежде чем сможем ознакомиться с результатом. До того момента, пока машина не выполнит команды STOP, выходные данные могут изменяться и поэтому не являются достоверными. С другой стороны, после полной остановки машины результат должен быть с необходимостью конечным.
- Ткань космоса. Пространство, время и текстура реальности - Брайан Грин - Физика
- Новый этап в развитии физики рентгеновских лучей - Александр Китайгородский - Физика
- Путешествие в страну РАИ - Дмитрий Николаевич Трифонов - Физика
- В делении сила. Ферми. Ядерная энергия. - Antonio Hernandez-Fernandez - Физика
- Теория Всего. Пояснительная Записка для математиков и физиков - Сергей Сергеевич Яньо - Физика / Науки: разное
- Физика движения. Альтернативная теоретическая механика или осознание знания - Александр Астахов - Физика