Квантовая коррекция ошибок является фундаментальным аспектом квантовых вычислений, без которого крупномасштабные квантовые вычисления практически невозможны.
Один аспект отказоустойчивых квантовых вычислений, который часто упоминается, заключается в том, что каждый протокол исправления ошибок имеет пороговое значение частоты ошибок . По сути, для того, чтобы данное вычисление было защищено от ошибок по заданному протоколу, частота ошибок шлюзов должна быть ниже определенного порога.
Другими словами, если частоты ошибок одиночных затворов недостаточно низки, то невозможно применять протоколы исправления ошибок, чтобы сделать вычисления более надежными.
Почему это? Почему невозможно снизить частоту появления ошибок, которая еще не очень низкая?
Ответы:
Мы хотим , чтобы сравнить состояние выхода с некоторым идеальным состоянием, так как обычно, верность,F(|ψ⟩,ρ) используется как это хороший способ сказать , насколько хорошо возможные результаты измерений ρ сравнить с возможными результатами измерений |ψ⟩ , где |ψ⟩ является идеальным выходным состоянием и ρ это достигается (потенциально смешанное) состояние после некоторого процесса шума. Как мы сравнения состояний, это
Описывая как процессы коррекции шума и ошибок с помощью операторов Крауса, где является шум канал с операторами Kraus Н я и Е является исправление ошибок канала с Kraus операторов Х J , состояние после того, как шум ρ ' = Н ( | г | ⟩ ⟨ ψ | ) = ∑ i N i | г | ⟩ ⟨ г | | N † i и состояние после исправления шума и ошибок ρ = E ∘N Ni E Ej
Верность этого задается
Чтобы протокол исправления ошибок был полезен, мы хотим, чтобы точность после исправления ошибок была больше, чем точность после шума, но до исправления ошибок, чтобы состояние с исправленными ошибками было менее отличимым от не исправленного состояния. То есть, мы хотим , чтобы Это дает √
Расщепление в корректируемой части, Н с , для которых Е ∘ Н с ( | г | ⟩ ⟨ г | | ) = | г | ⟩ ⟨ г | | и не-корректируемой части, Н н с , для которых Е ∘ Н п с ( | г | ⟩ ⟨ г | | ) = σ . Обозначая вероятность исправляемой ошибки как P cN Nc E∘Nc(|ψ⟩⟨ψ|)=|ψ⟩⟨ψ| Nnc E∘Nnc(|ψ⟩⟨ψ|)=σ Pc и не поддающийся исправлению (то есть слишком много ошибок произошло, чтобы восстановить идеальное состояние), поскольку дает ∑ i , j | ⟨ Г | | E j N i | г | ⟩ | 2 = Р с + Р п с ⟨ г | | σ | г | ⟩ ≥ P с , где равенство будет предполагаться, предположив ⟨ ф | σ | г | ⟩ = 0Pnc
Для кубитов с (равной) вероятностью ошибки на каждом кубите как p ( примечание : это не то же самое, что параметр шума, который должен использоваться для вычисления вероятности ошибки), вероятность наличия Исправляемая ошибка (при условии, что n кубитов были использованы для кодирования k кубитов, с учетом ошибок вплоть до t кубитов, определенных синглтоновой границей n - k ≥ 4 t ), равна P cN п N К T n - k ≥ 4 т
Редактировать из комментариев:
Это показывает, в грубом приближении, что исправления ошибок или простого уменьшения частоты ошибок недостаточно для отказоустойчивого вычисления , если только ошибки не являются чрезвычайно низкими, в зависимости от глубины цепи.
источник
Уже есть хороший математический ответ, поэтому я постараюсь дать простой для понимания.
Квантовая коррекция ошибок (QEC) представляет собой (группу) довольно сложный алгоритм (ы), который требует много действий (ворот) на кубитах и между ними. В QEC вы в значительной степени соединяете два кубита с третьим вспомогательным кубитом (вспомогательным) и переносите информацию, если два других равны (в некотором конкретном отношении) в этот третий кубит. Затем вы читаете эту информацию из ancialla. Если он говорит вам, что они не равны, вы действуете на эту информацию (применить исправление). Так как же это может пойти не так, если наши кубиты и врата не идеальны?
QEC может разрушить информацию, хранящуюся в ваших кубитах. Каждый из этих ворот может разрушить информацию, хранящуюся в них, если они не выполнены идеально. Поэтому, если выполнение QEC уничтожает больше информации, чем восстанавливается в среднем, это бесполезно.
Вы думаете, что нашли ошибку, но не нашли. Если сравнение (выполнение логических схем) или считывание информации (вспомогательное) несовершенно, вы можете получить неверную информацию и, таким образом, применить «неправильные исправления» (читай: вводить ошибки). Кроме того, если информация в подсобных помещениях затухает (или изменяется шумом) до того, как вы сможете ее прочитать, вы также получите неправильное считывание.
Цель каждого QEC, очевидно, состоит в том, чтобы вносить меньше ошибок, чем исправляет, поэтому вам нужно минимизировать вышеупомянутые эффекты. Если вы выполните всю математику, вы найдете довольно строгие требования к своим кубитам, логическим элементам и показаниям (в зависимости от выбранного вами алгоритма QEC).
источник
Классическая версия
Квантовая версия
источник
Мне кажется, что есть две части этого вопроса (еще одна связана с названием, другая связана с самим вопросом):
1) На какой уровень шума эффективны коды с исправлением ошибок?
2) С какой степенью несовершенства ворот мы можем реализовать отказоустойчивые квантовые вычисления?
Позвольте мне подчеркнуть это различие: коды квантовой коррекции ошибок могут использоваться во многих различных сценариях, например, для коррекции потерь в передачах. Здесь количество шума в основном зависит от длины оптического волокна, а не от несовершенства ворот. Однако, если мы хотим реализовать отказоустойчивые квантовые вычисления, ворота являются основным источником шума.
На 1)
На 2)
Мы хотим выполнить сколь угодно длинные квантовые вычисления с помощью квантового компьютера. Однако квантовые ворота не идеальны. Для того, чтобы справиться с ошибками, внесенными затворами, мы используем коды квантовой коррекции ошибок. Это означает, что один логический кубит кодируется во множество физических кубитов. Эта избыточность позволяет исправить определенное количество ошибок на физических кубитах, так что информация, хранящаяся в логическом кубите, остается нетронутой. Большие коды позволяют более длинные вычисления, чтобы быть точным . Тем не менее, большие коды включают в себя больше ворот (например, больше измерений синдрома), и эти ворота вводят шум. Вы видите, что здесь есть некоторый компромисс, и какой код является оптимальным, не очевидно.
Если шум, создаваемый каждым затвором, ниже некоторого порогового значения (порога отказоустойчивости или точности), то можно увеличить размер кода, чтобы учесть произвольно длинные вычисления. Этот порог зависит от кода, с которого мы начали (обычно он итеративно сцепляется с самим собой). Есть несколько способов оценить это значение. Часто это делается с помощью численного моделирования: вводить случайные ошибки и проверять, все ли еще работает расчет. Этот метод обычно дает пороговые значения, которые являются слишком высокими. Есть также некоторые аналитические доказательства в литературе, например, это Алиферис и Кросс .
источник
Вам нужно удивительно большое количество квантовых вентилей для реализации кода, исправляющего квантовые ошибки, отказоустойчивым способом. Одна из причин заключается в том, что существует много ошибок, которые необходимо обнаружить, поскольку для кода, который может исправить все ошибки одного кубита, уже требуется 5 кубитов, и каждая ошибка может быть трех видов (соответствующих непреднамеренным элементам X, Y, Z). Следовательно, даже для того, чтобы просто исправить любую ошибку в одном кубите, вам уже нужна логика, чтобы различать эти 15 ошибок плюс ситуацию без ошибок:Иксяяяя , Yяяяя , Zяяяя , яИксяяя , яYяяя , яZяяя , яяИксяя , яяYяя , яяZяя , яяяИкся , яяяYя , яяяZя , яяяяИкс , яяяяY , яяяяZ , яяяяя где Икс , Y , Z возможные ошибки одного кубита и я (идентичность) обозначает ситуацию без ошибок для этого кубита.
Основная причина, однако, заключается в том, что вы не можете использовать прямую схему обнаружения ошибок: каждый CNOT (или каждый другой нетривиальный 2 или более кубитный шлюз) пересылает ошибки в одном кубите в другой кубит, что было бы катастрофическим для самого тривиального случай одиночного кода с исправлением ошибок кубита и все еще очень плохо для более сложных кодов. Следовательно, отказоустойчивая (полезная) реализация требует даже больше усилий, чем можно наивно думать.
При наличии множества шлюзов на шаг исправления ошибок вы можете разрешить только очень низкую частоту ошибок на шаг. Здесь возникает еще одна проблема: поскольку у вас могут быть когерентные ошибки, вы должны быть готовы к худшему случаю, когда ошибкаε размножается не так Nε после N однобитовых ворот, но как N2ε , Это значение должно оставаться достаточно низким, чтобы вы в целом получили выигрыш после исправления некоторых (но не всех) ошибок, например, только ошибок одного кубита.
Примером когерентной ошибки является реализация логического элементаграмм что, на первый взгляд, не просто грамм но G + ϵ√Икс который вы могли бы назвать ошибкой ε потому что это вероятность, соответствующая амплитуде вероятности ε√ и, следовательно, вероятность того, что измерение сразу после гейта покажет, что оно действовало как ошибка Икс , ПослеN приложения этих ворот, опять же в первом порядке, вы фактически применили граммN+ Nε√граммNИкс (если G и X коммутируют, в противном случае более сложная конструкция, которая имеет N отдельные условия, пропорциональные ε√ ). Следовательно, при измерении вы найдете вероятность ошибкиN2ε ,
Некогерентные ошибки более доброкачественные. И все же, если в качестве порога ошибки нужно указать одно значение, нельзя допускать, чтобы он допускал только доброкачественные ошибки!
источник