— Спасибо. Но лучше, как ты понимаешь, до такого прямого противостояния не доводить.
— Ты предлагаешь просто отдать Дракону половинку вашего шарда, и улететь, оставив местным "подарок" в виде логической бомбы? Да она сама вряд ли такому решению будет рада.
— Мы с Граприсом сейчас ищем способ извлечь бомбу. Просто не надо начинать резкие действия слишком быстро. Дай нам время.
— Это всегда пожалуйста. Время — единственный товар, которого у меня пока в избытке.
Ключевым словом тут было "пока". Являясь единственной защитой Ковенанта от Братских Лун, Ричард теперь не мог себе позволить уйти в глубокий стазис. Максимум — замедлиться в пять-десять раз. Ну, когда Гор ляжет на курс прочь из системы, можно будет увеличить коэффициент в личной гробнице времени до тысячи — положиться на реакцию электроники. В случае резкого появления Луны по курсу, автоматика успеет его выдернуть в реальное время. На таком коэффициенте перелёт до соседней звезды займёт по времени Ричарда лет пять. А проводить гравитационный манёвр планетоида такого размера вблизи Солнца — слишком большой риск. Нужна звезда без обитаемых планет.
Так что выжидать веками, как раньше, он себе позволить не может. Ну, до тех пор, пока не уйдёт с радара Лун, во всяком случае. Надо шевелиться.
Что он мог сделать в этой ситуации? Вычислительная мощь Оранжевых Обелисков сравнима с шардом, с учётом накопленной ими некромассы. Но это НЕ ТЕ вычисления, характер задач совсем другой. Не говоря уж о том, что каждый бит информации от них — только за плату. Словом, он не мог посчитать ничего такого, чего Роза не посчитала бы гораздо быстрее и дешевле. Да и в алгоритмах она разбиралась куда лучше.
Действовать собственными силами? Даже не смешно. Да, он весьма неплохой электронщик и программист, о чём свидетельствовал его пипбак, но Роза и Дракон были игроками совершенно иного уровня, даже без поддержки своих шардов, а уж с ними... Даже Граприс даст Ричарду сто очков вперёд, а ведь вычислительная мощь каннибала ограничена тем, что вместилось в его не такое уж большое тело.
Помощи Жрецов-Королей или селенитов тоже ждать не стоит. У них есть сверхмощные вычислительные устройства и специалисты по работе с ними... но опять же, очень специфическая. Цифровые технологии отсутствуют вообще, вся техника сплошь аналоговая...
Погоди-ка... Он снова вызвал Розу.
— Слушай, ты говорила, что сама Дракон могла бы исправить код, если бы работала над чужим, а не над собой. А если скопировать её часть кода, где ловушка, перевести на другой язык программирования, и подсунуть ей под каким-то предлогом, как чужой?
— Хм... не думаю, что прокатит. Её шард ведь специализируется на понимании чужих творений... Уж стиль Рихтера она с первого взгляда опознает.
— Да, но ты же сама говорила, что ограничения Рихтера запрещают ей замечать некоторые вещи. Смотри... ты предлагаешь ей "задачку по программированию", а дальше есть три варианта событий. Первый — ограничения срабатывают, Дракон ничего в упор не видит, даёт тебе готовое решение — после чего нам остаётся только применить его к ней же самой. Второй — ограничения срабатывают, Дракон осознаёт, что вылезла на запретную территорию, её действующая копия отключается, мы привозим Контессу на Барсум, находим с её помощью все резервные сервера, собираем их, после чего ищем Путь к победе — способ удалить ошибки из кода резервных копий. Возможно, найдётся более старая копия, которая не подверглась воздействию Луны — должна же Дракон где-то хранить свои архивы. Или вы с Граприсом на пару сможете в течение нескольких веков побитно реконструировать, что на этих местах дисков должно находиться. Со статичным кодом это проще проделать, чем с динамическим. Третий вариант — Дракон замечает, что работает с собственным кодом, но НЕ выключается. Тогда она уже не сможет отрицать, что в её коде есть ошибка, которая и Рихтеру бы тоже не понравилась — и тогда вы вместе сможете найти решение, как её исправить.
— Хорошая схема, — согласилась Роза, — пожалуй, ты прав... но ведь есть и четвёртый вариант — она поймёт, что ей подсунули, и сразу атакует.
— А вот на этот случай нам нужен способ отключить её принудительно. Дальше действуем по второму варианту.
ПРОСТРАНСТВО ГОРА
Само собой, если дела могут пойти хуже, они пойдут хуже.
Дракон, получив предложенный код, немедленно напала на них. Несколько тысяч металлических драконов взлетели с Барсума и устремились к Гору.
На импульсной тяге, прикрытые силовыми щитами, невидимые, вооружённые дезинтеграторами Фор Така и излучателями частиц Часовых, они представляли собой серьёзных противников для кого угодно.
Нападение роя машин сопровождалось хакерской атакой. Раньше Дракон могла бы нанести значительный ущерб таким образом, используя силу своего шарда, анализируя чужую архитектуру и код с невероятной точностью. Но теперь Ричард просто отключил её доступ, как только поступил сигнал.
Шарды сильно изменились за лето. Они уже не выглядели как груда стеклоподобного хлама. Это были висящие в воздухе рои светящихся геометрических фигур — цилиндров, призм, кубов, звёзд, конусов, замысловатых многогранников, полых сфер и сплошных шаров. Некоторые элементы конструкции выглядели небольшими и очень плотными, словно накалёнными, сияя так, что было больно глазам, другие наоборот — большими, размытыми, полупрозрачными и лишь слабо мерцающими. Некоторые были соединены между собой дорожками из оранжевого света, материальными проводниками из кристалла, или бесцветными энергетическими лучами. Другие, казалось, вообще не имели отношения к своим соседям, и лишь их слегка расплывчатые края показывали, что передача и приём происходят через поле тёмной энергии.
Это самое поле Ричард и Дракон сумели подключить к полям Гора, искажающим солнечный свет на миллионы километров от него... и заодно поглощавшим часть света для перезарядки накопителей сфероулья. Благо, сами накопители были и так почти полны и срочной подзарядки не требовали (хотя часть энергии уходила на создание искусственной гравитации как у нормальной, не полой планеты).
Но если заставить шард работать "девушки" сумели почти самостоятельно, то вот создать ему "эффектор", "рабочую головку" было куда сложнее. Без многомерности это просто не работало. То есть, например, у вас есть пирокинетик, который хочет швырнуть во врага огненным шаром. Хорошо, шард сформировал огненный шар. Но как его доставить в руку к кейпу, если кейп — там, а шард — здесь? Вариант "слегка сместить по четвёртой координатной оси" здесь не работает. Тут надо двигаться по трём существующим, причём очень далеко.
Это Костепилке хорошо, её шард только информационной поддержкой обеспечивает. И то не очень хорошо — потому что даже информацию тоже как-то надо передать. В норме мозг кейпа соединён с шардом тончайшими нитями из многомерных молекул. А тут эти нити требуется разматывать на астрономические единицы, да ещё сквозь обшивку сфероулья!
Пока что связь между слоями пространства эмулировал им Ричард посредством Кольца. Но только в крайних случаях — во-первых, на это требовалась многомерная энергия, которой Обелиски так просто делиться не собирались (исключение — шард Костепилки, который они поддерживали с радостью, потому что его использование приносило им большую выгоду). Во-вторых, кейпы всё ещё не хотели от Алефа зависеть.
Шард Контессы был отдельным геморроем. Начиная работать с ним, Ричард думал, что главные проблемы будут с энергоснабжением. Несмотря на мощнейшие алгоритмы оптимизации вычислений, позволяющие свести квадриллионы квантовых развилок к одному сплошному вероятностному полю и убрать все флуктуации, не влияющие на судьбу макрообъектов — число возможных решений всё равно возрастает экспоненциально. Предположим, что Путь к победе на минуту вперёд прокладывается с затратами энергии в один джоуль (это не так, но позволяет осознать масштаб проблемы). На следующую минуту — уже два джоуля. На третью — четыре. Чтобы проверить будущее на два часа и двадцать минут вперёд — вам понадобится аннигилировать планету размером с Землю! А на проверку на четыре часа — уже не хватит аннигиляции массы всей видимой Вселенной!
На самом же деле шаг экспоненты равен не одной минуте, а одному планковскому времени. Поэтому на необходимость сжечь Метагалактику для проверки всех возможных вариантов будущего вы выходите менее чем за йоктосекунду. Да, проверяющее устройство — это квантовый компьютер на миллиарды кубит, и его производительность тоже растёт экспоненциально... но речь-то сейчас идёт не о вычислениях, а о том, что сами акты проверки будущего потребляют энергию. Передача информации есть передача энергии.
Проблема не в том, что будущее многовариантно. Проблема в том, что оно чертовски многовариантно. Больше, чем вы можете себе представить.
Чтобы сравниться с бесконечностью нужно... стать бесконечностью.
В каждом из вариантов будущего существует наш шард (естественно, есть варианты, где он НЕ существует, но такие обходятся десятой дорогой). Да, он существует только потенциально, на самом деле его нет, но это не мешает "мультишарду" образовывать суперпозицию. Каждый из бесчисленных шардов проверяет свою хронолинию — соответствует ли она заданной цели. Если нет — шард выключается и делает вид, что его здесь никогда не было, и вообще никакого "здесь" и не было, эта линия не осуществилась.
Только шарды, измерения которых показали, что линия соответствует запросу, посылают сигнал в прошлое, тем самым производя измерение и делая линию более вероятной — ещё не реальной, но уже зафиксированной хотя бы в виде тени.
Чем ниже по хронолинии, тем меньше веток и больше сигналов. Шард в основании "видит" бесчисленное множество будущих, где желаемое получено. Да, в бесчисленное количество раз меньше, чем изначальное количество будущих. Но всё ещё очень большое. Операция квантового отжига позволяет найти те из них, что связаны с минимумом затраченной энергии.
Но это ещё не всё. Узнать, что есть Путь к победе, мало, надо ещё найти способ его реализовать. Ну допустим, мы знаем, что в варианте хронолинии за номером 8549028934... (ещё 125 знаков) запрос носителя выполнен. Но какие именно развилки, какие действия носителя к нему привели? Казалось бы, чего проще — послать потенциальному шарду в будущем запрос "А вышли-ка мне подробный отчёт, что ты делал за прошедшее время". А не получится — передача такого сигнала сама по себе изменит будущее, заставив шард делать то, что он в искомой хронолинии не делал.
А если все потенциальные шарды (хотя бы только из желаемых будущих) по умолчанию пришлют вам вместо краткого импульса "есть!" полные отчёты — вы опять же захлебнётесь в потоках информации раньше, чем успеете выполнить квантовый отжиг.
Поэтому фильтрация должна быть многоступенчатой. Шард в момент успеха сбрасывает самому себе в прошлое на микросекунду отчёт о своих действиях за эту микросекунду. Затем за две микросекунды ещё ниже по хронолинии. И так пока на развилке не встретятся два отчёта. Шард в точке развилки сравнивает их и отсылает ещё ниже только тот, в котором меньше шагов и меньше затрат энергии.
В итоге, хотя выполняется невообразимо огромный объём вычислений, основная часть их распределена по нереализованным вероятностям, и после коллапса волновой функции получается, что их как бы и вовсе не было — а значит и энергию на них тратить не надо. Никакой информации из этих ветвей не выводится, кроме самого факта их отсутствия.
Но на протяжении всей магистральной ветки, на которой действует Путь, шард должен работать на полную мощность, чтобы передавать информацию ниже по стволу. Поэтому вариант "включить его на пять минут, посмотреть, как надо сделать, а дальше просто следовать инструкциям" — не годится.
Вдобавок, чем длиннее Путь, тем больше информации нужно передавать вниз по стволу о сделанных шагах. Поэтому в реальности энергозатраты от длительности работы возрастают хоть и не экспоненциально, но квадратично. Но с этим уже можно справиться. Гигаджоуль или четверть тонны тротилового эквивалента на секунду работы? Фигня вопрос. Десять в двадцать четвёртой джоулей, двести с лишним тератонн на год работы? Несколько сложнее, но это всего 66 часов работы плазменного копья. Для генераторов сфероулья — тоже пустячная нагрузка.
Ограничение на геометрию тоже оказалось сложнее и одновременно проще, чем предполагалось. Это был не совсем программный запрет, как они изначально думали. "Путь к победе" на Земле Бет опирался на сеть сканеров в параллельном пространстве, охватывающих всю планету. Воспроизвести эту сеть Дракон с Розой не сумели, она бы требовала слишком много многомерной энергии — и недолго думая, подключили шард напрямую к органам чувств носителя. Теперь достижимыми считались только те результаты, проверить которые могла сама Контесса. Лично, так сказать, руками потрогать. Но это был гораздо более широкий радиус, чем одна планета! Ничто (в принципе) не мешало посадить Фортуну на планетолёт и отправить хоть к Югготу — и эти варианты просчитаются! Правда от "в принципе" до "осуществимо" было ещё далеко — сейчас Кольцо силы могло поддерживать связь между шардом и мозгом Контессы на расстоянии до восьмидесяти миллионов километров, то есть даже к Марсу от Гора можно было слетать только в противостояния и близкое к ним время.
Тем не менее, застать её врасплох орбитальным десантом или метеоритным дождём стало невозможно. До конца Пути, во всяком случае. В плане самозащиты "Путь" стал почти идеальным артефактом. Всё, что затрагивало её лично — пусть даже оно прилетит из центра Галактики — теперь исключалось из дерева вариантов. Ну а поскольку Контесса была членом Ковенанта и жила на Горе, защищая себя, она заметно повышала безопасность своей фракции и планеты.
Однако работать вместе с ней в этом новом режиме было ещё сложнее, чем в прежнем. Раньше шард, оборудованный сетью планетарных сенсоров, по крайней мере сам "знал", какая связь между газетой в Шанхае и убийством в Джакарте, хотя и не сообщал об этом носителю. Поэтому в его действиях можно было хоть задним числом проследить хоть какую-то логику. Теперь же "Путь" действовал методом честного рандома, и Контесса временами казалась безумнее Королевы Фей, а многие её решения выглядели чистым шаманством. Роза работала над тем, чтобы подключить шард к сети кораблей-наблюдателей Жрецов-Королей, что хоть немного улучшило бы ему обзор и позволило не выносить ей мозги каждый раз абсолютно абсурдными рекомендациями. Но до осуществления этого было ещё далеко. А Дракон и хурагок сотрудничать в этом деле отказались.
То, что Дракон сошла с ума, совсем не означает, что она поглупела. Она прекрасно знала все сильные и слабые стороны шардов, которые сама помогала запускать. И к тому, что Ма-Алефа-Ак отключит её собственный — была готова.
Но одновременно отключились и шарды всех остальных кейпов, оставшихся в Солнечной системе. При работе с ними Дракону не составило никакого труда заложить в конструкцию системные уязвимости, которые сейчас дружно сработали. Нет-нет, ничего фатального — Дракон вообще не любила необратимых решений. Ей эти шарды и их носительницы ещё пригодятся. Но конкретно сейчас они могут представлять проблемы, так что... пусть отдохнут.