1. Ana sayfa
  2. Algoritmalar
  3. QFT ve faz
  4. QFT · Qiskit
QFT ve faz · Qiskit

Kuantum Fourier dönüşümü — faz uzayına geçiş

QFT (Quantum Fourier Transform), n kübitlik bir durumun genliklerini, klasik ayrık Fourier (DFT) ile aynı matematiksel ilişkiye sadık kalarak yeniden dağıtan üniter (birim ve tersinir) bir dönüşümdür. Ölçüm öncesi genlik tablosunu “yeniden karıştırmak” değil; Hilbert uzayındaki temsilini Fourier tabanına döndürmektir. Klasik Fourier sinyaldeki frekans bileşenlerini ortaya çıkarırken, QFT kuantum durumunda sıklıkla fazlarda kodlanan periyodik yapıları ölçülebilir bir biçime yaklaştırır — Shor, faz tahmini (QPE) ve Grover sonrası sayım gibi algoritmalarda devreye tam buradan girer.

  • Merdiven devre: H + kontrollü faz
  • Bit reversal: SWAP
  • Karmaşıklık: O((log N)^2)
  • Örnek: 3 kübit manuel QFT

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.

Daha kesin söylemek gerekirse: n kübit, N = 2n boyutlu bir genlik vektörü taşır. QFT, bu vektöre klasik DFT’nin kuantum karşılığını uygular — yani genlikleri, “hangi endeks?” düzeninden Fourier tabanına taşır. Sonuç yine bir kuantum durumudur; Fourier “çıktısı” tek başına klasik bir liste olarak okunmaz, ölçüm ve (çoğu algoritmada) klasik devam işlemleri ile anlam kazanır.

Neden bu kadar merkezi? Birçok kuantum algoritması, aradığı yapıyı (örneğin bir fonksiyonun gizli periyodu veya bir ünite operatörünün özdeğer fazı) doğrudan bit deseninde değil, tekrarlayan faz ilişkilerinde saklar. QFT, bu ilişkileri genliklerin yeniden dağılımıyla öne çıkarır; böylece bir sonraki adımda ölçüm veya klasik çıkarım, “hangi frekans/kip baskın?” sorusuna yaklaşabilir. Özetle QFT tek başına “cevap makinesi” değildir; periyodiklik ve faz bilgisini ortaya çıkaran geçiş kapısıdır.

Kuantumun spektrum analizi QFT’yi, bir ses kaydındaki notaları ayrıştıran spektrum analizörü gibi düşünebilirsiniz: zaman alanındaki dalga formunu alıp frekans alanında “hangi desenler baskın?” sorusuna cevap verir. Kuantumda “frekans” genelde kübitler arası fazların uyumlu tekrarıdır; QFT bu uyumu genlik uzayında seçilebilir hale getirir.
Sınır çizgisi · ne beklemeli? QFT bir ünite olduğu için bilgi yok etmez; ancak tek bir ölçümde tüm Fourier katsayılarını klasik FFT çıktısı gibi satır satır görmezsiniz. Anlam, çoğu kez birçok çalıştırmanın istatistiğinde veya QPE/Shor tarzı düzenli devre + klasik işlemde oluşur — bunun nicel farkını bir sonraki bölümde devre karmaşıklığı tablosuyla netleştiriyoruz.

Neden devrimseldir?

Burada “devrim”den kastettiğimiz şey, tek başına bir slogandan çok hesaplama modeli farkıdır: klasik ayrık Fourier (FFT), elinizde N sayılık bir diziyi okuyup yazarken O(N log N) işlem yapar. QFT ise aynı boyuttaki genlik uzayına karşılık gelen üniter dönüşümü, n = log₂N kübit üzerinde çok daha küçük bir kapı sayısıyla (O(n²), yani O((log N)²)) gerçekleştirebilir. Önemli nüans: QFT bir klasik diziyi satır satır çözmek için kullanılmaz; önceden hazırlanmış kuantum durumunun temsilini Fourier tabanına döndürür.

Bu yüzden tabloyu okurken iki satırın aynı masada yarışan iki program olduğunu düşünmeyin. FFT satırı, “genlikleri depoda duran bir vektörün Fourier’ini hesapla” problemini çözer; QFT satırı ise “n kübitlik duruma DFT’ye denk gelen üniteyi uygula” işinin devre maliyetidir. Genlikleri klasik olarak çıkarıp FFT’e beslemek çoğu senaryoda ya mümkün değildir ya da en azından boyutu N ile ölçeklenen bir maliyet doğurur; kuantum algoritması ise durumu yerinde tutup QFT ile dönüşümü “yerinde” yapmayı hedefler.

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ı.

