I Eksperimento tikslai

Ko ismoksite siame eksperimente

  • Suprasti kvantines busenos tomografijos (QST) principus ir butinybe
  • Ismokti atkurti vieno kubito tankio matrica is matavimu triju baziu atzvigiu
  • Atlikti dvieju kubitu busenos tomografija naudojant 9 ar 16 matavimu
  • Apskaiciuoti Stokes (Blocho) parametrus is eksperimentiniu duomenu
  • Ivertinti atkurtos busenos tiksluma (fidelity) lyginant su idealiu atitikmeniu
  • Atlikti Bell busenu tomografija SpinQ Gemini platformoje

II Teorinis pagrindas

Kodel reikia tomografijos?

Kvantines busenos negalima visapusiskai apibūdinti vienu matavimu. Matavimas sugriuna kvantine superpozicija ir pateikia tik viena is galimu rezultatu. Norint visapusiskai atkurti busena — t.y. nustatyti visa tankio matrica — reikia atlikti matavimus keliose skirtingose bazese ir statistiskai apdoroti rezultatus.

Vieno kubito tankio matrica

Bet kokia vieno kubito busena apibūdinama 2x2 tankio matrica rho, kuria galima isreiksti Pauli matricu bazeje:

rho = (1/2)(I + S_x * sigma_x + S_y * sigma_y + S_z * sigma_z) Vieno kubito tankio matrica per Stokes (Blocho) parametrus

Cia S_x, S_y, S_z yra Stokes (arba Blocho) parametrai, atitinkantys busenos vektoriaus projekcijas Blocho sferoje. Jie nustatomi is matavimu triju ortogonaliu baziu atzvigiu:

S_z parametras

Matuojamas standartinėje Z bazeje {|0>, |1>}. S_z = P(|0>) - P(|1>), kur P yra tikimybe. Tiesiogiai gaunamas is BMR spektro.

S_x parametras

Matuojamas X bazeje {|+>, |->}. Taikomas H vartai pries matavima: S_x = P(|+>) - P(|->). BMR: taikomas Ry(-pi/2) impulsas.

S_y parametras

Matuojamas Y bazeje {|+i>, |-i>}. Taikomas S*H pries matavima: S_y = P(|+i>) - P(|-i>). BMR: taikomas Rx(pi/2) impulsas.

Dvieju kubitu tomografija

Dvieju kubitu busena apibūdinama 4x4 tankio matrica su 15 nepriklausomu realiu parametru. Tankio matrica isreiskiama kaip:

rho = (1/4) * SUM(i,j=0..3) S_ij * (sigma_i kron sigma_j) Dvieju kubitu tankio matrica per Stokes parametrus (sigma_0 = I)

Norint atkurti pilna dvieju kubitu tankio matrica, reikia ismatuoti 16 Stokes parametru S_ij (arba 15 nepriklausomu, nes S_00 = 1). Kiekvienas S_ij gaunamas matuojant atitinkamu Pauli operatoriu sandauga.

MatavimasPriesmatavimo operacijaBMR realizacijaNustatomi parametrai
ZZI kron ITiesioginis spektrasS_zz, S_z0, S_0z
ZXI kron Ry(-pi/2)pi/2 impulsas q1S_zx
ZYI kron Rx(pi/2)pi/2 impulsas q1S_zy
XZRy(-pi/2) kron Ipi/2 impulsas q0S_xz
XXRy(-pi/2) kron Ry(-pi/2)pi/2 impulsai abiemS_xx
XYRy(-pi/2) kron Rx(pi/2)Maisyti impulsaiS_xy
YZRx(pi/2) kron Ipi/2 impulsas q0S_yz
YXRx(pi/2) kron Ry(-pi/2)Maisyti impulsaiS_yx
YYRx(pi/2) kron Rx(pi/2)pi/2 impulsai abiemS_yy

Busenos tikslumas (Fidelity)

Rekonstruotos busenos kokybe ivertinama lyginant su idealiu atitikmeniu. Fidelity apibreziamas kaip:

