Kuantum Fourier dönüşümü — faz uzayına geçiş
QFT (Quantum Fourier Transform), bir kuantum register’ının genliklerini Fourier dönüşümüyle yeniden ifade eden doğrusal bir dönüşümdür. Klasik Fourier “frekansları” ayıklarken, QFT kuantum durumundaki periyodik faz desenlerini yakalamayı mümkün kılar; bu yüzden Shor ve Faz Tahmini (QPE) gibi büyük algoritmaların ana motorudur.
Kuantum Fourier Dönüşümü (QFT) nedir?
QFT, n kübitlik bir durumun genliklerini Fourier dönüşümü mantığıyla yeniden düzenler. Klasik dünyada Fourier dönüşümü sinyalin içindeki frekansları ortaya çıkarır; kuantum dünyasında ise “bilginin” çoğu zaman fazlarda saklandığı durumlarda bu faz desenlerini okunabilir hâle getirir.
Neden devrimseldir?
QFT’nin devre karmaşıklığı, klasik FFT ile kıyaslandığında dramatiktir. Elbette QFT bir “liste” üzerinde çalışmaz; bir kuantum register üzerindeki faz/genlik temsilini değiştirir. Ancak Shor ve QPE gibi algoritmalarda bu değişim, üstel hızlanmanın kilidini açar.
| Yöntem | Ölçek | Not |
|---|---|---|
| Klasik FFT | O(N log N) | Uzunluğu N olan dizide dönüşüm. |
| QFT devresi | O((log N)^2) | n=log₂N kübit üzerinde kapı sayısı. |
Buradaki fark, “kuantum her şeyi daha hızlı yapar” gibi genellenmez. QFT, doğru problem yapısı (periyot/faz) olduğunda bir hız motorudur; ölçüm ve klasik son işlemle birleştiğinde anlam kazanır.
Mimari yapı: kontrollü dönüşler ve Hadamard
QFT devresi simetrik bir “merdiven” yapısıdır. Her basamakta bir Hadamard ve ardından daha az etkili (küçülen açı) kontrollü faz kapıları gelir.
-
Hadamard (H)
Her blok, ilgili kübiti süperpozisyona alarak faz rotasyonlarının “zeminini” hazırlar.
-
Kontrollü faz (CP / Rₖ)
Diğer kübitlerin değerine bağlı olarak hedef kübite belirli bir açı uygular: π/2, π/4, π/8, .... Bu, fazın hassas basamaklar halinde kodlanmasıdır.
Faz uzayına geçiş
QFT uygulandığında bilgi, “hangi kübit 0/1?” gibi doğrudan bit deseninden ziyade, register’ın taşıdığı faz açılarında temsil edilebilir. Bu, periyodik yapıları ölçümden hemen önce “temizleyip” okunabilir hale getiren hibrit algoritmalarda çok değerlidir.
Qiskit kod örneği
Aşağıdaki kod, QFT’yi “kütüphaneden çağırmak” yerine kapı kapı manuel kurar: Hadamard, kontrollü faz (CP) merdiveni ve bit reversal için SWAP. Örnek olarak giriş durumunu |101⟩ hazırlayıp QFT sonrası durum vektörünü okuyoruz.
import numpy as np
from qiskit import QuantumCircuit
from qiskit.quantum_info import Statevector
def build_qft_manual(n: int) -> QuantumCircuit:
qc = QuantumCircuit(n)
for j in range(n):
# 1) Her blok Hadamard ile başlar
qc.h(j)
# 2) Takip eden kübitlerle kontrollü rotasyonlar
for k in range(j + 1, n):
angle = np.pi / (2 ** (k - j)) # π / 2^(k-j)
qc.cp(angle, k, j)
qc.barrier()
# 3) Bit reversal: SWAP ile sırayı tersle
for i in range(n // 2):
qc.swap(i, n - i - 1)
return qc
n_qubits = 3
qft = build_qft_manual(n_qubits)
# Örnek giriş: |101⟩
qc = QuantumCircuit(n_qubits)
qc.x(0)
qc.x(2)
qc.barrier()
qc.compose(qft, inplace=True)
print(\"Manuel QFT Devre Şeması:\")
print(qc)
state = Statevector.from_instruction(qc)
print(\"Durum vektörü (genlikler):\")
print(state.data)
Kodun derinlemesine analizi
Kod analizi · satır satır
qc.h(j) Her katman bir Hadamard ile başlar. Bu, “faz merdiveni” için referans süperpozisyonu oluşturur.
Hangi kübit hangi rolü oynuyor? Döngüde j “hedef kübit”tir; onun üstüne QFT’nin bir basamağını kurarız. İç döngüdeki k ise “daha anlamlı” (daha yüksek ağırlıklı) kübitlerden gelen kontrollerdir. Sezgi: yüksek anlamlı bitler, daha küçük açılarla daha ince faz düzeltmeleri yapar.
qc.cp(angle, k, j) Kontrollü faz kapısı, kontrol kübit 1 iken hedef kübite angle kadar faz uygular. Açıların π/2, π/4, π/8... şeklinde küçülmesi, faz bilgisinin ikili basamaklar gibi kodlanmasıdır.
Açı formülü Burada angle = π / 2^(k-j). Mesafe büyüdükçe (k-j arttıkça) açı küçülür; bu yüzden merdivenin üst basamaklarında “ince” fazlar eklenir. QFT’nin estetik görünümü, aslında bu geometrik ölçeklemeden gelir.
qc.barrier() Bariyer, matematiği değiştirmez; sadece “bu basamak bitti” demektir. Devre şemasını okurken Hadamard + CP grubunu bloklar hâlinde görmenizi sağlar ve transpiler’ın kapıları farklı yerlere taşımasını pratikte sınırlar.
qc.swap(...) (bit reversal) QFT doğal olarak bitleri ters sırada üretir. SWAP katmanı, ölçüm çıktısını “insanların okuduğu” sıraya geri çevirir.
Statevector ile kontrol Bu örnekte ölçüm yapmıyoruz; amaç dönüşümün genlik/faz yapısını görmek. QFT’nin gücü, daha büyük algoritmalarda (QPE/Shor) ölçüm + klasik son işlemle ortaya çıkar.
Bu örnek neden ölçümsüz? QFT tek başına “cevap” üretmez; cevabı üreten, QFT’den sonra yapılan ölçümün hangi bağlamda yorumlandığıdır. Shor/QPE’de ölçüm, periyodu/fazı çıkarmaya yarayan klasik post-processing’e beslenir. Bu sayfada amaç, QFT’nin kapı yapısını ve faz mantığını çıplak hâliyle görmek.
Devre ve doğrulama
Şema 3 kübitlik manuel QFT merdivenini gösterir: her kübitte Hadamard ve ardından kontrollü faz kapıları; en sonda bit reversal için SWAP.
Şemayı adım adım oku
-
İlk kübitte H ile başlarsınız; sonra diğer kübitlerden gelen kontrollü fazlarla ince ayar yapılır.
-
Açıların π/2, π/4, ... şeklinde küçülmesi, fazın ikili basamaklarla kodlandığını gösterir.
-
Şemada kontrol noktası (dolu nokta) “fazı koşullu uygula” anlamına gelir. Örneğin q2 üzerindeki 1, q0 üzerinde π/4 faz ekler. Böylece üst kübitler alt kübitlerin fazını “ince ayarlar”.
-
Merdiven tamamlanınca bit reversal için SWAP ile sıralama düzeltilir.
Hedef: devrenin “H + kontrollü faz + SWAP” merdiveni olarak okunabilmesi ve bit reversal fikrinin net olması.
- kapılar H + CP + SWAP
- açılar π/2, π/4, ...
- not ölçüm, algoritmaya göre en sonda gelir
Tasarım ve içerik geliştirme notları
-
“Kuantumun spektrum analizi”
Sezgisel girişte QFT’yi bir spektrum analizörü gibi anlatmak, “faz” fikrini hızlı oturtur.
-
Bit reversal
SWAP’ların neden gerekli olduğunu “Fourier dünyasında adreslemenin ters aktığı” sezgisiyle açıklamak teknik derinliği artırır.
-
Hibrit mantık
QFT’nin çoğu zaman ölçümden hemen önce veriyi “temizleyen” bir dönüştürücü olduğu; ardından klasik post-processing geldiği notu faydalıdır.