Shor ve QPE bağlamında üstel ayrımı “yalnızca FFT’den geldi” sanmayın: kazanç, oracle/hazırlık + faz bilgisini taşıyan durum + QFT + klasik devam işinin bütününden doğar. QFT’nin rolü, bu paket içinde Fourier adımını n’de polinom tutarak darboğazı kırmaktır; tek başına her klasik problemi hızlandırmaz.

Özet · devrim nerede? Polinom kapılı QFT, üstel boyutlu genlik uzayına karşılık gelen üniteri pratikte “devreye sığdırılabilir” kılar. Bu, Shor ve QPE gibi yapılarda periyot veya özdeğer fazını çıkarma zincirinin kuantum tarafını ölçeklenebilir tutar — tablodaki sayılar bu fizibiliteyi sayısallaştırır; “üstel hızlanma” iddiasını ise bütün algoritma ispatı taşır.

Genellemeyi reddedelim: “kuantum her şeyi daha hızlı yapar” doğru değildir. QFT, veri hazırlığı ve sonradan okuma koşulları uygun olduğunda (periyot, faz, düzenli oracle) devreyi verimli kılan bir bileşendir; anlam yine ölçüm ve klasik son işlemle gelir — bunu 1 · QFT nedir? içindeki “ne beklemeli?” çerçevesinde açmıştık.

Mimari yapı: kontrollü dönüşler ve Hadamard

Standart QFT devresi, kübitleri sırayla işleyen bir “merdiven”dir: dış döngüdeki her j için önce o hatta H, ardından daha yüksek numaralı kübitlerden (k > j) gelen kontrollü fazlar gelir. Bu sayede klasik DFT’nin çarpım kurulumuna denk gelen faz ilişkileri, kapı kapı birikir; açılar π/2, π/4, π/8, … şeklinde ikilik kesir basamaklarına iner — işte Fourier’deki frekans çözünürlüğünün devre karşılığı budur.

Bell durumu sayfasında H’nin tek kübitte eşit süperpozisyon ürettiğini ve kontrollü kapıların iki hat arasında koşullu etki kurduğunu adım adım görmüştük. Burada rol değişir: dolanıklık için CNOT yerine faz taşıyan kontrol kullanılır; merdiven ise Fourier tabanını inşa etmek içindir — yani kapılar aynı aileden, ama algoritma hedefi tamamen QFT’ye özgüdür.

  • Hadamard H

    Bell örneğinde olduğu gibi, tek kübit düzeyinde |0⟩ ve |1⟩ genliklerini eşitler ve göreli fazları karşılaştırılabilir hâle getirir. QFT’de bu “ilk adım” her katmanda o anki hedef hatta (j) tekrarlanır: kübit yalnızca klasik bir bit değil, iki dalın birlikte taşıdığı faz alanıdır. Arkadan gelen kontrollü fazlar, işte bu iki dal arasına Fourier’nin gerektirdiği ikilik faz farklarını eklemek için gereklidir — özetle H süperpozisyonu açar, merdiven ise o süperpozisyon üzerinde harmonikleri kodlar.

  • Kontrollü faz CP · Rk

    İki kübitlidir: bir hat kontrol, diğeri bu blokta hedef (qc.cp(angle, k, j) kurulumunda kontrol k, hedef j). Kontrol |1⟩ iken hedefin |1⟩ bileşenine ek faz eklenir; kontrol |0⟩ iken dokunulmaz — Bell’deki CNOT’un “yalnızca bir dalda işlem” mantığına paralel, fakat burada bit çevirmek yerine faz döndürmek vardır. Açılar π / 2m biçimindedir; bu sayfadaki döngüde m = k − j olduğundan π/2, π/4, … sırası çıkar. Üst kübitler hangi kombinasyonların aktif olduğuna göre alt hattaki fazı kesir kesir biçimler — bu da QFT’nin “frekansı fazda yazma” mekanizmasıdır.

Bit reversal (SWAP) neden var? Yukarıdaki doğal merdiven çıktısı, çoğu kurulumda beklenen bit sırasıyla uyumsuz üretilir; bu yüzden devre sonunda hatları aynalayarak düzeltiriz. Böylece ölçüm sonrası klasik bit dizisi, Fourier indeksini okunaklı sırayla verir — ayrıntılı sıra ve kodda eşleşmesi için 5 · Qiskit kod örneği bölümüne bakın.

Faz uzayına geçiş