F(rho, sigma) = [ Tr( sqrt( sqrt(rho) * sigma * sqrt(rho) ) ) ]^2 Fidelity tarp dvieju tankio matricu rho ir sigma

Kai viena is busenu yra grynoji |psi>, formule supaprasteja: F = <psi| rho |psi>. Fidelity = 1 rodo tobula atitikima, o F = 0 — visiska nesuderinamuma.

III Vieno kubito tomografijos simuliatorius

Pasirinkite kvantine busena ir stebekite, kaip tomografijos procesas atkuria tankio matrica is matavimu triju bazese. Kiekvienas matavimas nustato atitinkama Stokes parametra.

Interaktyvus tomografijos simuliatorius

Matavimo rezultatai
Z
S_z = 1.00
X
S_x = 0.00
Y
S_y = 0.00
Blocho vektorius
Atkurta tankio matrica
Busenos savybes
Stokes parametrai
S = (0.00, 0.00, 1.00)
Grynumas (Tr(rho^2))
1.000 (grynoji)
Fidelity su idealia busena
F = 1.000

IV Dvieju kubitu tomografija

Dvieju kubitu tomografija reikalauja matavimu devintuose (arba sesioliktuose) skirtinguose baziniuose rinkinuose. Pasirinkite busena ir stebekite pilna 4x4 tankio matricos rekonstrukcija.

Dvieju kubitu tomografijos simuliatorius

4x4 tankio matrica (Re dalis)
Populiaciju paskirstymas
Busena
|00>
Grynumas Tr(rho^2)
1.000 (grynoji)
Concurrence (susipynimas)
C = 0.000
Fidelity
F = 1.000

V Triuksmo itaka tomografijai

Realiuose eksperimentuose matavimo rezultatai turi statistini triuksma del baigtinio matavimu skiaciaus. Reguliuokite triuksmo lygi ir stebekite, kaip jis veikia atkurtos tankio matricos tiksluma.

Triuksmo simuliatorius

Matavimu skaicius (N) 100
Papildomas triuksmas (dekoherencija) 0%
Fidelity su idealia busena
F = 1.000
Statistine paklaida
+/- 0.000
Grynumas
1.000

VI Realizacija SpinQ Gemini platformoje

SpinQ Gemini platformoje kvantines busenos tomografija atliekama naudojant BMR spektro analaze. Kiekviena Stokes parametra galima nustatyti is spektro smaigaliu intensyvumu ir faziu.

Spektrinis matavimas

BMR spektras tiesiogiai atspindi tankio matricos elementus. Keturi smaigaliai dvieju kubitu sistemoje atitinka keturias energetines persejimo daznius.

Priesmatavimo impulsai

Kiekviena Stokes parametra nustatyti reikia atitinkamo sukimo impulsai: Ry(-pi/2) X bazei, Rx(pi/2) Y bazei. Z baze matuojama tiesiogiai.

Signalo apdorojimas

FID signalas transformuojamas Furje transformacija i spektra. Smaigaliu amplitudes ir fazes naudojamos Stokes parametrams apskaiciuoti.

Klaidu saltiniai

Dekoherencija (T1, T2), impulsiu netikslumai, terminis triuksmas ir baigtinis matavimu skaicius riboja rekonstrukcijos tiksluma. Tipine fidelity: 0.90-0.98.

BMR tomografijos protokolas

  • 1. Paruoskite PPS busena ir taikykite norimas operacijas (vartus, algoritma)
  • 2. Atlikite 9 matavimus: kiekvienam kubitu porui taikykite I, Ry(-pi/2) arba Rx(pi/2)
  • 3. Is kiekvieno spektro nustatykite smaigaliu amplitudes ir fazes
  • 4. Apskaiciuokite 16 Stokes parametru S_ij is matavimu duomenu
  • 5. Rekonstruokite tankio matrica: rho = (1/4) * SUM(S_ij * sigma_i kron sigma_j)
  • 6. Ivertinkite fidelity lyginant su tiksline busena

VII Eksperimento procedura

Sistemos inicializacija

