Идеи с границы познания. Эйнштейн, Гёдель и философия науки — страница 40 из 78

Но если Ада Лавлейс не изобретала компьютерное программирование, можно ли сказать, что сам компьютер изобрел Чарльз Бэббидж? Биография Ады, которую написал Вулли, делает далеко идущие выводы из того, что Бэббидж так и не построил свою аналитическую машину. Вулли утверждает, что все дело не в чудачестве и перфекционизме Бэббиджа и не в несовершенстве инженерной науки того времени, а в том, что викторианский мир попросту не был готов к появлению компьютера. «Все области жизни, государства и промышленности, которые в дальнейшем преобразил компьютер – телекоммуникации, административная деятельность, автоматика – в те времена, когда Ада переводила и комментировала статью Менабреа, еще, в сущности, отсутствовали, – пишет Вулли. – Когда сто лет спустя возник электронный компьютер, его изобретатели почти ничего не знали ни об Аде, ни о Бэббидже».

Вулли прав лишь отчасти. Да, в жизни XIX века для компьютеров еще не было заметной практической роли. Потребность в них в полной мере начала ощущаться лишь во время Второй мировой войны, когда без них оказалось невозможно взломать вражеские шифры. Тогда основным поставщиком идей стал Алан Тьюринг. Однако Тьюринг знал о трудах Бэббиджа, и его представления об универсальной вычислительной машине были очень близки к представлениям Бэббиджа. Первые цифровые компьютеры, возникшие в начале сороковых, – английский компьютер «Колосс» из Блетчли-парк, где благодаря гению Тьюринга был взломан фашистский код «Энигма», ЭНИАК (ENIAC, Electronic Numerical Integrator and Computer) из Пенсильванского университета, гарвардский «Марк I» компании IBM– в сущности, были машинами Бэббиджа.

Остается открытым вопрос, кто был первым программистом. Если Ада Лавлейс выбывает из соревнований, логично предположить, что эта заслуга также принадлежит Бэббиджу, ведь он и в самом деле написал для своего гипотетического компьютера несколько программ. Но мир всего того, что можно запрограммировать, не исчерпывается компьютерами. Если программировать – это создавать набор закодированных команд, заставляющих автоматическое устройство исполнять ваши приказания, то первым великим программистом был Жозеф-Мари Жаккар, тот самый француз, который в начале XIX века начал применять перфорированные карты, чтобы заставить автоматические станки ткать парчу со сложными узорами. Сам Бэббидж признавал, что Жаккар был его предшественником, и когда рассказывал о концепции аналитической машины на конференции в Турине, показал слушателям вытканный шелком портрет Жаккара, созданный на ткацком станке: на его программирование потребовалось целых 24 тысячи карт. Это длинный код даже по современным меркам.

Стоит ли удивляться, что первые программы предназначались не для переработки больших чисел и объемов информации, а для создания красивой парчи? Или что первый действующий компьютер состоял не из механических комплектующих и не из вакуумных трубок, а из безработных цирюльников? Таковы были разнаряженные, суетные предшественники компьютерной эпохи – эпохи, первым идеологом которой стала нервная молодая женщина, дочь поэта, считавшая себя феей.

Глава пятнадцатая. Алан Тьюринг. Жизнь, логика и смерть

8 июня 1954 года Алан Тьюринг, ученый из Манчестерского университета, был найден мертвым. Обнаружила его квартирная хозяйка. Ему был 41 год. Накануне, перед тем как лечь в постель, он несколько раз откусил от яблока, по всей видимости, начиненного цианидом. На дознании, проведенном через несколько дней, смерть была признана самоубийством. Тьюринг был человек скрытный – скорее по необходимости, чем по складу характера. Одну из его тайн раскрыли за два года до смерти, когда обвинили его в «грубой непристойности» за гомосексуальную связь. Однако о второй его тайне стало известно лишь в дальнейшем. Это Тьюринг практически самостоятельно взломал немецкий код «Энигма» во время Второй мировой войны – достижение, благодаря которому Британия избежала поражения в мрачном сорок первом. Если бы эта тайна стала достоянием публики, Тьюринга славили бы как национального героя. Однако существование британской программы дешифровки «Энигмы» скрывалось даже после войны, и соответствующие документы были рассекречены лишь в семидесятые. И лишь в восьмидесятые было признано второе, не менее фундаментальное, достижение Тьюринга: создание основы для современного компьютера.

Возникает понятное искушение считать Тьюринга мучеником-геем, которого обрекли на смерть за сексуальную ориентацию, невзирая на огромные заслуги перед человечеством. Но не менее соблазнительно задуматься, действительно ли это было самоубийство. Когда в 1951 году Гай Берджесс и Дональд Маклин, британские дипломаты и, по слухам, любовники, тайно работавшие на советскую разведку, сбежали в Москву, это побудило одну лондонскую газету написать в редакционной статье, что Британии следует перенять американскую политику «искоренения и сексуальных, и политических извращенцев». Участие Тьюринга во взломе кода во время войны привело к близкому знакомству с британской разведкой. А после обвинения в гомосексуальности сложилось впечатление, что он стал неуправляем: начал путешествовать за границу в поисках сексуальных партнеров, посещать страны, граничащие с Восточным блоком. Коронер, проводивший дознание, обо всем этом не подозревал. Никто не проверил найденное у постели яблоко на наличие цианида.

