Новый ум короля: О компьютерах, мышлении и законах физики - [28]

Шрифт
Интервал

, перемещается на один шаг вправо (вспомним, что команда STOP эквивалентна R.STOP) и останавливается. Тем самым к последовательности из четырех единиц прибавляется еще одна, превращая — как и требовалось — 4 в 5.

В качестве несколько более трудного упражнения можно проверить, что машина UN х 2, определяемая набором инструкций

00 → 00R

01 → 10R

10 → 101L

11 → 11R

100 → 110R

101 → 1000R

110 → 01.STOP

111 → 111R

1000 → 1011L

1001 → 1001R

1010 → 101L

1011 → 1011L

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

Чтобы понять, как работает машина EUC, нужно явным образом задать пару подходящих чисел, скажем, 6 и 8. Как и ранее, изначально машина находится во внутреннем состоянии 0 и расположена слева, а лента выглядит следующим образом:

… 0000011111101111111100000….

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

…000011000000000000…,

при этом машина располагается справа от ненулевых цифр. Таким образом, найденный наибольший общий делитель равен 2 (как и должно быть).

Исчерпывающее объяснение, почему машина EUC (или UN х 2) на самом деле осуществляет действие, для которого она предназначена, включает в себя некоторые тонкости, и разобраться в нем, может быть, даже труднее, чем понять устройство самой машины — довольно обычная ситуация с компьютерными программами! (Чтобы полностью понять, почему алгоритмические процедуры делают то, что от них ожидается, необходима определенная интуиция. А не являются ли интуитивные прозрения сами алгоритмическими? Это один из вопросов, которые будут для нас важны в дальнейшем.) Яне буду пытаться дать здесь такое объяснение для приведенных примеров EUC или UN х 2. Читатель, шаг за шагом проверив их действие, обнаружит, что я незначительно изменил обычный алгоритм Евклида, чтобы получить более компактную запись в рамках используемой схемы. И все же описание EUC остается достаточно сложным, включая в себя 22 элементарные инструкции для 11 различных внутренних состояний. В основном эти сложности носят чисто организационный характер. Можно отметить, например, что из этих 22 инструкций только 3 в действительности изменяют запись на ленте! (Даже для UN х 2 я использовал 12 инструкций, половина из которых меняют запись на ленте.)

Двоичная запись цифровых данных

Унарная система чрезвычайно неэффективна для записи больших чисел. Поэтому мы по большей части будем использовать вышеописанную двоичную систему. Однако, сделать это напрямую и попытаться читать ленту просто как двоичное число мы не сможем. Дело в том, что мы не имеем возможности сказать, когда кончается двоичное представление числа и начинается бесконечная последовательность нулей справа, которая отвечает пустой ленте. Нам нужен способ как-то обозначать конец двоичной записи числа. Более того, часто нам будет нужно вводить в машину несколько чисел, как, например, в случае с алгоритмом Евклида, когда требуется пара чисел[42]. Но в двоичном представлении мы не можем отличить пробелы между числами от нулей или строчек нулей, входящих в записи этих двоичных чисел. К тому же, помимо чисел нам может понадобиться и запись всевозможных сложных инструкций на той же ленте. Для того чтобы преодолеть эти трудности, воспользуемся процедурой, которую я буду в дальнейшем называть сокращением и согласно которой любая строчка нулей и единиц (с конечным числом единиц) не просто считывается как двоичное число, но замещается строкой из нулей, единиц, двоек, троек и т. д. таким образом, чтобы каждое число в получившейся строчке соответствовало числу единиц между соседними нулями в исходной записи двоичного числа. Например, последовательность

01000101101010110100011101010111100110

превратится в

Мы теперь можем считывать числа 2, 3, 4… как метки или инструкции определенного рода. Действительно, пусть 2 будет просто «запятой», указывающей на пробел между двумя числами, а числа 3, 4, 5… могли бы по нашему желанию символизировать различные инструкции или необходимые обозначения, как, например, «минус», «плюс», «умножить», «перейти в позицию со следующим числом», «повторить предыдущую операцию следующее число раз», и т. п. Теперь у нас есть разнообразные последовательности нулей и единиц, разделенные цифрами большей величины. Эти последовательности нулей и единиц будут представлять собой обычные числа, записанные в двоичной форме. Тогда записанная выше строка (при замене двоек «запятыми») примет вид:

