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