QFT uygulandığında bilgi, “hangi kübit 0/1?” gibi doğrudan bit deseninden ziyade, register’ın taşıdığı göreli fazlar ve girişim üzerinden okunur. Çünkü QFT bir üniter temsil değişimidir: aynı fiziksel durum, hesaplama tabanından Fourier tabanına taşınır; önceden dal dal saklı görünen faz ilişkileri, yeni tabanda genlik yoğunlaşması olarak seçilebilir hâle gelir.

Bu pasajda “faz uzayı”ndan kastettiğimiz şey, soyut faz uzayı geometrisinin tam formülü değil, pratik bir uyarıdır: kübitleri tek tek klasik bit sanarak okuyamazsınız; önemli olan, tamamlayıcı genlikler arasındaki faz farklarıdır (genel faz kayması ölçümde görünmez). QFT tam da bu göreli fazların, Fourier indeksleriyle uyumlu biçimde yeniden paketlenmesini sağlar — dolayısıyla “faza geçiş”, kapılarda döndürdüğünüz açıların özetidir (3 · Mimari); ölçüm öncesi ise anlamlı özetin hangi etiketlerde ortaya çıkacağıdır.

Periyodik veya özdeğer yapılarda aranan bilgi sıklıkla çarpım durumunun üstündeki düzenli faz döngülerinde durur. QFT’den hemen sonra yapılan ölçüm, klasik FFT çıktısı gibi tüm katsayıları tek seferde yazdırmaz; bunun yerine örnekler üretir ve doğru devre koşullarında belirgin sonuçlar istatistiksel olarak öne çıkar. Devamında sürekli kesir, periyot arama veya özdeğer çıkarımı gibi klasik adımlar devreye girer — bu zincirin kuantum kısmı ile ölçüm beklentisi arasındaki farkı 1 · Tanım · ne beklemeli? notunda özetlemiştik.

Hibrit boru hattı Tipik kullanım şöyledir: oracle veya hazırlık evresi faz bilgisini duruma gömer → QFT bu bilgiyi ölçüme uygun biçimde yeniden düzenler → ölçüm örnekleri üretir → klasik işlem (ör. sürekli kesir, en yakın rasyonel, tekrarlı deneme) sonucu kilitlemeye çalışır. Kuantum faz tahmini (QPE) sayfasında bu boru hattının IQFT ile nasıl kenetlendiğini ayrıntılı görürsünüz; burada vurgu, QFT’nin tek başına son sözü değil, “fazı ölçülebilir bir dağılıma çeviren” bileşen olduğudur.
Ölçüm dilini seçmek Çıktı hâlâ kübitler üzerindedir; fakat QFT sonrası anlamlı okuma çoğu zaman “hangi klasik etiket sık örnekleniyor?” sorusudur. Bu yüzden yorumu bit dizisi gibi değil, Fourier etiketinde yoğunlaşan olasılık zirveleri gibi düşünmek gerekir — tam da bu anlamda bilgi fazda kodlanmışken QFT onu “histogram diline” yaklaştırır.

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.

Derin bakış · neden manuel QFT? Qiskit kütüphanesindeki QFT() fonksiyonu optimize edilmiş bir “kara kutu”dur. Eğitim için harikadır; fakat bu sayfadaki gibi devreyi Hadamard ve kontrollü faz kapılarıyla basamak basamak inşa etmek, kuantumun frekans analizini aslında nasıl “faz döndürme” seviyesinde gerçekleştirdiğini görmenin en temiz yoludur.
qft_manual_qiskit.py Python
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)
qiskit Statevector · ölçümsüz · n=3 UTF-8 · LF

Aynı Devre (İki Temsil)

Yukarıdaki editördeki akışın çıktısı solda Qiskit’in metin devre şeması olarak; sağda aynı n=3 QFT merdiveninin özet çizimi yer alır. Baştaki X kapıları |101⟩ hazırlığını verir; bariyerleri ve P(π/…) kontrollü faz (CP) kapıları merdiveni takip eder; Qiskit çiziminde sondaki çapraz çizim, bit reversal SWAP’ı temsil eder (üstteki Pauli-X ile karıştırmayın).

terminal

print(qc) · Qiskit · |101⟩ + manuel QFT

Manuel QFT Devre Şeması:
     ┌───┐ ░ ┌───┐                   ░                ░       ░    
q_0: ┤ X ├─░─┤ H ├─■────────■────────░────────────────░───────░──X─
     └───┘ ░ └───┘ │P(π/2)  │        ░ ┌───┐          ░       ░  │ 
q_1: ──────░───────■────────┼────────░─┤ H ├─■────────░───────░──┼─
     ┌───┐ ░                │P(π/4)  ░ └───┘ │P(π/2)  ░ ┌───┐ ░  │ 
