Комментарий Ады – главный документ, на котором зиждется ее научная репутация. В нем не только объясняется принцип действия устройства, но и вносятся два существенных новшества в то, что мы сегодня рассматриваем как развитие компьютера.
Во-первых, Ада проиллюстрировала гибкость будущей машины. Если Разностная машина представляла собой калькулятор, то Аналитическая была уже настоящим компьютером, способным исполнять программы, при помощи которых можно было посчитать что угодно и, более того, выполнить любой заданный алгоритм. Сама идея принадлежала Бэббиджу, но Ада предложила серию иллюстративных примеров, показывавших, как можно настроить машину на выполнение конкретных вычислений. Самым амбициозным из примеров было получение так называемых чисел Бернулли. Эти числа названы так в честь Якоба Бернулли, который написал о них в своем трактате «Искусство предположений» (Ars Conjectandi, 1713 г.) – одной из первых книг по комбинаторике и теории вероятностей. Японский математик Секи Кова открыл их раньше, но его результаты были опубликованы лишь после его смерти. Эти числа возникают при разложении в ряд тригонометрической функции тангенса и встречаются также в некоторых других математических контекстах. Все они представляют собой рациональные числа (дроби), и каждое второе число Бернулли, начиная с третьего, равно нулю; помимо этого, в них не наблюдается никаких очевидных закономерностей. Вот первые несколько чисел:
1 1/2 1/6 0 -1/30 0 1/42 0 -1/30 0 5/66 0 -691/2730.
Несмотря на отсутствие простых закономерностей, числа Бернулли можно получить последовательно при помощи простой формулы. Эта формула и была реализована в программе. Я вернусь к болезненному вопросу о роли Ады в этом деле чуть позже.
Второе предложенное ею новшество было менее конкретным, чем написание программ, но гораздо более масштабным. Ада поняла, что программируемая машина способна производить далеко не только расчеты. Вдохновил ее на эту мысль жаккардовый ткацкий станок – необычайно гибкая машина, на которой можно ткать полотно с богатыми и сложными ткаными узорами. Добиться этого позволяло использование длинной цепочки карточек с проделанными в них отверстиями, которые управляли механическими устройствами и в нужный момент вводили в работу нити разных цветов или иначе воздействовали на рисунок. Она писала:
Отличительная характеристика Аналитической машины и то, что позволяет наделить механизм столь обширными способностями, которые по справедливости сделают эту машину исполнительной правой рукой абстрактной алгебры, – это использование в ней принципа, придуманного Жаккардом для управления при помощи дырчатых карточек сложнейшими рисунками при изготовлении узорчатых тканей. Именно в этом заключается различие между двумя машинами. В Разностной машине ничего подобного нет. Можно с полным основанием сказать, что Аналитическая машина ткет алгебраические узоры точно так же, как Жаккардов ткацкий станок создает вытканные на полотне цветы и листья.
Далее эта аналогия развивается. Аналитическая машина, пишет Ада,
могла бы работать и с другими вещами помимо чисел, если бы нашлись такие объекты, фундаментальные отношения между которыми выражаются отношениями абстрактной науки операций и которые можно было бы адаптировать к действию операционной системы записи и механизма машины… Предполагая, к примеру, что фундаментальные отношения звуков разной высоты в науке о гармонии и музыкальной композиции позволяли бы такое выражение и адаптацию, эта машина могла бы складывать тщательно проработанные и техничные музыкальные произведения любой степени сложности и продолжительности.
Здесь воображение позволило Аде выйти далеко за пределы фантазии ее современников. Общим направлением технического развития Викторианской эпохи было изобретение машин и приспособлений для всего подряд. Гаджет для чистки картофеля, еще один для нарезки вареных яиц ломтиками, еще один для отработки навыков верховой езды без лошади… Но теперь, поняла она, одна-единственная гибкая машина могла бы выполнить практически любое задание. Для этого нужна лишь правильная серия команд – программа.
По этой причине Аду часто рассматривают как первого в истории программиста. Возможно, она действительно первой опубликовала примеры подобных программ, хотя всегда можно вспомнить и предшественников, в том числе вышеупомянутого Жаккарда. Но больше споров вызывает другое: в какой степени программы, помещенные в комментарий, принадлежат ей, а не Бэббиджу. Энтони Хайман в биографической книге «Чарльз Бэббидж, пионер компьютера» указывает на то, что подобными вещами до Ады должны были заниматься по крайней мере человека три-четыре: сам Бэббидж, несколько его ассистентов и, возможно, сын Гершель. Более того, самый внушительный пример, программа для вычисления чисел Бернулли, был написан Бэббиджем, «чтобы облегчить Аде работу». Хайман заключает, что «нет ни малейших указаний на то, что Ада когда-либо пыталась что-нибудь самостоятельно сделать в математике». Тем не менее он пишет, что «Ада сыграла важную роль как интерпретатор Бэббиджа. В этой роли ее достижения замечательны».
Сказанному мы должны, пожалуй, противопоставить слова самого Бэббиджа:
Мы обсудили с ней различные иллюстрации, которые можно было бы ввести: несколько штук предложил я, но выбор был всецело за ней. Как и алгебраическая проработка различных задач, за исключением, правда, задачи, связанной с числами Бернулли, которую я предложил решить сам, чтобы облегчить работу леди Лавлейс. Эту задачу она вернула мне на доработку, так как обнаружила серьезную ошибку, сделанную мной в процессе ее решения.
Заметки графини Лавлейс по объему превышают первоначальную записку примерно втрое. Автор полностью вникла почти во все весьма сложные и абстрактные вопросы, связанные с темой.
Эти две записки, взятые вместе, дают всем тем, кто способен понять приведенные рассуждения, полное представление: вот все разработки и аналитические операции, которые в настоящее время могут исполняться механическим устройством.
* * *
Дальнейшее движение Ады после достижения этой научной вершины шло в основном по нисходящей. Она так и осталась, по существу, ребенком-сорвиголовой, была упряма и импульсивна. Романы с друзьями-джентльменами, следовавшие один за другим, как правило, удавалось замять, а по указанию мужа было уничтожено не меньше 100 компрометирующих писем за ее подписью. Вкус к вину в какой-то момент вышел из-под контроля; баловалась она и опиумом. Ада стала завзятым игроком и оставила по смерти долги на сумму 2000 фунтов. Не исключено даже, что к игре она пристрастилась в опрометчивой попытке добыть денег для Аналитической машины.
Ада никогда не отличалась крепким здоровьем, и теперь ее состояние ухудшилось. Она умерла от рака в возрасте 37 лет. Сознание ее до конца оставалось ясным, а ум – острым. Она интуитивно ухватила общую картину, но ей оставалось еще полностью овладеть подробностями и деталями. В 1843 г. Бэббидж так подвел итог ее короткой жизни: «Забудьте этот мир и все его проблемы; забудьте, если сможете, его многочисленных шарлатанов; короче говоря, забудьте все, кроме Чародейки чисел». До конца жизни ничто не заставило его изменить это мнение об Аде, графине Лавлейс.