Как сделать контролируемый Ry из CNOT и вращений?

11

Я хочу иметь возможность применять управляемые версии (вращение вокруг оси Y) для реальных устройств в IBM Q Experience. Можно ли это сделать? Если так, то как?рY

Джеймс Вуттон
источник

Ответы:

6

Вы можете сделать управляемые ворота из узлов и вращений , так что они могут быть сделаны на любой паре кубитов, которые допускают узел.R yрYрY

Два примера контролируемых Y показаны на рисунке ниже. Они находятся в одной цепи, одна за другой.

Две версии контролируемой Y

Первый имеет кубит 1 в качестве элемента управления и кубит 0 в качестве цели, что легко, поскольку узлы могут быть непосредственно реализованы в правильном направлении.

Во втором примере кубит 0 является управляющим, а кубит 1 является целевым. Это достигается использованием четырех ворот H для каждого узла, чтобы эффективно перевернуть его.

Этот второй пример также может быть дополнительно оптимизирован. В верхней строке есть два соседних ворот, которые можно отменить. И поскольку H антикоммутирует с Y, всегда можно заменить на . (Спасибо @DaftWullie за указание на это).u 3 ( - θ , 0 , 0 )ЧАСU3(θ,0,0)ЧАСU3(-θ,0,0)

введите описание изображения здесь

Используются одиночные ворота кубита: , которые представляют собой . В этом случае используются углы pi / 2 и -pi / 2. Они отменяются, когда элемент управления равен . Это дает ожидаемый эффект от контролируемого Y, действующего в этом случае тривиально.R y ( θ ) |U3(θ,0,0)рY(θ)|0

Когда элемент управления равен , узлы выполняют X по обе стороны от , что имеет эффекту 3 ( - π / 2 , 0|1U3(-π/2,0,0)

ИксU3(θ,0,0)Иксзнак равноU3(-θ,0,0)

Это означает, что переходит на . Конечный эффект на контрольu 3 ( π / 2 , 0 , 0 )U3(-π/2,0,0)U3(π/2,0,0)

U3(π/2,0,0)U3(π/2,0,0)знак равноU3(π,0,0)знак равноY

который являетсяY

Более общие контролируемые средства вращения , которые вы хотите , чтобы сделать фракцию . Так что просто уменьшите оба угла на соответствующую дробь. YрYY

Джеймс Вуттон
источник
1
θ-θ
1
Это очень верно. Я сделал это по модульному принципу и не искал оптимизаций. Я думаю, что неоптимальная версия более педагогична.
Джеймс Вуттон
Конечно, но если вы хотите реализовать его на реальном квантовом компьютере с шумом, вам нужно убедиться, что вы делаете как можно меньше и максимально эффективно используете все эти приемы!
DaftWullie
Абсолютно. Я добавил оптимизацию (хотя я думаю, что компилятор IBM, вероятно, все равно это сделает)
Джеймс Вуттон
U3(θ,0,0)рY