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