Paruoskite SpinQ Gemini sistema ir sukurkite pseudogrynaja busena |00> naudodami laikinio vidurkinimo metoda.

Vieno kubito busenos paruosimas

Sukurkite norima vieno kubito busena (pvz., |+> taikant H vartus). Atlikite tomografija: matuokite Z, X ir Y bazese.

Stokes parametru skaiciavimas

Is kiekvieno matavimo apskaiciuokite S_x, S_y, S_z parametrus. Patikrinkite, ar |S| <= 1 (fizinis apribojimas).

Tankio matricos rekonstrukcija

Apskaiciuokite tankio matrica rho = (I + S_x*sigma_x + S_y*sigma_y + S_z*sigma_z)/2. Patikrinkite savybes: Tr(rho)=1, rho>=0.

Bell busenos paruosimas

Sukurkite Bell busena |Phi+> = (|00>+|11>)/sqrt(2) taikant H(q0) ir CNOT(q0,q1). Tai dvieju kubitu tomografijos objektas.

Dvieju kubitu tomografija

Atlikite 9 matavimus (ZZ, ZX, ZY, XZ, XX, XY, YZ, YX, YY) su atitinkamais priesmatavimo impulsais.

4x4 matricos rekonstrukcija

Apskaiciuokite 16 Stokes parametru ir rekonstruokite pilna 4x4 tankio matrica. Vizualizuokite kaip 3D stulpeliu diagrama.

Fidelity ivertinimas

Apskaiciuokite fidelity F = <psi_ideal|rho_exp|psi_ideal> ir palyginkite su idealiu laukiamu rezultatu. Aptarkite klaidu saltinius.

VIII Kontroliniai klausimai

1. Kiek nepriklausomu parametru apibūdina vieno kubito tankio matrica?

Teisingai! Vieno kubito tankio matrica turi 3 nepriklausomus realius parametrus — Stokes parametrus S_x, S_y, S_z (Blocho vektoriaus komponentus).
Neteisingai. Vieno kubito tankio matrica apibūdinama 3 realiais Stokes parametrais (S_x, S_y, S_z).

2. Kiek matavimu baziu reikia pilnai dvieju kubitu tomografijai?

Teisingai! Dvieju kubitu tomografijai reikia 9 matavimu baziu (3 bazes kiekvienam kubitui: 3x3=9). Kiekvienas matavimas nustato keletą Stokes parametru.
Neteisingai. Reikia 9 matavimu baziu (Z, X, Y kiekvienam kubitui: 3x3=9).

3. Ka rodo fidelity F = 0.95?

Teisingai! Fidelity F = 0.95 rodo, kad eksperimentiskai paruosta busena 95% atitinka tiksline idealia busena. Tai labai geras rezultatas BMR sistemoms.
Neteisingai. Fidelity matuoja atitikima tarp eksperimentines ir idealios busenos: F = 0.95 reiskia 95% atitikima.

4. Kokia operacija reikia atlikti pries matavima, norint nustatyti S_x parametra?

Teisingai! S_x parametras nustatomas matuojant X bazeje, tam reikia Ry(-pi/2) (arba H) priesmatavimo impulsas, kuris konvertuoja X baze i Z baze.
Neteisingai. S_x parametrui reikia Ry(-pi/2) arba Hadamard vartu, kad X baze butu transformuota i matavimo (Z) baze.

5. Ka rodo busenos grynumas (purity) Tr(rho^2) = 0.5?

Teisingai! Vieno kubito atveju Tr(rho^2) = 0.5 rodo maksimaliai maisyta busena (visai nezinoma, ties Blocho sferos centru). Grynoji busena turi Tr(rho^2) = 1.
Neteisingai. Tr(rho^2) = 0.5 vieno kubito atveju reiskia maksimaliai maisyta busena. Grynumas kinta nuo 1/d (maisyta) iki 1 (grynoji).

IX Santrauka

