Недавно Quantinuum опубликовали интересную статью на arXiv под названием “Демонстрация байесовской квантовой оценки фазы с квантовым обнаружением ошибок”, в которой описывается симуляция для расчета энергии основного состояния молекулы водорода (H2) с использованием алгоритма квантовой оценки фазы. Несмотря на то, что симуляция молекулы H2 была проведена ранее, уникальной чертой этого проекта является включение обнаружения ошибок в состав алгоритма. В этом исследовании использовался код [6, 4, 2], что означает, что 6 физических кубитов использовались для кодирования 4 логических кубитов с расстоянием кода 2. Расстояние кода 2 указывает на количество бит, которые нужно изменить, чтобы преобразовать одно допустимое кодовое слово в другое допустимое кодовое слово. Когда расстояние составляет 2, это означает, что код может обнаруживать, но не исправлять одиночную ошибку бита, и, возможно, даже не способен обнаружить двойные ошибки битов. Предполагая, что одиночные ошибки битов наиболее часты, этот алгоритм можно использовать для получения правильного ответа, повторно запуская алгоритм до тех пор, пока код не указывает на отсутствие ошибок. Это исследование не связано с ранее опубликованным экспериментом Quantinuum по созданию и манипулированию нэйбеловых анионов для создания топологических кубитов. Эти два эксперимента абсолютно различны.

Хотя популярная пресса не всегда полностью понимает эту разницу, между обнаружением ошибок и их исправлением существует значительное различие. Большинство кодов, над которыми работают исследователи, такие как поверхностный код (surface code), цветовой код (color code), GKP код (Gottesman-Kitaev-Preskill code), LDPC код (low-density parity-check code) и другие, не только обнаруживают ошибки, но и исправляют их. Именно такие типы кодов являются единственным путем к полностью устойчивой к ошибкам машине, способной выполнять алгоритмы с тысячами кубитов и миллионами гейтов, что потребуется для большинства квантовых приложений. Даже с превосходным качеством кубитов в машинах на ионных ловушках от Quantinuum, вероятность достижения нулевых ошибок при выполнении этих очень больших алгоритмов близка к нулю. Поэтому алгоритм обнаружения ошибок должен быть запущен миллионы или миллиарды раз, прежде чем наконец даст результат без ошибок, если это вообще возможно. Коды для исправления ошибок не имеют такой проблемы, потому что они исправляют ошибки по мере их возникновения и продолжают выполнение остальной части алгоритма.

Тем не менее, такой подход обнаружения ошибок может быть полезен в будущем, особенно для алгоритмов с небольшой глубиной, где вероятность выполнения без ошибок разумна. Дополнительную информацию об этом исследовании можно найти в предварительно опубликованной статье на arXiv по следующей ссылке.

Leave a Reply

Trending

%d bloggers like this: