Özdeğer / özvektör tahmin protokollerine bakmanızı öneririm. Sorunu istediğiniz kadar kolay veya zor hale getirmek için çok fazla esneklik var.
İki parametre seçerek başlayın, n ve k. Bir tasarım yapmak istiyorsunuzn- üniter kubbe, U formun özdeğerlerine sahip olan e- 2 πben q/2k tamsayılar için q. Bu öz değerlerden en az birinin benzersiz olduğundan emin olun ve onu arayınω. Ayrıca, basit bir ürün durumunun,| 0⟩⊗ n, özdeğer özvektörü ile sıfır olmayan örtüşmeye sahiptir ω.
Amaç, buna bir faz kestirim algoritması uygulamak, kve bir vektör çıktısını almakla görevli olmak | ψ⟩ özdeğer değerine karşılık gelen özvektör ω. Genel olarak bu,n + k qubits (kontrollü uygulamak için yardımcılara ihtiyacınız yoksaU).
Bu şu şekilde çalışır:
biri olmak üzere iki kayıt oluşturun k kübitler ve diğeri nqubits. ( kuantum kayıtlarının kullanımı )
her kubit devlette başlatılır | 0 ⟩. ( kuantum kayıtlarının başlatılması )
ilk kayıttaki her kubite bir Hadamard uygulayın ( tek kubit kapıları )
qubit'ten r ilk kayıtta, kontrollüU2r, ikinci kaydı hedefleyen ( çoklu-kubit kontrollü kapılar )
ters Fourier dönüşümünü ilk kayıtta uygulayın ve ilk kayıttaki her kubiti standart olarak ölçün. Bunlar, yarı klasik Fourier dönüşümünü uygulayarak birleştirilebilir . ( klasik verilerin ölçümü ve ileri iletimi )
doğru ölçüm sonucu için ikinci kayıt istenen durumda |ψ ⟩.
Basitlik için, n = 2, k = 1, bu yüzden bir 4 × 4 özdeğerli birimsel matris ± 1. Gibi bir şey kullanırdım
(U1⊗U2) C(U†1⊗U†2) ,
nerede
C"Kontrollü NOT" anlamına gelir. Özdeğer -1 ile sadece bir özvektör vardır,
| ψ⟩=(U1⊗U2) | 1 ⟩ ⊗ ( | 0 ⟩ - | 1 ⟩ ) /2-√ve seçimleriyle uğraşabilirsiniz
U1 ve
U2 uygulanmasını keşfetmek
Uevrensel bir geçit kümesi açısından ayrıştırma kullanarak (muhtemelen bunu bir ön sorun olarak ayarlardım). Sonra, kontrollü-
Usadece kontrollü-NOT yerine bir kontrollü-kontrollü-NOT (Toffoli) geçidi kullanılarak kolayca uygulanır. Son olarak, ters Fourier dönüşümü sadece bir Hadamard kapısıdır.
Biraz daha karmaşık bir şey için k=3ve değiştirin C takas kapısının karekökü ile,
⎛⎝⎜⎜⎜⎜⎜1000012√i2√00i2√12√00001⎞⎠⎟⎟⎟⎟⎟
with
ω=e±iπ/4 and
|ψ⟩=(U1⊗U2)(|01⟩±|10⟩)/2–√.