— Тут есть еще одна сложность, о которой я вам не сообщил, — перебил Мартинес. — Мы непременно должны открыть сейф к первому июня нынешнего года. Дело в том, что в сейфе хранятся важные государственные документы, которые должны быть извлечены утром второго июня. Если до той поры нам не удастся раздобыть шифр, то придется взорвать сейф, несмотря на его стоимость. Правда, сами документы при этом не будут повреждены взрывом, поскольку они находятся в сверхпрочном внутреннем сейфе, расположенном достаточно далеко от входной двери наружного сейфа. Что же касается других хранящихся там ценностей — ну что ж, документы важнее всего! Правда, нам это влетит в копеечку, если все-таки придется прибегнуть к столь радикальному способу!
— Попробую что-нибудь придумать, — сказал Крейг, подымаясь. — Пока ничего не обещаю, но сделаю все, что смогу.
А теперь попробуем рассказать, что же было в рукописи Фаркуса. Прежде всего отметим, что во всех шифрах использовались не цифры, а буквы. Поэтому шифром, или комбинацией, мы будем называть произвольную последовательность букв, составленную из любых двадцати шести прописных букв английского алфавита. Такая последовательность может быть любой длины и включать в себя произвольное число букв, повторяющихся любое число раз. Например, комбинация BABXL представляет собой шифр, комбинация XEGGEXY также является шифром. Отдельная буква тоже может считаться комбинацией (комбинацией единичной длины). При этом одни комбинации букв (шифры) будут открывать замок, другие могут его полностью заблокировать, а третьи не будут оказывать на механизм замка никакого действия. Комбинации, не оказывающие на замок никакого действия, мы будем называть нейтральными. Далее мы будем использовать строчные буквы х и у для обозначения произвольных комбинаций, причем символ ху будет обозначать собой комбинацию х, за которой следует комбинация у. Так, если х представляет собой комбинацию GAQ, a y — комбинацию DZBF, то ху будет обозначать комбинацию GAQDZBF. Обращением, или обратной комбинацией, мы будем называть ту же комбинацию, но записанную в обратном порядке. Например, обращением комбинации BQFR является комбинация RFQB. Повторением хх комбинации х назовем комбинацию х, за которой вновь следует она сама; так, например, повторение комбинации BQFR есть BQFRBQFR.
Далее Фаркус (или как там его звали по-настоящему) вводит так называемые родственные по отношению к другим (или, быть может, по отношению к самим себе) комбинации, однако, к сожалению, нигде не оговаривает, что же скрывается под вводимым им понятием. Тем не менее он перечисляет несколько характерных свойств этого «родства» (что бы там под этим ни понималось), которые, по его мнению, позволяют достаточно искушенному человеку легко открыть замок! Он перечисляет следующие 5 основных свойств (которые, как он отмечает, выполняются для двух любых произвольных комбинаций х и у):
Свойство Q. Для любой комбинации х комбинация QxQ является родственной по отношению к х. (Например, комбинация QCFRQ является родственной комбинации CFR.)
Свойство L. Если комбинация х родственна у, то комбинация Lx родственна комбинации Qy. (Например, поскольку комбинация QCFRQ родственна по отношению к CFR, то, значит, комбинация LQCFRQ является родственной по отношению к комбинации QCFR.)
Свойство V, или свойство обращения. Если комбинация х родственна по отношению к комбинации у, тогда комбинация Vx родственна обращению комбинации у (обратной комбинации у). (Например, поскольку комбинация QCFRQ родственна по отношению к комбинации CFR, то, следовательно, комбинация VQCFRQ будет родственной по отношению к RFC.)
Свойство R, или свойство повторения. Если комбинация х родственна по отношению к комбинации у, то комбинация Rx будет родственна комбинации уу (повторению комбинации у). (Например, поскольку комбинация QCFRQ родственна по отношению к комбинации CFR, то комбинация RQCFRQ будет родственной по отношению к комбинации CFRCFR. Кроме того, как мы видели на примере, приведенном в свойстве V, комбинация VQCFRQ является родственной по отношению к RFC, и, стало быть, комбинация RVQCFRQ будет родственной комбинации RFCRFC.)
Свойство Sp. Пусть комбинация х родственна по отношению к комбинации у, тогда, если комбинация x блокирует замок, то комбинация у будет нейтральной; если же комбинация х является нейтральной, то комбинация у блокирует замок. (Например, мы убедились, что комбинация RVQCFRQ является родственной по отношению к комбинации RFCRFC. Следовательно, если комбинация RVQCFRQ будет блокировать замок, то комбинация RFCRFC не будет оказывать на механизм замка никакого действия, а если комбинация LVQCRFQ никакого действия на механизм замка не оказывает, то есть она является нейтральной, тогда комбинация RFCRFC блокирует замок.)
С помощью этих пяти условий действительно можно подобрать комбинацию, которая открывала бы замок. (Самая короткая комбинация, которая мне известна, имеет длину, равную 10, но, конечно, существуют и различные другие комбинации.)
Разумеется, вряд ли можно ожидать, что теперь читатель сразу же отыщет решение поставленной задачи; ведь с описанием работы этого механизма связана целая теория, к последовательному изложению которой мы перейдем в дальнейшем. Теория эта имеет отношение к некоторым очень интересным открытиям в области математики и теоретической логики.
По правде говоря, после встречи с Мартинесом Крейг несколько дней бился над головоломкой, однако безуспешно.
— Оставаться здесь дальше не имеет смысла, — решил Крейг. — У меня нет ни малейшего представления, сколько времени эта работа может у меня занять, полагаю, что вполне могу подумать над этим дома.
Итак, инспектор Крейг возвратился в Лондон. То, что загадка в конце концов была решена, произошло не столько благодаря усилиям Крейга и его друзей (с ними мы вскоре познакомимся), но и в силу удивительного стечения обстоятельств, которые вот-вот раскроются перед нами.
Удивительная числовая машина
После того как инспектор Крейг возвратился в Лондон, он поначалу потратил массу времени, пытаясь разгадать загадку сейфа из Монте-Карло, но потом, так ничего и не добившись, счел за благо на некоторое время отложить злополучную задачу в сторону и немножко развеяться. Тут ему пришла в голову мысль навестить своего старого приятеля Нормана Мак-Каллоха, которого он не встречал уже несколько лет. Они подружились, еще будучи студентами Оксфордского университета, и Крейг всегда с большой теплотой вспоминал те дни и своего друга — отличного парня, правда, немного чудаковатого, который постоянно выдумывал всякого рода технические курьезы. И хотя наш рассказ относится ко времени, когда современные ЭВМ еще не были изобретены, Мак-Каллоху уже в ту пору удалось сконструировать нечто вроде механического счетно-решающего устройства, но, конечно, по нынешним меркам, весьма примитивного.
— В свое время я здорово развлекался с этой штукой, — объяснил приятелю Мак-Каллох. — Правда, никак не могу придумать, к чему бы полезному ее приспособить, но зато она обладает всякими занятными свойствами.
— Что же она умеет делать? — поинтересовался Крейг.
— А вот что, — бодро начал Мак-Каллох. — Ты вводишь в машину заданное число, а через некоторое время она сама выдает тебе число.
— То же самое число или какое-нибудь другое? — спросил Крейг.
— Это зависит от того, какое число в нее ввести.
— Понятно, — почесал в затылке Крейг.
— Кроме того, — продолжал Мак-Каллох, — моя машина воспринимает не все числа, а лишь некоторые из них. Поэтому те числа, которые ее устраивают, я буду называть допустимыми числами.
— Вся эта терминология звучит весьма логичной, — согласился Крейг, — но позволь мне узнать, какие числа для машины являются допустимыми, а какие нет. Имеется ли какое-нибудь правило на этот