Pagrindiniai rezultatai

  • Kvantines busenos tomografija leidzia pilnai atkurti tankio matrica is matavimu duomenu
  • Vieno kubito tomografija reikalauja matavimu 3 bazese (X, Y, Z) — nustatomi 3 Stokes parametrai
  • Dvieju kubitu tomografija reikalauja 9 baziu kombinaciju — nustatomi 15 nepriklausomu parametru
  • Stokes parametrai tiesiogiai susieti su Blocho vektoriumi ir tankio matricos elementais
  • Fidelity F = Tr(sqrt(sqrt(rho)*sigma*sqrt(rho)))^2 ivertina rekonstrukcijos kokybe
  • Grynumas Tr(rho^2) atskiria grynasias busenas (=1) nuo maisiuju (<1)
  • SpinQ Gemini platformoje tomografija atliekama per BMR spektro analize su priesmatavimo impulsais

X Programinis pavyzdys ir RQmod alternatyva

Kvantines busenos tomografija gali buti aprasoma tiek tiesiogine matavimu seka Python kalboje, tiek deklaratyviai .rqmod modelyje, kuri ResilQ Studio kompiliuoja i ResilQ IR su pilnu matavimu rinkiniu ir SpinQit darba.

Pythonas: vieno kubito tomografija (3 bazes)

Pavyzdys atlieka X, Y, Z baziu matavimus, ivertina Stokes parametrus (rx, ry, rz) ir rekonstruoja tankio matrica ρ = (I + r·σ)/2.

# tomography_1q.py — vieno kubito tankio matricos rekonstrukcija
import numpy as np

# Matavimu rezultatai (4-jose bazese, sigma_x, y, z arba per pries-matavimo H, S†H)
# <sigma_i> = (N_+ - N_-) / N_total
rx, ry, rz = 0.0, 0.0, 0.85          # pvz., beveik |0⟩

I  = np.eye(2)
sx = np.array([[0, 1], [1, 0]])
sy = np.array([[0, -1j], [1j, 0]])
sz = np.array([[1, 0], [0, -1]])

rho = (I + rx*sx + ry*sy + rz*sz) / 2

purity   = np.trace(rho @ rho).real
target   = np.array([[1, 0], [0, 0]])     # |0⟩⟨0|
fidelity = np.trace(target @ rho).real

print("rho =\n", rho.round(3))
print("purity =", round(purity, 3))
print("fidelity =", round(fidelity, 3))

Alternatyva: .rqmod modelis

RQmod modelyje fiksuojamas pilnas tomografijos rinkinys (vienam ar dviems kubitams) ir reikalaujama fidelity tolerancija. ResilQ Studio sugeneruoja visus reikiamus QASM2 darbus, vieną kiekvienai matavimo bazei.

// lab7-tomography.rqmod
audit "lab7-state-tomography" {
  targets = ["spinq-gemini-lab"]

  layers {
    use { runtime, openssl }
  }

  experiment tomography_2q {
    qubits      = [q0, q1]
    prepare     { circuit { h(q0); cx(q0, q1) } }   // Bell |Φ⁺⟩
    bases       = [II, IX, IY, IZ, XI, YI, ZI,
                   XX, XY, XZ, YX, YY, YZ, ZX, ZY, ZZ]
    shots       = 2048
    verify      { fidelity_min = 0.92 }
  }

  backend quantum {
    provider  = spinqit
    emit      = qasm2
    max_width = 2
  }

  output { formats = [json, cbom, qasm] }
}

resilq-q compile lab7-tomography.rqmod --out build/lab7

Apie RQmod

RQmod (ResilQ Studio) — autorius prof. dr. Šarūnas Grigaliūnas — yra deklaratyvi .rqmod kalba ir integruota aplinka postkvantinės kriptografijos rizikai modeliuoti. Vienu šaltinio failu aprašomi audito tikslai, sluoksniai (transit / use / rest), QARS-NI vertinimo langai (Mosca formulė), išvesties formatai (JSON, CBOM, PDF, QASM2) ir pasirinktinai — kvantinis bekendas (SpinQit, OpenQASM2). Tas pats šaltinio failas naudojamas tiek saugumo auditui, tiek edukaciniam SpinQ Gemini eksperimentui.

Daugiau: https://www.rqmod.com