Мог ли Тьюринг стать мишенью убийства, которое выдали за суицид? О такой возможности после его смерти заговаривали не раз и не два, на что намекает и заимствованное у хичкоковского триллера название краткой биографии Тьюринга, которую опубликовал в 2006 году Дэвид Ливитт: «Человек, который слишком много знал» (Leavitt, D., The Man Who Knew Too Much). Ливитт, автор нескольких романов и сборников рассказов, главные герои которых – гомосексуалы, делает ставку на тему мученика-гея и упоминает в связи с этим другой классический фильм – «Человек в белом костюме». В этой комедии 1951 года, которую Ливитт прочитывает как аллегорию однополой любви, ученого преследует толпа, напуганная его чудесным изобретением. Ливитт упоминает и третий фильм, который, очевидно, произвел сильное впечатление на самого Тьюринга – «Белоснежка и семь гномов», диснеевский полнометражный мультфильм, вышедший в 1937 году. Близкие Тьюринга говорили, что он любил напевать под нос заклинание злой колдуньи: «В зелье яблоко макнем – смертный сон поселим в нем».

Алан Мэтисон Тьюринг был зачат в Индии, где его отец работал на государственной службе, и родился в 1912 году, когда его родители приехали в Лондон. Они не взяли ребенка с собой на Восток, а отдали на воспитание отставному военному с женой, которые жили в прибрежном английском городке. Алан был красивый мальчик, мечтательный, немного неуклюжий, безнадежно неаккуратный и не слишком популярный среди одноклассников. В детстве он был одиноким, однако подростком наконец встретил другого мальчика, разделявшего его страсть к науке. Они стали неразлучными друзьями и вместе исследовали эзотерические научные вопросы вроде теории относительности Эйнштейна. Год спустя друг Алана умер от туберкулеза, а для Тьюринга их отношения, судя по всему, стали идеалом романтической любви, и всю свою жизнь он мечтал еще раз испытать это чувство.

В 1931 году Тьюринг поступил в Кембридж. Его колледж – Кингс-колледж – имел, по словам Ливитта, «весьма гомосексуальную репутацию» и славился связями с Блумсберийским кружком. Тьюринг был не от мира сего и поэтому чуждался эстетических удовольствий, предпочитая спартанские радости вроде гребли и бега на длинные дистанции. Однако Кембридж обладал и богатой научной культурой, и таланты Тьюринга расцвели там в полной мере. В 1935 году при поддержке Джона Мэйнарда Кейнса его избрали членом научного общества Кингс-колледжа – Тьюрингу было тогда 22 года. Когда об этом узнали в его старой школе, мальчишки сочинили про него стишок:


Тьюринг для наших времен

Весьма недурен,

Раз избран в совет

С таких ранних лет[22].


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

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

В сущности, проблема разрешимости сводится к вопросу, можно ли свести логические рассуждения к вычислениям. О таком мечтал философ XVII века Готфрид фон Лейбниц – он представлял себе логическое исчисление, которое позволило бы решать любые разногласия, взяв в руки перо и сказав: «Calculemus» («Давайте посчитаем»). То есть, предположим, у вас есть набор посылок и предполагаемый вывод. Существует ли автоматическая процедура, позволяющая решить, следует ли из первых второй, то есть действительно ли из этих посылок логически следует этот вывод? Можно ли в принципе определить, доказуема ли гипотеза? Проблема разрешимости требует создания механистического набора правил, позволяющих за конечное время определить, верно ли подобное утверждение. Такой метод был бы особенно полезен математикам, поскольку дал бы им возможность решить множество головоломок в своей области, скажем, доказать Великую теорему Ферма или проблему Гольдбаха, в сущности, грубой силой. Именно поэтому Давид Гильберт в 1928 году назвал проблему разрешимости «главной проблемой математической логики» и призвал математическое сообщество работать над ней.

Тьюринг начал с размышлений о том, что происходит, когда человек проделывает вычисления при помощи карандаша, блокнота и набора бездумных команд. Безжалостно отбросив все несущественные детали, Тьюринг пришел к концепции идеальной машины, которая, по его убеждению, улавливала суть процесса. Концепция была непритязательной: бесконечная лента, состоящая из квадратиков (примерно как бесконечная полоса туалетной бумаги). Эту ленту считывает маленький сканер, который перемещается на один квадратик за шаг и пишет и стирает нули и единицы – по одному символу на квадратик. Действия сканера в каждый момент зависят от того, какой символ стоит в квадратике и в каком состоянии находится сканер, то есть, так сказать, от его «настроения». Число состояний конечно, а то, как они связывают сим