1. Ana sayfa
  2. Algoritmalar
  3. Bell ve iletişim
  4. GHZ durumu · Qiskit
Bell ve iletişim · Qiskit

GHZ durumu — N kübitlik maksimum dolanıklık zinciri

Bell durumlarının üç ya da daha fazla kübite genişlemiş hâli. Tek bir Hadamard ile başlayıp zincirleme CNOT akışı kurarak NN kübiti birbirine bağlarız; sonuçta sistem ölçüldüğünde ya tüm kübitler birden 0, ya da tüm kübitler birden 1 okur. Sayfa boyunca algoritmanın mantığını, Bell durumlarından farkını, neden kuantum hata düzeltme ve çok-partili gizli paylaşım protokollerinin kalbinde olduğunu adım adım inceliyoruz.

  • Çerçeve: Qiskit
  • 3 kübit (N'e ölçeklenir)
  • 2 kapı türü: H, CNOT
  • ~6 dk okuma

GHZ durumu nedir? (derinlemesine analiz)

GHZ durumu, en az üç kübitin maksimum düzeyde dolanık olduğu özel bir kuantum durumudur. Adını ilk olarak 1989'da bu durumu inceleyen üç fizikçiden alır: D. M. Greenberger, M. Horne ve A. Zeilinger. Düşünce yapısı sade: Bell durumlarındaki "iki kübit birden anlaşır" senaryosunu üç, dört, beş, … kübite genişletmek.

Yapı taşı — bütün ve parçalar

Bütün hakkında bilgi tam, parçalar hakkında belirsiz NN kübitlik bir GHZ sistemi Hilbert uzayında tek bir vektör olarak yaşar; ancak bu vektörden tek bir kübiti "izole" etmeye kalkıştığınızda elinizde sadece "yarı 0, yarı 1" gibi tamamen rastgele görünen bir karışım kalır. Yani "sistem"in durumu hakkında her şeyi biliyoruz, ama "parça" hakkında en iyi tahminimiz yazı–tura.

Tek istisna: ortak ölçüm Tüm kübitleri aynı tabanda ölçtüğünüzde sonuçlar her zaman birbirini doğrular. Üç kübitlik standart GHZ'de hep ya 000, ya 111 okursunuz; arada 010 ya da 101 görmezsiniz. Bu, tek bir kollektif sesin NN kübitten birden konuşması gibidir.

Matematiksel ifadesi

GHZ durumu (genel form) NN kübit için: GHZN=12(0N+1N)\ket{GHZ_N} = \frac{1}{\sqrt{2}}\bigl(\ket{0}^{\otimes N} + \ket{1}^{\otimes N}\bigr) Üç kübitlik standart formda bu sadeleşir: GHZ=12(000+111)\ket{GHZ} = \frac{1}{\sqrt{2}}\bigl(\ket{000} + \ket{111}\bigr)

Katsayı 12\tfrac{1}{\sqrt{2}} Bell durumundakiyle aynı sebep: olasılıkların toplamı 1 olmalı. İki olası dünya (hep-0 ve hep-1) %50–%50 paylaşır; 122+122=1|\tfrac{1}{\sqrt{2}}|^2 + |\tfrac{1}{\sqrt{2}}|^2 = 1.

0N\ket{0}^{\otimes N} notasyonu "NN tane 0\ket{0}'ın tensör çarpımı" anlamına gelir; |0⟩⊗|0⟩⊗|0⟩'ı kompakt yazma yolu. Tensör çarpımı, çoklu kübit sistemlerini matematiksel olarak birleştirme işlemidir; iki bağımsız kübitin hep birlikte düşünülmesini sağlar.

Anahtar fikir GHZ, "NN kübit aynı anda ya hep 0 ya hep 1" formülünün kuantum karşılığıdır. Tekil kübitlerin "kendine ait" bir değeri yoktur; bu değer ancak ölçüm anında doğar ve doğduğu an diğer N1N-1 kübit için kesinleşir.

Bell durumlarından farkı

Bell durumlarının doğal genişlemesi olsa da GHZ, sayısal olarak gerçek bir kalitatif sıçrama yapar. Üç ya da daha fazla kübitin dolanıklığı, fizik tarihinde "yerel gizli değişken" tartışmasının kalbine yerleşmiştir.

İstatistik vs. tek atış Bell eşitsizlikleri, klasik gerçekçilikle kuantum mekaniğinin ortalama korelasyonlarda farklı tahmin verdiğini gösterir; sonucu binlerce ölçümün istatistiğiyle savunmamız gerekir. GHZ ise bunun yerine tek bir deterministik öngörü sunar — sonucu yanlış çıkmak için bir kez bile yetiyor.

İki vs. çok partili Bell durumu iki uzak gözlemci için tasarlanmıştır (Alice & Bob); GHZ ise üç ya da daha fazla taraf arasındaki kollektif protokollere doğrudan adapte olur. Üç parti içinde paylaştırılırsa, hiçbir tek taraf sonucu tek başına okuyamaz; sonuca ulaşmak için en az iki taraf el sıkışmak zorundadır. Bu özellik kuantum gizli paylaşımı (QSS) için doğal bir alt yapı kurar.

Neden bu kadar önemli?

GHZ, sadece "büyük Bell" değil; üç ayrı pratik alanın temel taşıdır. Yerel gerçekçiliği deterministik biçimde dışlar, kuantum hata düzeltme kodlarının kalbinde durur ve birden fazla taraf arasındaki güvenli iletişim protokollerine zemin sağlar.

Yerelliğin reddi · GHZ paradoksu

Bell'den daha sert kanıt Klasik fizik, bir nesnenin özelliklerinin gözlem yapılmasa bile önceden tanımlı ve uzayda yerel olması gerektiğini söyler (yerel gizli değişken hipotezi). Bell eşitsizlikleri bu hipotezi istatistiksel olarak dışlar; GHZ ise deterministik olarak dışlar: yapılan tek bir ölçüm bile klasik gerçekçilikle çelişir.

Felsefi sonuç Doğa, ölçülmediği zaman bile "her parçanın kesin değeri vardır" demez. GHZ paradoksu, "yerel + gerçekçi" iki klasik varsayımı aynı anda korumanın mantıksal olarak imkânsız olduğunu gösterir.

Kuantum hata düzeltme zemini

Üç kübit, tek bilgi En basit kuantum hata düzeltme kodları (örn. 3-kübit bit-flip kodu) GHZ benzeri durumlardan türetilir. Mantık şu: tek bir kuantum bilgisini üç kübit arasında dağıtırsak, kübitlerden biri çevreden bozulduğunda (bit-flip hatası), kalan ikisinin korelasyonu hatayı tespit edip düzeltmemize yetecek bilgi taşır.

Stabilizör formalizmi GHZ, daha gelişmiş kodların (Steane, Shor, surface code) yapı taşı olan stabilizör durumlarının basit ama anlamlı bir örneğidir. Bu yüzden "GHZ üretebiliyor musun?" sorusu, donanım kalibrasyonunda küçük bir "sağlık testi" olarak kullanılır.

Çok partili gizli paylaşım (QSS)

Üç tarafın anahtarı Quantum Secret Sharing protokollerinde bir gizli mesaj NN taraf arasında öyle paylaştırılır ki tek bir taraf bilgiyi okuyamaz; çözmek için tüm tarafların ölçümlerini birleştirmesi gerekir. GHZ durumu, bu paylaşımı doğal olarak kurar — çünkü sonuç ancak kollektif ölçümle anlam kazanır.

Klasik karşılığı yok Klasik kriptoda çok partili paylaşım, ortak güvenilir bir aracı veya karmaşık şifreleme teknikleri ister. Kuantum dünyasında ise GHZ'nin kollektif istatistiği bu güvencenin fiziksel yansımasıdır: herhangi bir gözlem girişimi sistemi bozar ve tespit edilebilir.

Pratik vurgu GHZ üretebilmek, donanımın ne kadar "sağlam" dolanıklık tutabildiğinin doğrudan göstergesidir. 2024–2026 arasındaki süperiletken qubit yarışlarında "kaç kübitlik GHZ'yi sadakatle üretebildin?" rekorları haberlerin bir bölümünü oluşturur.

Algoritmanın mantığı · dolanıklık zinciri

GHZ durumu oluşturmak, esasen bir dolanıklık yayılım işlemidir: önce ilk kübiti süperpozisyona sokarız, ardından bu süperpozisyonu sırayla sonraki kübite "kopyalar" gibi davranan zincirleme bir CNOT akışıyla tüm sisteme yayarız. Reçete sade ama derin — algoritmanın güzelliği, NN değiştiğinde devre yapısının değişmemesidir; sadece zincir uzar.

Aşama 1 · süperpozisyon tohumu

H kapısı (Hadamard) İlk kübiti 0\ket{0}'dan (|0⟩ + |1⟩)/√2 süperpozisyonuna alır. Bu adım, "iki olasılığın aynı anda yaşadığı" başlangıç durumunu kurar; tüm GHZ zincirinin tohumudur. q0'ı tek başına ölçseydiniz %50–%50 alırdınız; ölçmüyoruz, sadece ekiyoruz.

Aşama 2 · Bell çiftine genişlet

CNOT(0, 1) İlk kübit kontrol, ikinci kübit hedef olacak şekilde uygulanır. Tam olarak Bell durumu reçetesinin ikinci adımıyla aynıdır — ve sistemi |Φ⁺⟩ = (|00⟩ + |11⟩)/√2 Bell durumuna götürür. Burada GHZ ile Bell ortak bir kökenden başlar.

Aşama 3 · zincirleme yayılım

CNOT(1, 2), CNOT(2, 3), … Bu noktada işin sırrı: ikinci kübit q1 zaten q0 ile dolanık. Şimdi q1'i kontrol, q2'yi hedef olarak kullanan bir CNOT daha uygularsanız, q2 da zincire katılır. İşlemi q3, q4, … için tekrarlarsanız tüm sistem (|00…0⟩ + |11…1⟩)/√2 yani GHZN\ket{GHZ_N} olur.

Yayılım metaforu Zincirleme CNOT'u "kuantum domino" gibi düşünebilirsiniz: q0'a bir nokta atarsınız (Hadamard ile süperpozisyon), o nokta q1'i devirir, q1 q2'yi devirir, …; sonunda tüm dominolar aynı anda hem ayakta hem yatık durumda kalır. Klasik dominolarda olamayacak bu süperpozisyon, GHZ'nin kalbidir.

  1. İlk kübite H uygula — (|0⟩ + |1⟩)/√2 süperpozisyonu kurulur.

  2. İlk kübit kontrol, ikinci kübit hedef olacak şekilde CNOT uygula. Sistem |Φ⁺⟩ Bell durumuna geçer.

  3. İkinci kübit kontrol, üçüncü kübit hedef olacak şekilde bir CNOT daha uygula. Üçüncü kübit zincire katılır → standart üç-kübit GHZ.

  4. Aynı kalıbı ii-inci kübit kontrol, i+1i+1-inci kübit hedef olacak şekilde N1N-1 kez tekrarla. NN kübitlik GHZ elde edilir.

  5. Tüm kübitleri klasik bitlere ölç. Beklenen sonuç: yalnızca 000…0 ve 111…1 ~%50–%50.

Ölçeklenebilirlik notu Devre derinliği N1N-1 CNOT ile doğrusal büyür. Pratik kuantum donanımlarında bu, GHZ'yi NN'in büyük değerlerine kadar üretmeyi zorlaştırır (her CNOT küçük bir hata ekler). Optimize edilmiş alternatifler, "balanced tree" CNOT şeması gibi yapılarla derinliği log2N\log_2 N'e indirebilir.

Qiskit ile uygulama

Aşağıdaki örnek tek dosyada üç kübitlik GHZ durumunu kurar, ölçer ve histogramı yazdırır. Devre H ve CNOT ile dolanıklık zincirini oluşturur; ardından AerSimulator üzerinde 1024 atış çalıştırılır. Ölçeklenebilirlik için kübit sayısı n_qubits değişkeniyle parametrize edildi — tek bir sayıyı değiştirip 5, 7, 10 kübitlik GHZ deneyebilirsiniz.

ghz_state.py Python
from qiskit import QuantumCircuit
from qiskit_aer import AerSimulator
from qiskit.visualization import plot_histogram

# 1. Devre Kurulumu: 3 kübit ve 3 klasik bit
n_qubits = 3
qc = QuantumCircuit(n_qubits, n_qubits)

# 2. GHZ Algoritması Adımları
# Adım 1: İlk kübiti süperpozisyona al
qc.h(0)

# Adım 2: Dolanıklığı yay (zincirleme CNOT)
for i in range(n_qubits - 1):
    qc.cx(i, i + 1)

qc.barrier()

# 3. Ölçüm
qc.measure(range(n_qubits), range(n_qubits))

# 4. Çalıştırma
simulator = AerSimulator()
job = simulator.run(qc, shots=1024)
counts = job.result().get_counts()

print("\nGHZ Durumu Ölçüm Sonuçları (000 ve 111 beklenir):")
print(counts)
qiskit Aer simülatörü · 1024 shot UTF-8 · LF

Kod analizi · satır satır

Importlar QuantumCircuit devre nesnesini taşır; AerSimulator yerel makinemizde gürültüsüz bir kuantum donanımı taklit eder. plot_histogram terminal yerine grafik istemiyorsanız zorunlu değildir; ama 5+ kübitlik GHZ'lere geçtiğinizde sayı yığılması başlar, görsel histogram işinize yarar.

n_qubits = 3 Algoritmayı parametrik tasarlamamızın anahtarı. Bu satırı 5 ya da 7 yaptığınızda devre kodunda hiçbir başka değişiklik gerekmez — döngü otomatik olarak gereken zinciri kurar. GHZ'nin "NN'e ölçeklenir" doğasının kod düzeyinde karşılığı.

qc = QuantumCircuit(n_qubits, n_qubits) NN kübit + NN klasik bit. Klasik bit sayısını kübit sayısıyla eşit tutmak zorunlu değil ama "her kübiti ölçeceğiz" planımızı belgelemenin temiz bir yoludur. range ile beraber kullanılması oldukça pythonic.

qc.h(0) — tohum Algoritmanın tek "Hadamard" satırı. q0 |0⟩'dan (|0⟩ + |1⟩)/√2 süperpozisyonuna geçer. Bu noktadan sonra eklenen her cx bu süperpozisyonu sonraki kübite taşır; ikinci bir Hadamard'a ihtiyaç yoktur.

for i in range(n_qubits - 1): qc.cx(i, i+1) Yapı zarif: i=0i = 0'dan başlayıp N2N-2'ye kadar gider; her adımda qc.cx(i, i+1) "iii+1i+1" yönünde CNOT ekler. 3 kübitlik durumda iki CNOT (q0→q1 ve q1→q2); 7 kübitlik için altı CNOT olur. Devre derinliği N1N-1 ile doğrusal uzar.

qc.barrier() Hesaplamaya etkisi yoktur; sadece qc.draw() ile çizdirildiğinde "hazırlık" ile "ölçüm" arasına dikey bir ayraç koyar. Bunun yanında transpiler'ın ölçüm kapılarını dolanıklık zincirinin ortasına sızdırmasını engeller — kontrollü deneylerde ufak ama önemli bir koruma.

qc.measure(range(n_qubits), range(n_qubits)) Bell devresinin qc.measure([0, 1], [0, 1]) satırının ölçeklenebilir kuzeni. Birinci argüman ölçülecek kübitleri, ikinci argüman bunların düşeceği klasik bitleri belirtir; range(n_qubits) her ikisini de tek hamlede kapsar.

simulator.run(qc, shots=1024) 1024 atış, N=3N = 3 için her senaryoyu (yalnızca iki mümkün: 000 ve 111) çoklu defa örnekler. NN büyürken muhtemel histogram anahtarları aynı kalır (yine sadece "hep 0" ve "hep 1") çünkü diğer tüm kombinasyonların olasılığı sıfırdır. Donanımda gürültü artarsa "kaçak" değerler birikir.

counts {"000": ~512, "111": ~512} gibi bir sözlük bekleriz. Anahtar bit sırası Qiskit konvansiyonuna göre sağdan-sola (en sağdaki c0); ama GHZ devresi simetrik olduğundan üç bit de aynı değeri taşıyacağı için bu detay GHZ özelinde fark etmez.

Histogramda ne görüyoruz? Sadece 000 ve 111 sütunlarının yükselmesi, sistemin GHZ\ket{GHZ} durumunda ölçüldüğünün doğrudan kanıtıdır: tek bir kübit 0 ölçülürse, dolanıklık gereği diğer ikisi de mutlaka 0 çıkmak zorundadır. İdeal simülatörde arada 001, 010 gibi sonuçlar görünmez; gerçek donanımda çoğu zaman küçük bir "kaçak" olarak belirir.
Hızlı deney n_qubits = 5 yapın ve tekrar çalıştırın. Histogramda yalnızca 00000 ve 11111 görmeyi beklersiniz; hem ölçeklenebilirliği görmüş, hem de gerçek bir 5-kübit GHZ üretmiş olursunuz. Ölçüm satırını da silip print(qc.draw()) ile devreyi yazdırırsanız, iki yerine dört CNOT gördüğünüzü teyit edersiniz.

Çalıştırma için tek bir Python ortamında qiskit ve qiskit-aer paketlerinin kurulu olması yeterlidir; kurulumun tek bakışta özeti ana sayfadaki IDE ve çalıştırma bölümündedir. Gerçek donanımda denemek için AerSimulator() satırını QiskitRuntimeService().backend("ibm_brisbane") gibi bir IBM cihazıyla değiştirin; NN'i artırırsanız kübit topolojisinin zinciri destekleyip desteklemediğini kontrol etmeyi unutmayın (backend.coupling_map).

Devre ve doğrulama

Aşağıdaki şema üç kübitlik en yalın GHZ devresidir. Sol uçta q0'a H uygulanır; ardından CNOT domino dizisi (q0→q1, q1→q2) dolanıklığı zincire yayar; en sonda her üç kübit ayrı ayrı ölçülerek klasik kayda yazılır.

GHZ devresi · |GHZ₃⟩ İstemci tarafı SVG · 3 kübit · 1 H + 2 CNOT + 3 ölçüm
q0 q1 q2 c Hadamard H CNOT (0→1) CNOT (1→2) Ölçüm M M M
Kollektif çöküş Bu üçlü dolanıklık, sistemdeki tek bir kübitin bile ölçülmesiyle tüm GHZ sisteminin bir anda ya tamamen 0'a, ya da tamamen 1'e çökmesini sağlar. q0'ı ölçtüğünüzde sonuç ne çıkarsa, q1 ve q2 aynı değeri kesinlikle alır — sistem "bir bütün olarak" karar verir; mesafenin önemi yoktur. Bu yüzden GHZ, kuantum mekaniğinin yerel-gerçekçi açıklamalarını tek bir ölçümle sınayan en ekonomik düşünce deneyidir.
Doğrulama

Şema |GHZ⟩ üretir: GHZ=12(000+111)\ket{GHZ} = \tfrac{1}{\sqrt{2}}\bigl(\ket{000} + \ket{111}\bigr). Kod çıktısında 000 ve 111 yaklaşık %50–%50 görünür; gürültüsüz bir simülatörde 001, 010, 011, 100, 101, 110 sıfıra yakın kalır — devre ve kod birbirini doğrular.

  • 000 ≈ %50
  • 111 ≈ %50
  • diğer 6 kombinasyon ≈ 0
Donanım maliyeti

Devre derinliği N1N - 1 CNOT ile doğrusal büyür. NISQ donanımlarında her CNOT küçük bir hata ekler; N8N \geq 8 üzerinde GHZ sadakati hızla düşer. "Balanced tree" yapısı derinliği log2N\log_2 N'e indirebilir.

Bağlanırlık (coupling map)

Süperiletken kübit donanımlarında her kübit her kübitle CNOT yapamaz; yalnızca komşulara izin verilir. backend.coupling_map ile uygun zincir bulunur — Qiskit transpiler bunu otomatik yapar ama büyük NN'de SWAP ekleyerek devreyi uzatabilir.

Sadakat ölçümü

GHZ üretiminin kalitesi için "GHZ fidelity" özel bir ölçüttür. Pratikte qiskit.quantum_info.state_fidelity veya parity oscillation testleriyle ölçülür; donanım kalibrasyonunda bir referans değerdir.