24. Крейг, разумеется, был прав: для любого операционного числа М и для любого заданного числа А должно найтись некоторое число X, которое порождает число М(АХ). Будем называть это правило вторым принципом Крейга. Как же доказать этот принцип? И как при заданном операционном числе М и заданном А найти в явном виде такое число X, которое порождает М(АХ)?
25. — Мне только что пришел в голову еще один вопрос, — сказал Мак-Каллох. — Пусть для любого числа X величина X обозначает обращение этого X. Можешь ли ты найти такое число X, которое порождает Х67? (Иначе, существует ли такое число X, которое порождает обращение числа X, за которым следует число 67?) В общем виде этот вопрос можно сформулировать так: действительно ли для любого числа А существует некоторое число X, которое порождает ХА?
26. — Мне в голову пришел еще один вопрос, — сказал Мак-Каллох. — Существует ли такое число X, которое порождает повторение числа Х67? Или, в более общем виде: действительно ли для любого числа А существует такое число X, которое порождает повторение числа ХА? Или, если задать вопрос в еще более общем виде: действительно ли для любого числа А и для любого операционного числа М должно существовать некоторое число X, которое порождает м(ХА)?
Обсуждение
Принцип Крейга справедлив не только для второй машины Мак-Каллоха, но и для первой — а в сущности и для любой машины, в которую заложены правила 1 и 2. Это означает, что, как бы мы ни расширяли первую машину Мак-Каллоха, вводя в нее новые правила, работа результирующего устройства все равно будет подчиняться принципу Крейга (а фактически обоим его принципам).
Первый принцип Крейга связан с одним из знаменитых результатов теории вычислимых функций, известным под названием теоремы о рекурсии (или, как ее иногда называют, теоремы о неподвижной точке). С помощью правил 1 и 2, предложенных Мак-Каллохом, этот результат получается, пожалуй, наиболее простым способом. Кроме того, эти правила обладают еще одним занятным свойством (связанным уже с другим знаменитым результатом теории вычислимых функций, известным под названием теоремы о двойной рекурсии), о котором пойдет речь в следующей главе. Наконец, все эти сведения имеют отношение к теории самовоспроизводящихся машин и теории клонирования.
1. — С помощью твоей теперешней машины можно получить бесконечное множество чисел, которые порождают сами себя, — сказал Крейг.
— Это верно, — согласился Мак-Каллох. — Но как ты это докажешь?
— Начнем с того, — сказал Крейг, — что будем называть некое число SA числом, если оно обладает тем свойством, что для любых чисел X и У в случае, если X порождает V, число SX порождает ассоциат У. До того как ты ввел свое новое правило, единственным А-числом у нас было число 3. Однако для твоей нынешней машины существует бесконечное множество А-чисел, причем для любого А-числа S число S2S обязательно должно порождать само себя, поскольку число S2S порождает ассоциат числа S, который и есть S2S.
А как ты догадался, что существует бесконечное множество А-чисел? — спросил Мак-Каллох.
Ну, во-первых, — ответил Крейг, — надеюсь, ты не будешь возражать, что при любых числах X и У, если число X порождает У, то число 44Х будет также порождать У?
— Удачное наблюдение! — воскликнул Мак-Каллох. — Конечно, ты прав: ведь если X порождает У, то число 4Х порождает обращение числа У, а значит, число 44 X должно порождать обращение обращения У — то есть само это число У.
— Прекрасно, — продолжал Крейг. — Таким образом, если X порождает У, то число 44Х будет тоже порождать У, и поэтому число 344Х будет порождать ассоциат числа У. Значит, 344 тоже представляет собой А-число. А раз 344 — это А-число, то число 3442344 должно также порождать само себя!
— Замечательно, — сказал Мак-Каллох, — теперь у нас есть уже два числа — 323 и 3442344, которые порождают сами себя. Но разве это позволяет нам сделать вывод о бесконечном множестве таких чисел?
— Видишь ли, — сказал Крейг, — если число S является А-числом, то А-числом должно быть также и число S44, поскольку для любых чисел X и У, если X порождает У, то число 44Х тоже порождает У, а значит, число S44X порождает ассоциат У, поскольку S по условию есть А-число. Таким образом, А-числами являются такие числа, как 3, 344, 34444, и вообще А-числом является любое число, состоящее из тройки, за которой следует любое четное число четверок. Итак, число 323 порождает само себя; то же самое можно сказать о числах 3442344, 34444234444 и т. д. Следовательно, мы действительно имеем бесконечное множество решений.
Читать дальше