Лэнс Фотноу - Золотой билет
Рис. 9.3. Реклама IBM. Публикуется с разрешения IBM
Что же это за волшебный процесс, которым так хвалится журнал? К гуляшу и кубитам он прямого отношения не имеет, хотя квантовый бит действительно умеет исчезать из одного места и появляться в другом, прямо как в сказке. В рекламе речь идет об открытии, сделанном в 1993 году Чарльзом Беннетом и его коллегами по IBM, среди которых был и Жиль Брассард. Вместе с квантовой криптографией ученые подарили миру и квантовую телепортацию.
Допустим, у Артура есть кубит, который нужно переправить Гарриет. Как это сделать лучше всего?
Можно, конечно, послать заказное письмо; но если сотрудник почты вдруг решит проверить его содержимое, он выполнит над кубитом наблюдение, и от того останется лишь ноль или единица. Даже самая щадящая и бережная транспортировка не убережет кубит от воздействия внешней среды, и в итоге он почти наверняка погибнет по пути.
Рис. 9.4. Кубит
Альтернативный вариант – отправить Гарриет параметры кубита (-0,55 по «Истине» и 0,84 по «Лжи»), чтобы она могла воссоздать его у себя. Правда, эти параметры должны быть Артуру заранее известны: в противном случае получить он их никак не сможет, поскольку любое измерение разрушит квантовое состояние кубита.
Беннет с коллегами разработали метод, при помощи которого Артур сможет спокойно передать Гарриет свой кубит. Для этого лишь нужно будет выполнить некоторые предварительные действия, а именно – сцепить пару кубитов.
На рис. 9.5 кубиты с сердечками надлежащим образом запутаны. Один из них находится у Артура, другой – у Гарриет. Если Артур измерит состояние своего кубита, он с одинаковой вероятностью увидит либо ноль, либо единицу. Но если он увидит ноль, то и Гарриет увидит ноль, а если он увидит единицу, то и Гарриет тоже увидит единицу (прямо как с бейсбольными играми).
Рис. 9.5. Сцепленные кубиты
Все дело в том, что теперь у Артура не один кубит, а два. Один – с сердечком – сцеплен с кубитом Гарриет, другой – со звездочкой – он хочет отослать. Ранее мы уже говорили, что система из двух кубитов описывается четырехмерной сферой. Не нарушая квантовое состояние кубитов, Артур аккуратно крутит сферу относительно всех четырех осей, а затем измеряет оба кубита, в результате чего они превращаются в обычные биты со значениями ноль или единица.
Полученные биты Артур отсылает Гарриет. Один из них несет информацию о том, нужно ли Гарриет вращать кубит, другой – нужно ли его переворачивать. Гарриет выполняет необходимые действия, и… та-дам! Ее кубит приходит в то же состояние, в котором изначально находился кубит Артура. Ловкость рук – и никакого мошенничества! Верится с трудом, однако схема работает.
А что же стало с кубитами Артура? После измерения их квантовые состояния разрушились. По-другому и быть не могло – иначе у кубита Артура образовался бы клон, а это противоречит квантовым законам.
Пока Артур проводит квантовые манипуляции и измеряет состояния своих кубитов, с кубитом Гарриет не происходит ровно ничего, хотя он и сцеплен с кубитом Артура. Если бы Артур мог влиять на состояние кубита Гарриет, это означало бы, что он умеет передавать информацию мгновенно, быстрее скорости света, однако по законам физики это невозможно.
Кубит Гарриет является, по сути, двойником кубита Артура, только расположен он в пространстве немного по-другому. Благодаря двум полученным от Артура битам Гарриет сумеет привести его в искомое положение. Эти маленькие биты волшебным образом помогут ей воссоздать исходный кубит, хотя она так и не узнает, какие именно манипуляции проводил с кубитами Артур.
Рис. 9.6. Кубит
Вы спросите, как все это связано с гуляшом и с чудесными транспортерами из сериала «Звездный путь»? Давайте посмотрим, как можно организовать транспортер, выполняющий квантовую телепортацию. Допустим, я хочу телепортироваться из Чикаго в Токио и обращаюсь в специализированную компанию. Они создают запутанную квантовую систему из внушительного числа кубитов. Часть кубитов, соблюдая все возможные меры предосторожности, доставляют в Чикаго, остальные – в Токио. В Чикаго меня вместе с кубитами помещают в специальную камеру; описать мое состояние нужно очень точно, поэтому кубитов должно быть достаточно много. Нас вращают в многомерном пространстве, измеряют, и в результате мы все превращаемся в обычные нули и единички. Полученную кучу битов передают в токийский филиал, где с ними в такой же камере производят необходимые вращения. Потом камеру открывают, и я выхожу. Вот это да!
Использованные кубиты – отработанный материал. Если я решу вернуться, или нужно будет телепортировать кого-то еще, понадобится новая система запутанных кубитов. Кстати, с самолетами дело обстоит примерно так же: на обратном пути невозможно повторно воспользоваться израсходованным топливом.
Впрочем, это еще не самое страшное. Главная проблема – сохранить все зависимости между кубитами. Чтобы описать меня, требуется порядка миллиона миллиардов триллионов сцепленных кубитов: примерно столько атомов содержится в человеческом теле. И это еще довольно оптимистичная оценка, поскольку на деле кубитов, вероятно, понадобится намного больше. Ведь достаточно потерять каких-нибудь две-три связи (которые охотно разрушаются при малейшем взаимодействии с окружающей средой) – и из камеры вывалится порядком изуродованная, а то и вовсе неживая версия меня. Поэтому – только после вас. Я уж лучше по старинке, на самолете. Встретимся на месте!
Квантовое будущее
Ряд ученых полагают, что теорию вычислений пора переводить на квантовый уровень. Пусть кванты и не позволят нам решать NP-полные задачи, однако с их помощью можно будет эмулировать физические системы, а это значительно приблизит нас к пониманию сущности материи, космоса и даже человеческого мозга. Мир увидит такие научные открытия, которые сейчас не в состоянии даже вообразить!
Впрочем, некоторые, напротив, не видят в развитии квантовых алгоритмов и процессоров особого прогресса. По их мнению, с середины девяностых мы практически стоим на месте; маловероятно, чтобы квантовые компьютеры в обозримом будущем вошли в повседневную жизнь. Если не случится какого-нибудь глобального прорыва, квантовые вычисления еще долго будут оставаться предметом научной фантастики.
Что же может послужить очередным толчком в развитии вычислений? Какие еще грандиозные вычислительные задачи требуют нашего внимания? Читайте дальше – и вы все узнаете.
Глава 10. Будущее вычислений
Я уже смирился с тем, что проблему равенства P и NP ожидает довольно унылая перспектива. Думаю, классы все же не равны – правда, в этой жизни доказательства я уже не увижу. И, думаю, нам не придется жить в совершенном мире из второй главы, хотя полностью исключать такую возможность, конечно, нельзя. Вероятно, пройдет не один десяток (а может, и не одна сотня) лет, прежде чем тайна P и NP будет раскрыта.
«P против NP» – не просто хитрая математическая головоломка. Даже будучи неразгаданной, она дает нам некий каркас для размышлений и подсказывает способы борьбы с важнейшими вычислительными задачами. Приведем наиболее актуальные на сегодняшний момент проблемы.
• Параллельные вычисления. До недавних пор скорость процессоров удваивалась каждые полтора-два года. Современные процессоры работают практически на пределе физических возможностей, и существенно ускорить их уже не получится. Производительность повышают за счет разветвления, когда на одном кристалле или в облаке согласованно работают сразу несколько процессоров. Наш мир распараллеливается все больше и больше; как адаптировать к этому вычислительные алгоритмы?
• Большие данные. Каждый день в мире появляются тонны новых данных. Взять хотя бы интернет или многочисленные научные эксперименты… Как работать с такими огромными объемами информации? Как искать, структурировать, анализировать, делать прогнозы?
• Интернет вещей. Почти каждый современный человек пользуется компьютерными сетями – к примеру, общаясь на Facebook или отправляя письмо по электронной почте. Дело идет к тому, что скоро все произведенные человеком предметы, будь то одежда или лампочки для чтения, тоже станут частью сети. Как ориентироваться в мире с таким количеством связей?
Независимо от того, равны классы P и NP или не равны, изучение проблемы P и NP поможет выработать подход к решению данных вопросов.
Параллельные вычисления
В 1965 году Гордон Мур заметил, что число базовых элементов микросхемы – транзисторов – стремительно возрастает с каждым годом. Мур выдвинул смелое предположение: в последующее десятилетие количество транзисторов на одном кристалле каждые два года будет увеличиваться вдвое. Десятью годами дело в результате не ограничилось; закон Мура – так окрестили правило – действует и по сей день, и в ближайшие годы тенденция, похоже, сохранится.