Равна долго сидела в уютной теплой темноте, размышляя над полученными результатами. Она слишком далеко загнала экстраполяцию. Попытки «Внеполосного-II» выжать крупицы смысла из почти случайного шума не могли принести пользы, но ведь те или иные слова программы подставляли не просто так, на то должны быть какие-то причины. Она поняла, что обречена теперь снова и снова возвращаться к проклятой сценке, пытаясь отделить программные баги, вызванные недопустимо низким соотношением сигнала и шума, от скрытых откровений. Раз так, то, пожалуй, стоило бы начать с неоспоримо подтвержденных фактов. Например, ей достоверно известно, что Джефри не предатель.
Равна вернулась к данным, но теперь не смотрела на подложное видео, а обратилась к файлам журнала шпионской программы. Как она и предположила, условия передачи сигнала варьировались от скверных до отвратительных. Но это ничего не означало: такое уже бывало в прошлом, и неизменно она получала осмысленные сведения. Она закрыла сетевые сводки и перешла к анализам самой программы. Вероятностные деревья представляли доступные в каждый момент опции и выводы, а также соотносили их друг с другом. Резкое и четкое видео, показанное Равне, родилось именно здесь, в дебрях косвенных интерпретаций и догадок. Корабль выдавал ей лишь наиболее достоверный, с его точки зрения, вариант. К примеру, Амди почти наверняка упомянул, что кто-то несет ответственность за возникновение Группы Изучения Катастрофы. Она отыскала этот узел дерева анализа и развернула его – возникли отчеты о принятых решениях и вероятностные веса, приписанные каждой ветви. Да. Шкуродера подставили на место названного Амди лица только потому, что это согласовывалось с контекстом беседы и какими-то жестами или позами элементов Амди. Сходным образом Амди сказал, что кто-то предал что-то или кого-то, а программы выбрали совершенно определенное слово из длинного перечня подходящих. Но как Джефри вообще в него попал, не говоря уж о том, чтобы всплыть на верхушку списка? Какой логикой руководствовалась система, вставляя его туда? Равна углублялась в недра программного кода, забираясь в места, которых раньше вообще не видела. Как и следовало ожидать, трудность поиска точных ответов на вопрос, почему выбрано это, а не то, возрастала взрывоподобно. Она могла веками ковыряться тут и ничего конкретного не добиться.
Равна откинулась на спинку кресла, вертя головой туда-сюда и стараясь расслабить занывшую от неподвижности шею. «Что же я упустила?» Программа могла, в конце концов, просто испортиться. Предназначенная для чрезвычайных ситуаций автоматика «Внеполосного-II» разрабатывалась с учетом условий Медленной Зоны, однако шпионская программа содержала фрагменты запредельно хитрого кода и в перечне допустимых к использованию Внизу не значилась. Просто повезло, что она еще работает тут, Внизу.
Но если неполадки достаточно серьезны, разве не посыпались бы предупреждения? Равна лениво перелистывала отчеты об ошибках. Сообщения первоочередной важности в точности отвечали ее предположениям: «ведется обработка ненадежных данных» и все такое. Она прокрутила сводки дальше, к ошибкам, которые корабль расценивал как менее существенные. И тут никаких сюрпризов; правда, на сегодняшнем сеансе их оказались буквально миллиарды. Она испытала несколько разнородных способов сортировки и убила некоторое количество бесценного времени, роясь в кажущихся бессмысленными результатах… И вдруг у нее волосы встали дыбом. Вот оно, чудовище в засаде.
Равна застыла в кресле, глядя на экран.
442741542471.74351920 Сообщение только для справочных нужд; общее кол-во сенсоров Шкуродера: 140269471.
442741542481.74351935 Сообщение только для справочных нужд; общее кол-во сенсоров Шкуродера: 140269369.
442741542491.74354327 Сообщение только для справочных нужд; общее кол-во сенсоров Шкуродера: 140269373.
442741542501.75439121 Сообщение только для справочных нужд; общее кол-во сенсоров Шкуродера: 140269313.
442741542511.75439144 Сообщение только для справочных нужд; общее кол-во сенсоров Шкуродера: 140269265.
442741542521.74351947 Сообщение только для справочных нужд; общее кол-во сенсоров Шкуродера: 140269215.
…29980242 строки пропущены.
– Объясни! – Собственный голос показался ей незнакомым. Тут же всплыло вспомогательное окно со сводками по соответствующим полям и колонкам, данными детального подсчета количества сенсоров на каждом элементе Шкуродера-Тиратект и необходимыми ссылками на исходники.
В общем-то, детальные сводки только подтверждали то, о чем она и так уже догадалась. Во всей стае Шкуродера осталось меньше ста пятидесяти миллионов сенсоров! При заражении же их насчитывалось несколько триллионов, и то этого едва хватило. Если с тех пор популяция сенсоров упала до ста миллионов с лишним… то весь ее хваленый шпионаж оказывался не более чем клоунадой самообмана! Как давно это началось? Равна вызвала программу-графопостроитель и запросила три наилучших приближения зависимости падающего числа сенсоров от времени. Разумеется, результаты различались, но первая зависимость почти точно аппроксимировала данные: из нее следовало, что сенсоры выдыхаются с первого дня внедрения, уже почти десять лет. Период полураспада крохотных шпионов составлял менее года, в то время как в Запределье аналогичное заражение продержалось бы около столетия! А теперь программа обработки просто не сумела в очередной раз извернуться и утаить от Равны истинное положение вещей; липа дала о себе знать. Вот почему эти устройства не попали в перечень допустимых к использованию. Ее хитроумие обернулось против нее же и больно щелкнуло по носу.
Равна скорчилась в кресле, полная жалости и презрения к себе. Эта ночь показалась ей микрокосмом всей жизни за последние несколько десятидневок. «Но, пересмотрев старые записи со знанием того, какая это все липа, я, может быть, очерчу новые границы моего доверия Шкуродеру?» Она утерла слезы с глаз, проморгалась и некоторое время созерцала неумолимую сглаженную кривую распада сенсоров, сверкавшую в воздухе перед ее лицом. Уже годы прошли с тех пор, как шпионская система насчитывала хотя бы жалкий триллион сенсоров… И все эти годы предупреждения об отказе системы накапливались на незримых низкоприоритетных уровнях! А высокоуровневый интерфейс досмотровой программы скармливал Равне… – Ну же, смей это признать! – выдумки. Она бы никогда этого не заметила, но подлинные опасности так умножились в числе, что безмозглое программное обеспечение дало сбой и попыталось всучить ей вопиющую ложь.
«Если же признать все данные за прошлые годы вымыслом, то я должна известить об этом Древорезчицу». И тем самым разрушить остатки доверия, какое королевы еще испытывали друг к другу.
На некоторое время Равна утратила способность здраво соображать и отдалась мрачному самокопанию. «Случалось ли мне уже допускать такие кошмарные просчеты?..» Наверное, нет. «Выпадали когда-то у меня деньки хуже?» Конечно: Битва на Холме Звездолета была страшнее, а потеряв Фама всего через несколько часов после победы, Равна испытала горечь, которая не шла ни в какое сравнение с нынешней. Но такой безнадеги не бывало с того дня, когда до Равны дошла весть о том, что ее родная планета, Сьяндра Кей, уничтожена вместе со всеми обитателями.