Размышления о думающих машинах. Тьюринг. Компьютерное исчисление
Шрифт:
Математическое рассуждение схематично можно рассматривать как упражнение в комбинировании двух факторов — интуиции и изобретательности.
Алан Тьюринг, «Логические системы, основанные на ординалах»
Тьюринг предполагал, что человеческая интуиция возможна благодаря неким процессам, которые не могут быть выражены в виде алгоритма. Эти «внеалгоритмические» этапы включены в ход рассуждения, помогают обнаружить взаимосвязь фактов и прийти к умозаключению. Интуиция присутствует не только в математике — и врач, и автослесарь в момент диагностики пользуются ею.
В этот период Тьюринг начал проявлять интерес к возможности создания своей машины,
В 1938 году еще один гениальный исследователь той эпохи, американский ученый венгерского происхождения Джон фон Нейман предложил Тьюрингу временную должность в Принстонском университете. Однако тот отверг это предложение и летом того же года вернулся в Королевский колледж. По возвращения он занялся созданием аналогового механизма для оценки так называемой гипотезы Римана.
В августе 1939 года Тьюринг получил предложение работать в Блетчли-парке над расшифровкой перехваченных сообщений нацистов.
Глава 2
Машины против кода.
Тьюринг как криптограф
Вторая мировая война не была просто еще одной войной в истории человечества. В ней сражались и солдаты, и гражданские лица, и даже ученые. Соединенное Королевство подвергалось жесточайшим атакам нацистской Германии по морю и с воздуха. Британцы смогли победить врага, но для этого им пришлось привлечь к работе величайшие умы своей страны, среди которых был и Алан Тьюринг. Война способствовала появлению научных открытий, таких как ядерная энергия, и удивительных изобретений, таких как компьютер.
Битва за Атлантику, продлившаяся практически до последних дней Второй мировой войны, началась 3 сентября 1939 года. За этот период на театре военных действий были реализованы самые масштабные военные операции. На протяжении всего конфликта немецкие подлодки систематически атаковали британский торговый флот, затрудняя снабжение Британских островов. Во время Первой мировой войны также происходили неоднократные столкновения немецкого и британского флотов, но во Второй мировой войне сценарий операций кардинально изменился. Появился новый класс судов — субмарины, ставшие смертельным оружием против британцев, так что те вынуждены были формировать военное сопровождение для защиты торговых кораблей. Эта стратегия дала временный результат: немецкие подлодки тогда были очень медлительными, для осуществления выстрела им необходимо было подняться на поверхность, и в это время они становились легкой добычей. К концу войны Германия потеряла около 75 % своих подлодок. Однако действия немецкого подводного флота вызвали серьезные проблемы со снабжением Соединенного Королевства. Также с 1940 по 1941 год страна подвергалась серьезным бомбардировкам. Хотя их основной целью был Лондон, пострадали и другие города: погибло большое количество мирного населения и было разрушено более миллиона жилых домов.
БИТВА ЗА АТЛАНТИКУ
Тьюринг и его современники вряд ли могли предположить, что одним из основных способов применения компьютеров станет развлекательная индустрия. Моделирование, симуляции или имитация действий реальной системы, такой как движение подлодки, сегодня стало важнейшей сферой использования компьютеров, позволяющей моделировать ситуации, которые иначе большинство
Стратегия Action in the North Atlantic, классическая игра-симулятор.
После окончания Первой мировой войны, 23 февраля 1918 года, немецкий инженер Артур Шербиус (1878-1929) запатентовал «Энигму», машину для шифрования сообщений. Фирма «Шербиус & Риттер», основанная изобретателем и его партнером, сразу же начала торговать устройством, однако позже права на его использование были проданы немецкому предприятию Chiffriermaschinen Aktien-Gesellschaft. В начале 1920-х годов «Энигма» была представлена публике в двух городах Европы, с тех пор начались продажи целого ряда моделей для гражданского использования. В своем названии они имели одну из букв: А, В, С, D. Изначально машина создавалась для шифрования информации о сделках, но пик ее использования пришелся на период войны. В Испании продавалась модель D, применявшаяся во время Гражданской войны. Самым важным клиентом производителей стала Германия. Для нее была разработана модель G; модель Funkschlussel, или М, стала использоваться на флоте, модель «Вермахт», или I, — в армии. Последняя разработка стала самой популярной, поэтому мы остановимся на пояснении принципа ее функционирования. В 1942 году свою модель стал использовать и немецкий подводный флот. Любопытно, что 40 % всех машин «Энигма» было изготовлено в годы Второй мировой войны. Для немцев эта машина стала жизненно необходимой, и Гитлер отдал приказ о включении ее в программу вооружения Третьего рейха.
ДЬЯВОЛЬСКАЯ МАШИНА. КАК РАБОТАЛА «ЭНИГМА»
Хотя с виду машина очень напоминала пишущую, внутри нее скрывался беспрецедентно сложный механизм. В основе его действия лежала комбинация механических и электрических компонентов. Механическая часть включала клавиатуру и систему дисков, или барабанов, называемых роторами. Контакты роторов соответствовали 26 буквам алфавита, от А до Z. Когда оператор нажимал на клавишу, начиналось вращение одного из роторов, затем следующего, потом, одного за другим, соседних — шаг за шагом справа налево. Такой ритм поворотов обепечивался за счет выемок в роторах и позволял, например, шифровать букву А даже в одном и том же тексте разными символами. Ротор был изготовлен так, что на каждой из двух сторон его диска располагались контакты, которые при соприкосновении с соседним ротором замыкали электрическую цепь.
Внутри каждого ротора находилось 26 проводов, соединявших все контакты на одной из его сторон с контактами на другой стороне. Если добавить к этому, что в каждом роторе было собственное переплетение проводов, соединявших контакты, получится поистине дьявольская машина. Обычно на «Энигме» было три или четыре ротора, которые при нажатии клавиши задействовали электрическую цепь, каждый раз разную. А поскольку роторы в каждый момент использовали разные электрические цепи, одной и той же букве всегда соответствовал новый символ.
Управление «Энигмой» требовало выполнения следующих операций. В первую очередь, перед шифрованием или дешифровкой сообщения оператор должен был перевести все роторы справа налево в определенное положение. Далее роторы вращались до достижения начального положения, обозначенного одной из 26 букв алфавита — это была единственная буква, видимая через специальное отверстие. Начальный порядок и положение роторов задавали код для шифрования и дешифровки сообщений. К этим двум характеристикам добавилась и третья — возможность изменить сеть проводов, соединяющих контакты между двумя сторонами ротора.