Запрещает ли размерность пространства состояний квантовые компьютеры?
В свежей, полезной статье про «маркетинг» квантовых компьютеров (и хайп вокруг них) упомянута публикация профессора Дьяконова, где рассматривается интересный аргумент против возможности квантовых вычислений на кубитах, а именно — аргумент «недостижимого количества состояний»:
«Таким образом, число непрерывных переменных, описывающих состояние компьютера в каждый данный момент должно оцениваться числом, по меньшей мере, 2^1000 (~10^300), которое много, много больше числа частиц во Вселенной (их, всего лишь, порядка 10^80)!»
Это весьма интересный момент. Работает ли квантовая механика для
Вообще, математическая основа квантовых вычислений довольно простая и сугубо арифметическая: она состоит в том, что можно складывать вероятности различных конфигураций так, что некоторые значения сокращаются. Всё. Это позволяет построить процесс эволюции системы так, чтобы вероятности бесполезных исходов сокращались и уменьшались, а вероятности полезных — увеличивались. Точно так и работает алгоритм Шора: вы настраиваете свою систему таким образом, чтобы максимизировать вероятность измерения величины, прямо соответствующей периоду исследуемой функции (умножения по модулю из открытого ключа RSA, например). Другое дело, что сама система для алгоритма Шора выглядит мистической.
Эти (комплексные) вероятности, чтобы ими манипулировать, вкладываются в огромное пространство состояний системы, например, той самой «недостижимой» «размерности
Понятно, что вычислительные модели квантовой механики очень успешны на практике, в экспериментах. Так что базовые вычисления точно работают, тем более, что и сложные белковые молекулы как‑то успешно складываются за малые доли секунды. Но является ли огромная мощность пространства состояний, в котором преобразуются вероятности, — препятствием для реализации квантовых компьютеров?
Не так давно профессор Бернштейн опубликовал интересную статью с критическим разбором некоторых аргументов о том, что квантовые компьютеры не будут работать. (Бернштейн — djb — весьма известный специалист в области математических основ криптографии, наверняка знаком читателям «Хабра»; вполне вероятно, что ваш браузер при загрузке этой веб‑страницы использовал для обмена ключами TLS криптосистему X25519, которая работает на кривой, разработанной и впервые реализованной Бернштейном.) В статье Бернштейна разбираются типовые возражения, относящиеся к самой возможности квантовых вычислений. Естественно, там рассматривается и аргумент про большое количество состояний/переменных. Бернштейн логично отмечает, что само по себе большое количество возможных состояний не является препятствием, как минимум, для классических вычислений. Это подтверждено практикой. А именно — всякий современный ноутбук может сгенерировать псевдослучайное число разрядностью в тысячу бит так, чтобы вероятности получения разных значений различались. Для этого не требуется загрузить в память все
«Я не утверждаю, что вычисление на кубитах это то же самое, что и вычисление на случайных битах. Если посмотреть детально, то можно увидеть, что квантовое вычисление позволяет провести дополнительный полезный трюк, задав схемы интерференции между положительными и отрицательными переменными. Однако аргумент, говорящий, что „квантовые вычисления невозможны, так как там настолько много переменных“, не может быть верным, поскольку этот же аргумент говорит, что ваш ноутбук невозможен».
Действительно, если нужно управлять тысячей битов, то необязательно реализовывать такое управление через «гиперпамять» из
Реализация квантового алгоритма на квантовом устройстве может быть всегда успешно приведена к пошаговому варианту, оставаясь, при этом, в рамках арифметики комплексных вероятностей и в предлагаемой физической модели. Это, например, прямо следует из самой возможности рассуждений про алгоритмы коррекции ошибок: не важно, сработают эти алгоритмы или нет на реальных устройствах (скорее — нет, не сработают), но рассуждать‑то и моделировать их в системах компьютерной алгебры получается.
Конечно, это всё абстрактные концепции, но компьютерные расчёты оперируют теми же пространствами размера
Однако исходное рассуждение про барьер, связанный с количеством переменных, можно усилить. Состояния системы, между которыми происходит интерференция, должны «где‑то размещаться». Тогда для них и не хватило бы места. То есть, минимальные наборы, которые уже сейчас наблюдаются в экспериментах, вполне влезают на какой‑то недоступный для понимания носитель. А 1000 — не влезет. Такое требование не является обязательным: интерпретации квантовой механики позволяют встать на точку зрения, что если никто не слышит, как в лесу падает дерево, то дерево просто не падает — симуляция прорисовывает уже упавшее дерево, когда до него добрался наблюдатель с нужными характеристиками области видимости. Это, впрочем, заведомо усечённый подход. Но и он не исключает представления о некоторой «над‑реальности»: в которой эволюционируют и пересекаются соответствующие потоки вероятностей, а в привычном мире наблюдается только «срез» этой «над‑реальности», выхваченный представлением экспериментатора.
Такая концепция не запрещает квантовые вычисления, но и не гарантирует, что их удастся реализовать на некотором физическом устройстве. И тут есть ещё один важный аспект, касающийся преобразований тысячи бит внутри компьютера: в таком компьютере разные состояния битовой строки возникают после того, как произошло их алгоритмическое преобразование, а вот в случае квантового компьютера — полезное преобразование выполняется строго после возникновения набора нужных состояний (пример: шаг записи значений в регистры реализации алгоритма Шора, особенно, если предполагается приблизительное вычисление периода функции, что требуется для эффективного применения «шумящих» кубитов). Другое дело, что эти состояния никто не видит и их можно отбросить.