Во-первых, классический компьютер выполняет базовую математику на аппаратном уровне в арифметико-логическом блоке (АЛУ). Логические вентили принимают низкое и высокое входное напряжение и используют КМОП для реализации логических вентилей, позволяющих выполнять и формировать отдельные вентили для выполнения более крупных и сложных операций. В этом смысле при наборе текста на клавиатуре посылаются электрические сигналы, которые в итоге заканчиваются отправкой команды (в виде большего количества электрических сигналов) в АЛУ, выполнением правильных операций и отправкой большего количества сигналов, которые преобразуются в отображать пиксели в виде числа на вашем экране.
Как насчет квантового компьютера?
Существуют два возможных способа использования квантовых процессоров: сами по себе или в сочетании с классическим процессором. Однако большинство (включая ваш пример сверхпроводящего) квантовых процессоров на самом деле не используют электрические сигналы, хотя ваша мышь, клавиатура, монитор и т. Д. По-прежнему передают и получают информацию. Таким образом, должен быть способ преобразования электрического сигнала в любой сигнал, который использует квантовый процессор (о котором я расскажу позже), а также какой-то способ сообщить процессору, что вы хотите сделать. Обе эти проблемы могут быть решены одновременно с помощью классической предварительной и последующей обработки, например, в IBM QISKit . Microsoft использует немного больше нисходящего подхода в Q #где программы для квантового процессора пишутся больше как «классическая» программа, а не как сценарий, затем компилируются и потенциально оптимизируются для аппаратного обеспечения. То есть, если у вас есть функция, она может выполнять классические операции, а также выполнять вызовы квантового процессора для выполнения любых необходимых квантовых операций. Это приводит меня к первому пункту:
Если вы собираетесь попросить компьютер с доступом к квантовому процессору вычислить что-то, например, , одним из наиболее подходящих решений будет просто вычислить его на классическом процессоре, как обычно.2 + 3
Хорошо, допустим, что вы заставляете классический процессор использовать квантовый процессор, который в данном случае является одним из сверхпроводящих чипов IBM, использующих трансмонитные кубиты, скажем, IBM QX4 . Это слишком мало для исправления ошибок, поэтому давайте проигнорируем это. Использование процессора модели схемы состоит из трех частей: инициализация, унитарное развитие и измерение, которые более подробно описаны ниже. До этого,
Что такое трансмон?
Возьмите сверхпроводящую петлю, чтобы учесть куперовские пары, и добавьте один или два джозефсоновских перехода, чтобы получить коробочный островок куперовских пар в области между двумя джозефсоновскими переходами с энергией джозефсоновской связи , где квант магнитного потока и - критический ток соединения. Применение напряжения к этому дает «емкость затвора» и делает это заряда . Для кулоновской энергии одной куперовской пары , гдеЕJ= ЯсΦ0/ 2π Φ0= ч / 2 еясВгСгЕС= ( 2 е )2/ 2CСявляется суммой общей емкости острова. Гамильтониан такой системы задается как где - число куперовских пар, - изменение фазы на стыке, а . При выполнении унитарных операций учитываются только два нижних состояния системы: и с соответствующими энергиями и и частотой кубита
ЧАС= EС( n - nг)2- EJсозϕ ,
NφNг= CгВг/ 2е| п ⟩ = | 0 ⟩| п ⟩ = | 1 ⟩Е0= ℏω0Е1= ℏω1ω = ω1- ω0, описывающий вычислительную основу кубита. Типичный зарядный кубит может иметь . Добавление большой шунтирующей емкости и увеличение емкости затвора переключает это соотношение, так что и мы получаем
transmon . Преимущество этого заключается в увеличении времени когерентности за счет снижения ангармоничности (когда уровни энергии за пределами первых двух ближе друг к другу, что может привести к утечке).
ЕС= 5 ЕJЕJ≫ EС
Наконец , мы подошли к основному вопросу:
Как мы инициализируем, развиваем и измеряем трансмон?
Добавление 2 и 3 теперь является «простым» вопросом инициализации кубитов, выполнения затворов, эквивалентных классическому обратимому сумматору, и измерения результата, и все это осуществляется автоматически. Затем результат измерения возвращается классическим компьютером, как обычно.
В качестве бонуса кажется немного бессмысленным проходить все это, чтобы реализовать логические элементы, которые можно было бы сделать на классическом компьютере в любом случае, поэтому получается, что возможно приблизительно реализовать квантовый сумматор , который добавляет два квантовых (в отличие от к классическим) состояниям, с некоторой ошибкой, на одном из процессоров IBM.