Пару месяцев назад я решил записать короткий ролик на тему «Чем квантовая физика отличается от квантовой механики». Казалось бы, что проще? Но тут один из комментаторов на YouTube, человек с явно острым умом и, возможно, с утра не допивший кофе, вдруг резко возмутился: «А где же квантовая информатика?» — написал он. Я даже скрин сделал, чтобы передать дословно его негодование.
В общем, решил я разобраться – что же это за зверь такой, квантовая информатика? Чем она питается и какие перспективы открывает для человечества? Ведь иногда кажется, что слово «квантовый» в нашей жизни звучит чаще, чем слово «свобода», а понять его смысл — задача уровня олимпийских игр по шахматам.
Начнем с определения – звучит скучновато, но без этого никак.
Квантовая информатика – это такая область науки, которая изучает применение принципов квантовой механики для обработки информации. Если классическая информатика работает с битами — этими маленькими двоичными солдатами 0 и 1 — то квантовая информатика пользуется кубитами. Представьте бит как обычную лампочку: либо горит (1), либо нет (0). А кубит – это лампочка с волшебным диммером и эффектом суперпозиции.
Он может быть одновременно и включён и выключен! Почти как мой холодильник утром: вроде работает и вроде нет.
Если вы читаете эти строки, то наверняка слышали про квантовые компьютеры – эти загадочные машины из будущего. Так вот квантовая информатика занимается именно тем, как они работают. Одним из главных её принципов является квантовый параллелизм: представьте себе толпу людей на вокзале, которые одновременно решают одну задачу!
Это позволяет значительно ускорить решение некоторых задач – например факторизацию больших чисел (без которой не было бы современной криптографии), оптимизацию или даже машинное обучение.
Но давайте погрузимся в основы. В классической механике информация хранится в битах – минимальных единицах информации со значением 0 или 1. Это простая история: да или нет, включено или выключено. Все понятно и прозрачно… до тех пор пока на сцену не выходит кубит!
Кубит может быть в состоянии |0⟩ или |1⟩ — но главное чудо в том, что он может находиться в суперпозиции этих состояний одновременно! Это как если бы ваш кот мог быть одновременно дома и на улице… Нет-нет, он так делает постоянно!
Кроме того, кубиты могут запутываться друг с другом — буквально запутываться! Это явление называется запутанностью (entanglement).
Представьте двух близнецов-близнецов-близнецов-… ну вы поняли — настолько тесно связаны их судьбы и состояния, что описать одного без другого просто невозможно. Именно эта запутанность лежит в основе многих удивительных возможностей квантовых вычислений.
Основные принципы суперпозиции и запутанности позволяют создавать алгоритмы нового поколения — такие мощные штуки способны обрабатывать информацию эффективнее классических алгоритмов. Например, факторизация больших чисел или поиск нужной информации в огромных базах данных происходит гораздо быстрее.
Внутри этих волшебных машин используются так называемые квантовые ворота (или элементы Клиффорда) — операции над кубитами аналогичные логическим вентилям классических компьютеров.
Они меняют состояние кубитов: превращают |0⟩ в |1⟩ или создают суперпозицию состояний.