(двоичное число 1001) запятая (двоичное число 11) запятая….

Используя обычные арабские числа «9», «3», «4», «0» для записи соответствующих двоичных чисел 1001, 11, 100 и 0, получаем новую запись всей последовательности в виде: 9, 3, 4 (инструкция 3) 3 (инструкция 4) 0.

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


Еще от автора Роджер Пенроуз
Большое, малое и человеческий разум

Книга написана известным английским ученым-астрофизиком и популяризатором науки Роджером Пенроузом на основе престижных Теннеровских лекций (прочитанных им в 1995 г.) и материалов вызванной этими лекциями полемики. Поэтому она включает в себя разделы, написанные крупными английскими учеными Нэнси Картрайт и Абнером Шимони, а также знаменитым физиком -теоретиком Стивеном Хокингом. Книгу отличают оригинальность идей автора, разнообразие обсуждаемых проблем (парадоксы квантовой механики, астрофизика, теория познания, проблемы художественного восприятия) и исключительно высокий научный и философский уровень изложения.


Тени разума. В поисках науки о сознании

Книга знаменитого физика о современных подходах к изучению деятельности мозга, мыслительных процессов и пр. Излагаются основы математического аппарата — от классической теории (теорема Гёделя) до последних достижений, связанных с квантовыми вычислениями. Книга состоит из двух частей: в первой части обсуждается тезис о невычислимости сознания, во второй части рассматриваются вопросы физики и биологии, необходимые для понимания функционирования реального мозга.Для широкого круга читателей, интересующихся наукой.


Рекомендуем почитать
Новый народ

Автор, являющийся одним из руководителей Литературно-Философской группы «Бастион», рассматривает такого рода образования как центры кристаллизации при создании нового пассионарного суперэтноса, который создаст счастливую православную российскую Империю, где несогласных будут давить «во всем обществе снизу доверху», а «во властных и интеллектуальных структурах — не давить, а просто ампутировать».


Медленный взрыв империй

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


Аристотель. Идеи и интерпретации

В книге публикуются результаты историко-философских исследований концепций Аристотеля и его последователей, а также комментированные переводы их сочинений. Показаны особенности усвоения, влияния и трансформации аристотелевских идей не только в ранний период развития европейской науки и культуры, но и в более поздние эпохи — Средние века и Новое время. Обсуждаются впервые переведенные на русский язык ранние биографии Аристотеля. Анализируются те теории аристотелевской натурфилософии, которые имеют отношение к человеку и его телу. Издание подготовлено при поддержке Российского научного фонда (РНФ), в рамках Проекта (№ 15-18-30005) «Наследие Аристотеля как конституирующий элемент европейской рациональности в исторической перспективе». Рецензенты: Член-корреспондент РАН, доктор исторических наук Репина Л.П. Доктор философских наук Мамчур Е.А. Под общей редакцией М.С.


Божественный Людвиг. Витгенштейн: Формы жизни

Книга представляет собой интеллектуальную биографию великого философа XX века. Это первая биография Витгенштейна, изданная на русском языке. Особенностью книги является то, что увлекательное изложение жизни Витгенштейна переплетается с интеллектуальными импровизациями автора (он назвал их «рассуждениями о формах жизни») на темы биографии Витгенштейна и его творчества, а также теоретическими экскурсами, посвященными основным произведениям великого австрийского философа. Для философов, логиков, филологов, семиотиков, лингвистов, для всех, кому дорого культурное наследие уходящего XX столетия.


Основания новой науки об общей природе наций

Вниманию читателя предлагается один из самых знаменитых и вместе с тем экзотических текстов европейского барокко – «Основания новой науки об общей природе наций» неаполитанского философа Джамбаттисты Вико (1668–1774). Создание «Новой науки» была поистине титанической попыткой Вико ответить на волновавший его современников вопрос о том, какие силы и законы – природные или сверхъестественные – приняли участие в возникновении на Земле человека и общества и продолжают определять судьбу человечества на протяжении разных исторических эпох.


О природе людей

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