Dolanıklık ve Superdense Coding

QTEA26 — Perşembe Oturum

Öğr. Gör. Oktay Cesur

2026-03-12

\(\newcommand{\ket}[1]{|#1\rangle}\)

Nerede Kalmıştık?

  • Tek kubitte: \(H\), \(X\), \(Z\)

  • İki kubitte: tensör çarpım, CNOT

  • Önceki kritik fikir: faz bilgisi ölçümde doğrudan görünmez ama girişimde görünür

  • Bugün bu faz bilgisinin iki kubitli bir protokolde nasıl “mesaja” dönüştüğünü göreceğiz

\(X\) Kapısı — Bit Çevirici

  • Klasik NOT kapısının kuantum karşılığı: \(\ket{0}\) ile \(\ket{1}\)’i birbirine çevirir
  • Qiskit: qc.x(q[0])

\[ X\ket{0} = \ket{1} \qquad X\ket{1} = \ket{0} \]

\[ X = \begin{pmatrix}0 & 1 \\ 1 & 0\end{pmatrix} \]

\(Z\) Kapısı — Faz Çevirici

\[ Z = \begin{pmatrix}1 & 0 \\ 0 & -1\end{pmatrix} \]

\[ Z\ket{0} = \ket{0} \qquad Z\ket{1} = -\ket{1} \]

  • \(\ket{0}\)’ı değiştirmez, \(\ket{1}\)’e eksi işareti koyar
  • Hesaplama bazında ölçüm sonucunu değiştirmez
  • Ama süperpozisyonda girişimi etkiler: \(Z\ket{+} = \ket{-}\)
  • Qiskit: qc.z(q[0])

\(H\) Kapısı — Hadamard

  • Hesaplama bazı \(\{\ket{0}, \ket{1}\}\) ile Hadamard bazı \(\{\ket{+}, \ket{-}\}\) arasında geçiş sağlar
  • Qiskit: qc.h(q[0])

\[ H\ket{0} = \frac{1}{\sqrt{2}}(\ket{0}+\ket{1}) = \ket{+} \qquad H\ket{1} = \frac{1}{\sqrt{2}}(\ket{0}-\ket{1}) = \ket{-} \]

\[ H = \frac{1}{\sqrt{2}}\begin{pmatrix}1 & 1 \\ 1 & -1\end{pmatrix} \]

CNOT Kapısı — İki Kubitli Kapı

  • İki kubit üzerinde çalışır: kontrol ve hedef
  • Kontrol \(\ket{1}\) ise hedefe \(X\) uygular; \(\ket{0}\) ise dokunmaz
  • Qiskit: qc.cx(q[0], q[1])
Giriş Çıkış
\(\ket{00}\) \(\ket{00}\)
\(\ket{01}\) \(\ket{01}\)
\(\ket{10}\) \(\ket{11}\)
\(\ket{11}\) \(\ket{10}\)

\[ \mathrm{CNOT} = \begin{pmatrix}1&0&0&0\\0&1&0&0\\0&0&0&1\\0&0&1&0\end{pmatrix} \]

https://bloch.kherb.io/

Phase Kickback

Hedef kubit \(\ket{-}\) durumundayken CNOT uygulanırsa:

\[ \mathrm{CNOT}\ket{+}\ket{-} = \ket{-}\ket{-} \]

\[ \mathrm{CNOT}\bigl(\alpha\ket{0}+\beta\ket{1}\bigr)\ket{-} = \alpha\ket{0}\ket{-} - \beta\ket{1}\ket{-} \]

  • Hedef kubit değişmez
  • Kontrol kubitinin \(\ket{1}\) bileşeni eksi faz kazanır
  • Faz, hedeften kontrole “geri tepiyor”

Problem Neydi?

  • Klasik dünyada 1 fiziksel taşıyıcı gönderirseniz en fazla 1 klasik bit taşırsınız

  • Burada soru şu:

  • Önceden paylaşılmış dolanıklık varsa, tek kubit göndererek 2 klasik bit iletebilir miyiz?

  • Cevap: Evet

Bell Durumu Oluşturma

Başlangıç:

\[ \ket{00} \]

Adım 1: Birinci kubite Hadamard:

\[ \ket{00} \xrightarrow{H \otimes I} \frac{1}{\sqrt{2}}(\ket{00}+\ket{10}) \]

Adım 2: CNOT:

\[ \frac{1}{\sqrt{2}}(\ket{00}+\ket{10}) \xrightarrow{\mathrm{CNOT}} \frac{1}{\sqrt{2}}(\ket{00}+\ket{11}) \]

Dolanıklık Tam Olarak Ne Demek?

\[ \ket{\Phi^+}=\frac{1}{\sqrt{2}}(\ket{00}+\ket{11}) \]

  • Bu durum iki ayrı tek-kubit durumunun çarpımı olarak yazılamaz

  • Yani

\[ \ket{\Phi^+} \neq \ket{u} \otimes \ket{v} \]

  • Ölçüm yapıldığında sonuçlar korelasyonludur

  • Ama bu sadece “önceden belirlenmiş iki gizli bit” anlamına gelmez

Dolanıklık ≠ Klasik Korelasyon

  • Klasik korelasyon: iki zarfa önceden aynı renk kâğıt koymak

  • Kuantum dolanıklık: ölçümden önce tek tek sonuçlar belirli değildir

  • Ölçüm bazı bazlarda korelasyon verir; bazı bazlarda klasik gizli değişken modeli yetersiz kalır

  • Bu fark Bell testleriyle deneysel olarak doğrulanmıştır

Protokolün Kaynağı: Paylaşılmış Bell Çifti

Asja ve Balvis başlangıçta şu durumu paylaşsın:

\[ \ket{\Phi^+}=\frac{1}{\sqrt{2}}(\ket{00}+\ket{11}) \]

  • Asja ilk kubiti alır

  • Balvis ikinci kubiti alır

  • Bu hazırlık mesajdan önce yapılır

  • Mesaj anında Asja yalnızca kendi kubitine dokunur

Kodlama Fikri

Asja göndermek istediği iki bitte, kendi kubitine sadece yerel kapılar uygular:

Mesaj İşlem Oluşan Bell durumu
\(00\) \(I\) \(\ket{\Phi^+}=\frac{1}{\sqrt{2}}(\ket{00}+\ket{11})\)
\(01\) \(X\) \(\ket{\Psi^+}=\frac{1}{\sqrt{2}}(\ket{01}+\ket{10})\)
\(10\) \(Z\) \(\ket{\Phi^-}=\frac{1}{\sqrt{2}}(\ket{00}-\ket{11})\)
\(11\) \(XZ\) (veya \(ZX\), global faz farkıyla) \(\ket{\Psi^-}=\frac{1}{\sqrt{2}}(\ket{01}-\ket{10})\)

Neden X ve Z Yeterli?

  • \(X\) bit bilgisini değiştirir: \(\ket0 \leftrightarrow \ket1\)

  • \(Z\) faz bilgisini değiştirir: \(\ket1\) bileşenine eksi koyar

  • Bell çifti üzerinde bu iki işlem birlikte dört farklı, ortogonal durum üretir

  • Yani iki klasik bit için tam dört ayırt edilebilir kuantum durumumuz vardır

Asja Ne Gönderiyor?

  • Asja iki biti doğrudan “bit dizisi” olarak göndermiyor

  • Kendi kubitini, mesaja karşılık gelen Bell durumunun parçası hâline getirip gönderiyor

  • Gönderilen tek kubit, ancak Balvis’in elindeki diğer kubitle birlikte anlam kazanıyor

Çözme Devresi (Balvis)

Asja kubitini gönderince Balvis artık iki kubiti de elinde tutar.

Uyguladığı devre:

  1. CNOT(Asja, Balvis)

  2. H(Asja)

  3. Ölçüm

Bu devre Bell bazını standart baza çevirir:

\[ \ket{\Phi^+} \to \ket{00},\quad \ket{\Psi^+} \to \ket{01},\quad \ket{\Phi^-} \to \ket{10},\quad \ket{\Psi^-} \to \ket{11} \]

Bir Örnek: Mesaj = 10

Başlangıç:

\[ \ket{\Phi^+}=\frac{1}{\sqrt{2}}(\ket{00}+\ket{11}) \]

Asja, \(10\) göndermek için \(Z\) uygular:

\[ \frac{1}{\sqrt{2}}(\ket{00}+\ket{11}) \xrightarrow{Z \otimes I} \frac{1}{\sqrt{2}}(\ket{00}-\ket{11}) \]

Balvis çözme devresini uygular:

\[ \frac{1}{\sqrt{2}}(\ket{00}-\ket{11}) \xrightarrow{\mathrm{CNOT}} \frac{1}{\sqrt{2}}(\ket{00}-\ket{10}) \xrightarrow{H \otimes I} \ket{10} \]

Devreyi Bir Bütün Olarak Gör

from qiskit import QuantumRegister, ClassicalRegister, QuantumCircuit
from qiskit_aer import AerSimulator

all_pairs = ['00', '01', '10', '11']

for pair in all_pairs:
    a, b = int(pair[0]), int(pair[1])
    q = QuantumRegister(2, "q")
    c = ClassicalRegister(2, "c")
    qc = QuantumCircuit(q, c)

    # Paylaşılan Bell çifti
    qc.h(q[0])
    qc.cx(q[0], q[1])

    # Asja'nın kodlaması
    if a == 1:
        qc.z(q[0])
    if b == 1:
        qc.x(q[0])

    qc.barrier()

    # Balvis'in çözmesi
    qc.cx(q[0], q[1])
    qc.h(q[0])
    qc.measure(q, c)

    counts = AerSimulator().run(qc, shots=256).result().get_counts(qc)
    print(pair, counts)

Beklenen Sonuçlar

Gönderilen mesaj Beklenen ölçüm
00 00
01 01
10 10
11 11
  • Simülatörde her mesaj tek bir sonuca çöküyor

  • Çünkü kullandığımız dört Bell durumu ortogonal

  • Ortogonal durumlar uygun bazda hatasız ayırt edilebilir

Burada Gerçek Kazanç Ne?

  • İletişim anında sadece 1 kubit gönderildi

  • Ama karşı taraf 2 klasik bit elde etti

  • Kazanç, önceden paylaşılmış dolanıklığın iletişim kaynağı olarak kullanılmasından geliyor

  • Yani superdense coding, dolanıklık + tek kubit iletim kombinasyonudur

Sınırlama ve Doğru Yorum

  • Bu protokol ışıktan hızlı iletişim sağlamaz

  • Dolanıklık tek başına mesaj taşımaz

  • Asja’nın kubiti fiziksel olarak Balvis’e gitmeden Balvis mesajı çıkaramaz

  • Yani klasik nedensellik ihlal edilmiyor

Superdense Coding ve Teleportation İlişkisi

  • İkisi de Bell çifti kullanır

  • Superdense coding: 1 kubit gönder, 2 klasik bit elde et

  • Teleportation: 2 klasik bit gönder, 1 bilinmeyen kubit durumu aktar

  • İkisi birbirinin yapısal “tersi” gibi düşünülebilir

Özet

  • Bell durumu, yerel X ve Z işlemleriyle dört farklı Bell durumuna dönüştürülebilir

  • Bu dört durum iki klasik bitlik mesaj uzayına karşılık gelir

  • Balvis CNOT + H ile Bell bazını standart baza çevirip mesajı okur

  • Protokolün gücü, önceden paylaşılmış dolanıklığın iletişim kaynağı olarak kullanılmasından gelir