-
Итак, хорошая новость в том,
что с такого рода
-
кодом коррекции ошибок
-
я могу применить так называемые
логические операции.
-
То есть я могу
-
преобразовать информацию, я могу применить
вентили
-
непосредственно к логическим кубитам.
-
Мне не нужно возвращаться
-
к расшифрованному состоянию, чтобы применить
вентили, я могу применить
-
вентили ко всем физическим кубитам,
-
зашифровывающим информацию, чтобы операция
была равнозначна
-
унитарному вентилю на логическом кубите.
-
Например, обратите внимание, что если
у нас есть
-
вот этот код для состояния «0» здесь,
-
в девятикубитовом коде Шора,
-
и если я применяю Z ко всем кубитам
одновременно,
-
тогда вот здесь будут изменения, вот здесь
применится фаза «-1», «-1», «-1»,
-
это поменяется на «-»,
-
это поменяется на «-»,
-
это поменяется на «-».
-
Итак, теперь у меня получилось это
состояние.
-
Применив Z, операцию Z,
-
вентиль Z ко всем этим кубитам одновременно,
-
я выполнил операцию, которая
на логическом уровне
-
совершенно равнозначна вентилю Х.
-
И можете проверить,
-
что, это
-
упражнение для вас если
вы примените вентиль Х
-
ко всем кубитам одновременно,
-
то на логическом уровне вы примените
вентиль Z.
-
Этот способ позволяет совершать
-
данные операции без необходимости
-
возвращаться к декодированному состоянию,
-
просто сделав это в логической схеме.
Я получил
-
комментарий…
-
«Схема стала более сложной, ошибки могут
появиться в любом месте.
-
Где нужно применить
-
коррекцию ошибок, и есть ли какая-то общая
стратегия для этого».
-
Да, я только что ответил на это.
-
Нужно применять вентили
без корректировки, без
-
кодирования и декодирования каждый раз.
Да, это и есть ответ.
-
Проблема с этими операциями,
-
которые называются операциями обхода,
-
потому что мы применяем вентили
ко всем кубитам одновременно,
-
в том, что есть ограничение на количество
операций,
-
которые можно таким образом
совершить.
-
И есть теорема, которая называется теоремой
Истена–Нила (Eastin–Knill),
-
которая утверждает, что в любом квантовом
коде коррекции ошибок
-
с применением логических кубитов
-
невозможно применить все логические
вентили, или все операции,
-
которые необходимы для общего вычисления,
как вентили обхода.
-
Нужнее по крайней мере один вентиль
для выполнения общего вычисления,
-
который не может быть сделан в обход.
-
Далее вам нужно применить другие приёмы,
-
например, Шор
-
также предложил очень сложный способ, ну,
или ещё более сложный способ, например,
-
с вентилем Тоффоли
-
в этом девятикубитном алгоритме,
-
устойчивом к ошибкам, так, чтобы ошибки
не переходили
-
из одного блока в другой.
-
Но есть также другие методы, например,
телепортация вентиля.
-
Если помните, то, по-моему,
во второй лекции
-
я рассказывал об использовании
телепортации вентилей
-
для применения логических вентилей
-
в кодах коррекции ошибок.
-
Я не буду углубляться в подробности,
потому что
-
они немного сложнее.
-
Но если вы хотите ознакомиться
с этой темой,
-
я могу дать некоторые рекомендации,
-
эта тема
-
не намного сложнее, чем те, которые
мы изучали ранее.
-
Но есть другие методы, которые нужно
использовать для
-
реализации этих логических операций.
-
Так называемая дистилляция
магического состояния.
-
В общем, несколько разных методов,
которыми вы можете пользоваться.
-
Всё, что мы хотим – это
-
отказоустойчивые квантовые вычисления.
-
Я расскажу об этом через минуту.
-
Итак, мы изучили этот девятикубитный
алгоритм,
-
мы видим, что
-
можем защитить информацию
от любого типа ошибок,
-
мы можем применить логические вентили,
-
это всё очень хорошо, но кажется
немного частный случай.
-
Я имею в виду, что, хорошо, мы рассуждали
об этих алгоритмах,
-
и Питер Шор предложил такую идею,
-
но существует ли какой-то другой код,
-
какой-то более системный подход к изучению
этого, могут ли быть
-
алгоритмы с другими свойствами?
-
Существует
-
много работ на эту тему. Они очень красивы
-
с математической точки зрения,
и также очень любопытны.
-
Они имеют дело,
-
конечно, с классической теорией
коррекции ошибок.
-
Но так же и с теорией групп, например.
-
Я не буду рассказывать об этом подробно,
потому что, думаю, эта тема требует
-
более высокого уровня подготовки,
-
чем мы указали в требованиях к участию
в данном курсе,
-
выше, чем уровень линейной алгебры.
-
Но я хотел бы по крайней мере сформировать
представление
-
о том, что вы можете сделать,
чтобы изучить больше
-
универсальных квантовых алгоритмов.
-
Идея заключается в использовании
-
формализма,
-
так называемого стабилизационного
формализма,
-
имеющего дело с такими операциями,
которые не изменяют
-
состояние, используемое для кодирования
логических кубитов.
-
То есть, например если вспомнить об
-
алгоритме коррекции ошибок
типа инверсии кубита,
-
помните, что мы кодировали «0» как «0–0–0»,
-
а «1» как «1–1–1».
-
И можно легко проверить, что если применить
любую из этих операций
-
к этим двум состояниям,
-
они
-
останутся неизменными. Они не поменяются.
-
Конечно, это исключающее ИЛИ-НЕ
на каждом кубите,
-
так что, конечно, они не изменятся.
Но, например,
-
эта операция вводит
-
фазы «-1» в данном случае,
-
и вот эти кубиты она не изменит.
-
Но она введёт фазы «-1» и в первом,
и во втором кубите.
-
И они обнулятся.
-
То есть все эти операции
-
стабилизируют
-
состояния кода, так что они не изменяются.
-
А ещё можно увидеть, что если рассматривать
только эти две операции,
-
то с помощью умножения вы можете
генерировать и другие.
-
Фактически, эти операции формируют
-
коммутативную группу, абелеву группу,
-
и они образованы вот этими
-
операциями.
-
И, важно отметить, что
-
собственное значение этих операций
всегда либо «1» либо «-1».
-
И, сочетая все эти подходы,
-
мы можем увеличить
-
число операций или задание кода,
-
какие произведения операций Паули
-
фиксируют все слова, которые мы используем
для кодирования
-
логических кубитов.
-
И это называется признанной
группой стабилизационных
-
алгоритмов коррекции.
-
И, например, в алгоритме Шора
-
вы можете видеть
-
стабилизационные операции
-
вот здесь, и те, которые получаются
путём сочетания,
-
умножения вот этих элементов.
-
И вы можете использовать эти
-
операции, чтобы изучать свойства кода,
-
например, какие ошибки вы можете исправить,
-
различные свойства
-
операций, которые можно выполнять логически,
можете делать много всего.
-
И на самом деле это просто, я не буду
вдаваться в подробности,
-
но очень просто
-
определить схемы для синдромов, которые
-
могли показаться сложными
-
в изученных нами случаях, но если
у вас есть генератор
-
стабилизационной группы алгоритма,
-
вы можете использовать эту конструкцию,
эту красивую конструкцию,
-
чтобы получить способ измерить
синдромы.
-
Итак, этот формализм очень полезен
-
не только для изучения квантовых кодов
коррекции ошибок, но и других
-
квантовых алгоритмов.
-
И действительно, я его упомяну
в другом контексте
-
буквально через несколько минут.
-
Его можно использовать, чтобы изучать
-
коды в самых общих ситуациях применения.
-
На самом деле,
-
самые популярные квантовые алгоритмы
коррекции ошибок,
-
которые сейчас изучаются с целью
их дальнейшего применения
-
в квантовых устройствах, называются
поверхностными кодами,
-
они являются частным случаем
стабилизационных кодов.
-
И вот здесь, например, вы видите реализацию
-
одного логического кубита с этими
-
многочисленными физическими кубитами,
-
в которой
-
операции, стабилизирующие
код, определены
-
вот такими
-
зелеными и желтыми фигурами.
-
Так, например, такая
-
зеленая фигура означает
-
выполнение операции Z на этом кубите,
-
этом кубите, этом кубите и этом кубите,
-
и она стабилизирует код.
-
И мы используем черный кубит
-
для измерения синдрома этого
-
генератора. А здесь у нас такая схема.
-
У меня нет времени её объяснять, но
вы можете проверить, что
-
эта схема вытекает непосредственно
из вот этой конструкции.
-
Я бы хотел,
-
чтобы вы знали, что сейчас считается, что
именно этот тип поверхностных кодов
-
будет в дальнейшем реализован в генераторах
квантовых компьютеров.
-
Вы видите, что
-
для реализации одного логического
кубита вам нужно много кубитов.
-
Но у таких схем есть и полезные свойства,
и их можно
-
реализовать с помощью того типа чипов,
которыми мы располагаем сегодня,
-
в котором есть связь между
разными кубитами,
-
потому что вам здесь нужно применять
вентили CNOT
-
к соседним кубитам. Итак,
-
эти алгоритмы рассматриваются
-
сейчас для использования в следующих
поколениях
-
квантовых компьютеров, потому что они
-
хорошо работают с аппаратным оборудованием,
которым мы располагаем сегодня
-
и рассчитываем иметь в будущем.
-
Всё это
-
изучается с целью получить так называемые
отказоустойчивые квантовые вычисления.
-
Эта тема
-
заслуживает отдельной лекции,
-
но позвольте мне только отметить, что эта
идея похожа на то,
-
о чём я рассказывал до этого:
-
мы предлагаем модель ошибок,
мы предполагаем,
-
например, что ошибки появляются
-
с определенной вероятностью и независимо
друг от друга,
-
и, конечно, по одной ошибке в заданный
период времени.
-
А затем, с некоторыми незначительными
условиями
-
в свойствах алгоритма и в модели ошибок
-
можно показать, что
-
нет необходимости применять слишком
много таких конкатенаций кода,
-
чтобы снизить
-
вероятность
-
ошибки до желаемого уровня.
-
То есть,
-
снижение вероятности ошибки
происходит по экспоненте,
-
в то время как количество
-
вентилей в схеме и количество
необходимых кубитов
-
растет всего лишь полиномиально.
-
В общем, это хорошее свойство,
-
и оно описывается тем, что называется
-
предельной теоремой.
-
Если ошибка кода,
-
ошибка «железа» ниже определенного предела,
-
зависящего от используемого алгоритма,
-
и если
-
ошибки
-
удовлетворяют определенным условиям,
-
которые вы предъявляете к своей модели,
то вы можете снизить
-
вероятность ошибки до желаемого
уровня без
-
экспоненциального роста количества
кубитов в схеме.
-
И это является Священным Граалем
-
коррекции ошибок в квантовых вычислениях.
-
Я не знаю, есть ли какие-либо
вопросы по этой теме?
-
Чтобы её завершить,
-
я хотел бы поговорить немного о том,
-
на каком этапе мы сейчас находимся
в квантовых вычислениях,
-
и чего мы можем ожидать в будущем.
-
Чтобы говорить о текущей ситуации,
-
конечно же, мы должны поговорить о том,
что такое квантовое превосходство.
-
Каковы достижения
-
и что они значат для практических
вычислений,
-
ближайшего будущего, ближайших перспектив
в этой области.
-
Есть определение квантового превосходства.
-
Вы также знаете, что существуют разногласия
по поводу термина «превосходство»,
-
но он широко распространён.
-
Иногда я использую «превосходство»,
иногда «преимущество»,
-
но термин
-
ссылается на тот момент времени, когда
-
квантовый компьютер, реальный
квантовый компьютер,
-
сможет выполнить задачу
-
за значительно меньший отрезок времени,
-
чем
-
ту же самую
-
задачу сможет решить лучший классический
суперкомпьютер.
-
Итак, это
-
практическая демонстрация
ситуации
-
превосходства квантового компьютера над
лучшим обычным на определенной задаче.
-
И важно заметить,
-
что задача не обязательно должна быть
-
практической, не должна быть чем-то,
что мы можем использовать
-
для решения реальных проблем
-
или практического применения
в какой-либо области.
-
Это просто
-
задача, которую квантовый компьютер
выполнит намного лучше,
-
решит её намного быстрее,
-
чем любой из имеющихся у нас
классических компьютеров.
-
Конечно, можно попытаться получить
-
квантовое преимущество, или квантовое
превосходство,
-
используя, например, алгоритм Шора,
чтобы разложить целое число.
-
Если бы у нас было целое число, скажем,
-
10 000-разрядное или что-то около того,
-
и мы могли бы разложить его с помощью
квантового компьютера,
-
тогда мы могли бы сравнить результат
с классическим компьютером.
-
Мы могли бы это сделать и подтвердить
квантовое превосходство,
-
потому что у нас нет алгоритма, с помощью
которого мы могли бы разложить
-
10 000-разрядное число.
-
Проблема в том, что
-
для алгоритма Шора требуется квантовая
коррекция ошибок,
-
а мы пока еще не можем, этого сделать,
-
потому что, как вы видели, например,
в случае этих поверхностных кодов,
-
некоторые из предлагаемых вариантов
-
требуют до 1 000
-
физических кубитов на один
логический кубит,
-
чтобы обеспечить защиту логического
кубита от всех ошибок.
-
И тогда,
-
чтобы использовать
-
алгоритм Шора, чтобы разложить целое число,
-
нам понадобятся
-
тысячи логических кубитов, то есть
понадобятся
-
миллионы физических кубитов, и пока мы
ещё весьма далеки от этого.
-
Так что идея заключается в том, чтобы
попытаться решить другую задачу,
-
которая может быть не так хорошо определена,
или не так полезна на практике,
-
или её будет не так легко проверить,
как разложение целого числа,
-
но её можно было бы выполнить
с помощью существующих
-
квантовых устройств.