Jak można kontrolować Ry z CNOT i rotacji?

11

Chcę mieć możliwość zastosowania kontrolowanych wersji bramki (obrót wokół osi Y) dla rzeczywistych urządzeń w IBM Q Experience. Czy można to zrobić? Jeśli tak to jak?Ry

James Wootton
źródło

Odpowiedzi:

6

Możesz tworzyć kontrolowane bramki z węzłów i rotacji , aby można je było wykonać na dowolnej parze kubitów, która pozwala na węzeł.R yRyRy

Dwa przykłady kontrolowanych Y pokazano na poniższym obrazku. Są na tym samym obwodzie, jeden po drugim.

Dwie wersje kontrolowanego Y

Pierwszy ma qubit 1 jako kontrolę, a qubit 0 jako cel, co jest łatwe, ponieważ węzły mogą być implementowane bezpośrednio we właściwym kierunku.

W drugim przykładzie qubit 0 to kontrola, a kubit 1 jest celem. Osiąga się to poprzez użycie czterech bramek H dla każdego węzła, aby skutecznie go odwrócić.

Ten drugi przykład można również dalej zoptymalizować. W górnej linii znajdują się dwie przyległe bramki H, które można anulować. A ponieważ H przeciwdziała Y, zawsze można zastąpić . (Podziękowania dla @DaftWullie za wskazanie ich).u 3 ( - θ , 0 , 0 )H.u3)(θ,0,0)H.u3)(-θ,0,0)

wprowadź opis zdjęcia tutaj

Pojedyncze zastosowane bramki kubitowe to , które są . Stosowane kąty to w tym przypadku pi / 2 i -pi / 2. Anulują się, gdy formantem jest . Daje to oczekiwany efekt kontrolowanego Y działającego w tym przypadku trywialnie.R y ( θ ) | 0 u3)(θ,0,0)Ry(θ)|0

Gdy kontrolką jest , węzły wykonują X po obu stronach , co ma wpływU 3 ( - π / 2 , 0 , 0 )|1u3)(-π/2),0,0)

Xu3)(θ,0,0)X=u3)(-θ,0,0)

Oznacza to, że na . Końcowy efekt kontroli jest wtedyu3)(-π/2),0,0)u3)(π/2),0,0)

u3)(π/2),0,0)u3)(π/2),0,0)=u3)(π,0,0)=Y

który jestY

Bardziej ogólne kontrolowane środki obrotowe, które chcesz zrobić ułamek . Więc po prostu zmniejsz oba kąty o odpowiednią część.RyY

James Wootton
źródło
1
Dlaczego nie anulujesz dwóch sąsiednich bram Hadamarda na kubicie 0 w drugiej bramie? Zakładam, że możesz również łączyć Hadamard-U3 ( ) -Hadamard jako U3 ( ). θ-θ
DaftWullie
1
To prawda. Zrobiłem to w sposób modułowy i nie szukałem optymalizacji. Myślę jednak, że nieoptymalna wersja jest bardziej pedagogiczna.
James Wootton,
Oczywiście, ale jeśli chcesz wdrożyć go na prawdziwym komputerze kwantowym z hałasem, musisz upewnić się, że robisz tak mało, jak to możliwe, i jak najlepiej wykorzystać wszystkie te sztuczki!
DaftWullie
Absolutnie. Dodałem optymalizację już teraz (choć myślę, że kompilator IBM i tak prawdopodobnie by to zrobił)
James Wootton,
u3)(θ,0,0)Ry