q_2: ┤ X ├─░────────────────■────────░───────■────────░─┤ H ├─░──X─
     └───┘ ░                         ░                ░ └───┘ ░    

Pauli-X · |101⟩ ░ · bariyer H · CP · SWAP (çapraz)

svg

Premium devre çizimi

q0 q1 q2 H H H CP π/2 CP π/4 CP π/2 SWAP

mor · H turuncu · CP pembe · CP yeşil · SWAP

Canlı devre paneli bu sayfada yok. Aşağıdaki terminal ve SVG (veya özet şema) tam referans görselidir; tarayıcıda simülatör veya örnek histogram çalışmaz. Canlı devre, moment turu ve örnek sayım şu an şu sayfalarda: Bell · Qiskit, GHZ · Qiskit, Bell · Cirq, QRNG · Qiskit, Süper yoğun kodlama, BB84, Teleportasyon, Bernstein–Vazirani ve Grover.
Ne öğreniyoruz? Qiskit metin çıktısı hazırlık (X), bariyer ve kontrol hatlarını satır satır gösterir; SVG aynı örneği tek bakışta özetler. Cirq QFT · iki temsil, Grover · iki temsil.
İki çerçeve, aynı merdiven Bu örnekte kontrollü faz açılarını π / 2^(k−j) ile açıkça kuruyorsunuz; Cirq tarafında aynı katkılar üs cinsinden (CZPow(t), metin çıktısında @^t) soyutlanır — Cirq QFT · kod.

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.

Bit reversal · yaygın kafa karışıklığı QFT’nin “çıktısı ters” demek, kuantumun yanlış çalıştığı anlamına gelmez — bu bir adresleme konvansiyonu meselesidir (endianness). Bazı kitap/çerçeveler SWAP’ları devreye koyar, bazıları “ölçüm bitlerini ters oku” der. Biz burada görsel netlik için SWAP ile düzeltiyoruz.

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. Terminal satır satır versiyon için 6 · Aynı Devre (İki Temsil) bölümüne bakın.

QFT merdiveni · n=3 · Qiskit H + CP(π/2, π/4, …) + SWAP
q0 q1 q2 H H H CP π/2 CP π/4 CP π/2 SWAP

Şemayı adım adım oku

  1. İlk kübitte H ile başlarsınız; sonra diğer kübitlerden gelen kontrollü fazlarla ince ayar yapılır.

  2. Açıların π/2, π/4, ... şeklinde küçülmesi, fazın ikili basamaklarla kodlandığını gösterir.

  3. Ş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”.

  4. Merdiven tamamlanınca bit reversal için SWAP ile sıralama düzeltilir.

Şema okuma ipucu QFT’de “hangi kapı nereye bağlı?” sorusundan çok “hangi faz hangi ağırlıkla ekleniyor?” sorusu önemlidir. Bu yüzden açılar küçülerek gider: her yeni kontrollü faz, ölçümdeki bir basamağın çözünürlüğünü temsil eder.
Doğrulama

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”

    Spektrum analojisi “fazı” hızlı oturtur; okuyucuya küçük uyarı: kuantumda bu “frekans” çoğu zaman ses tonu değil, kübitler arası göreli fazın uyumlu tekrarıdır. Benzetmeyi 4 · Faz uzayına geçiş bölümündeki histogram/ölçüm diline bağlamak, analojiyi tek başına bırakmaz.

  • Bit reversal

    “Fourier dünyasında adreslemenin ters aktığı” iyi bir sezgi; geliştirirken bit sırasını okuyucunun zihninde net tutun: doğal merdiven çıktısı ile klasik indeks okuma sırası uyumsuz olabilir — SWAP katmanı tam da ölçüm satırını insanların beklediği uca hizalar.

  • Hibrit mantık

    QFT’nin ölçümden hemen önce veriyi örneklemeye uygun biçimde düzenlediği; ardından sürekli kesir, periyot çıkarma vb. klasik işlemlerin geldiği çerçeve, Shor, QPE ve Grover-sonrası sayım zincirlerinde standarttır. İçerikte “kara kutu QFT()” ile manuel devreyi yan yana tutmak bu hibrit resmi tamamlar.

  • İki satır, iki problem

    Karmaşıklık tablosunda FFT ile QFT satırını yan yana verirken editör notu: bu tablo “aynı işi iki dilde çalıştır” demek değil; biri açık klasik dizi, diğeri n kübit üzerinde üniter. Yanlış genellemeden kaçınmayı 2 · Neden devrimsel? bölümünde zaten ayırdık — özet kartlar o nüansı kaybetmesin.