Lumaktaw sa pangunahing nilalaman

Discretization ng mga error

Sa ngayon, tinalakay na natin ang mga XX error at ZZ error sa konteksto ng 9-qubit Shor code, at sa seksyong ito ay pag-aaralan natin ang mga arbitrary na error. Mahahanap natin na, para harapin ang ganitong mga error, hindi na kailangan pang gumawa ng iba kaysa sa mga nabanggit na natin; ang kakayahang i-correct ang mga XX error, ZZ error, o pareho, ay nagbibigay ng kakayahang i-correct ang mga arbitrary na error. Ang penomenong ito ay tinatawag minsan na discretization ng mga error.

Mga unitary qubit error​

Magsimula tayo sa single-qubit na unitary na mga error. Halimbawa, ang ganitong error ay maaaring kumatawan sa napakaliit na pag-ikot ng Bloch sphere, na posibleng nagpapakita ng error na dulot ng isang gate na hindi perpekto. O maaari itong maging anumang iba pang unitary na operasyon sa isang qubit at hindi kailangang malapit sa identity.

Maaaring mukhang mahirap ang pag-correct ng ganitong mga error. Pagkatapos ng lahat, walang katapusang bilang ng posibleng ganitong mga error, at hindi makatotohanan na matukoy natin nang eksakto ang bawat error at bawiin ito. Gayunpaman, basta maari tayong mag-correct ng bit-flip, phase-flip, o pareho, magtatagumpay tayo sa pag-correct ng anumang arbitrary na single-qubit unitary error gamit ang mga pamamaraang inilarawan kanina sa araling ito.

Para maintindihan kung bakit ganito, kailangan muna nating kilalanin na maaari nating ipahayag ang anumang 2×22 \times 2 unitary matrix U,U, na kumakatawan sa isang error sa isang qubit, bilang linear combination ng apat na Pauli matrices (kasama ang identity matrix).

U=αI+βX+γY+δZU = \alpha \mathbb{I} + \beta X + \gamma Y + \delta Z

Tulad ng makikita natin, kapag pinatakbo ang mga error detection circuit, ang mga sukat na nagbibigay sa atin ng syndrome bits ay epektibong nagko-collapse ng estado ng encoding nang probabilistiko sa isa kung saan naganap na ang isang error (o kawalan ng error) na kinakatawan ng isa sa apat na Pauli matrices. (Sumusunod mula sa katotohanan na ang UU ay unitary na ang mga numerong α,\alpha, β,\beta, γ,\gamma, at δ\delta ay dapat matugunan ang ∣α∣2+∣β∣2+∣γ∣2+∣δ∣2=1,\vert\alpha\vert^2 + \vert\beta\vert^2 + \vert\gamma\vert^2 + \vert\delta\vert^2 = 1, at sa katunayan, ang mga halagang ∣α∣2,\vert\alpha\vert^2, ∣β∣2,\vert\beta\vert^2, ∣γ∣2,\vert\gamma\vert^2, at ∣δ∣2\vert\delta\vert^2 ang mga probabilidad kung saan nagko-collapse ang encoded state sa isa kung saan naganap ang kaukulang Pauli error.)

Para ipaliwanag kung paano ito gumagana nang mas detalyado, magiging maginhawa ang paggamit ng mga subscript para ipakita kung aling qubit ang pinatatakbo ng isang partikular na qubit unitary operation. Halimbawa, gamit ang Qiskit qubit numbering convention (Q8,Q7,…,Q0)(\mathsf{Q}_8,\mathsf{Q}_7,\ldots,\mathsf{Q}_0) para bilangan ang 9 na qubit na ginagamit para sa Shor code, mayroon tayong mga ekspresyong ito para sa iba't ibang unitary operations sa single qubits, kung saan sa bawat kaso ay ini-tensor natin ang unitary matrix sa identity matrix sa bawat ibang qubit.

X0=I⊗I⊗I⊗I⊗I⊗I⊗I⊗I⊗XZ4=I⊗I⊗I⊗I⊗Z⊗I⊗I⊗I⊗IU7=I⊗U⊗I⊗I⊗I⊗I⊗I⊗I⊗I\begin{aligned} X_0 & = \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes X \\[1.5mm] Z_4 & = \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes Z \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \\[1.5mm] U_7 & = \mathbb{I} \otimes U \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \otimes \mathbb{I} \end{aligned}

Kaya, sa partikular, para sa isang partikular na qubit unitary operation U,U, maaari nating tukuyin ang aksyon ng UU na inilapat sa qubit kk sa pamamagitan ng sumusunod na formula, na katulad ng nauna maliban na ang bawat matrix ay kumakatawan sa operasyong inilapat sa qubit k.k.

Uk=αIk+βXk+γYk+δZkU_k = \alpha \mathbb{I}_k + \beta X_k + \gamma Y_k + \delta Z_k

Ngayon ipagpalagay na ang ∣ψ⟩\vert\psi\rangle ay ang 9-qubit encoding ng isang qubit state. Kung ang error UU ay naganap sa qubit k,k, makukuha natin ang estado Uk∣ψ⟩,U_k \vert\psi\rangle, na maaaring ipahayag bilang linear combination ng mga Pauli operations na kumikilos sa ∣ψ⟩\vert\psi\rangle tulad ng sumusunod.

Uk∣ψ⟩=α∣ψ⟩+βXk∣ψ⟩+γYk∣ψ⟩+δZk∣ψ⟩U_k \vert\psi\rangle = \alpha \vert\psi\rangle + \beta X_k\vert\psi\rangle + \gamma Y_k\vert\psi\rangle + \delta Z_k\vert\psi\rangle

Sa puntong ito, gawin natin ang substitusyon na Y=iXZ.Y = iXZ.

Uk∣ψ⟩=α∣ψ⟩+βXk∣ψ⟩+iγXkZk∣ψ⟩+δZk∣ψ⟩U_k \vert\psi\rangle = \alpha \vert\psi\rangle + \beta X_k\vert\psi\rangle + i \gamma X_kZ_k\vert\psi\rangle + \delta Z_k\vert\psi\rangle

Ngayon isaalang-alang ang mga hakbang ng error-detection at correction na inilarawan kanina. Maaari nating isipin ang mga measurement outcome para sa tatlong inner code parity checks kasama ang isa para sa outer code nang sama-sama bilang isang syndrome na binubuo ng 8 bits. Bago pa man ang aktwal na standard basis measurements na gumagawa ng mga syndrome bits na ito, ang estado ay may sumusunod na anyo.

α ∣I syndrome⟩⊗∣ψ⟩+β ∣Xk syndrome⟩⊗Xk∣ψ⟩+iγ ∣XkZk syndrome⟩⊗XkZk∣ψ⟩+δ ∣Zk syndrome⟩⊗Zk∣ψ⟩\begin{gathered} \alpha\,\vert \mathbb{I} \text{ syndrome}\rangle \otimes \vert\psi\rangle \\ + \beta\,\vert X_k \text{ syndrome}\rangle \otimes X_k\vert\psi\rangle \\ + i \gamma\,\vert X_k Z_k \text{ syndrome}\rangle \otimes X_k Z_k\vert\psi\rangle \\ + \delta\,\vert Z_k \text{ syndrome}\rangle \otimes Z_k\vert\psi\rangle \end{gathered}

Para maging malinaw, mayroon na tayong dalawang sistema sa puntong ito. Ang sistema sa kaliwa ay ang 8 qubits na susukathin natin para makuha ang syndrome, kung saan ang ∣I syndrome⟩,\vert \mathbb{I} \text{ syndrome}\rangle, ∣Xk syndrome⟩,\vert X_k \text{ syndrome}\rangle, at iba pa, ay tumutukoy sa anumang 8-qubit standard basis state na naaayon sa kaukulang error (o kawalan ng error). Ang sistema sa kanan ay ang 9 qubits na ginagamit natin para sa encoding.

Pansinin na ang dalawang sistemang ito ay magkaugnay na ngayon (sa pangkalahatan), at ito ang susi kung bakit ito gumagana. Sa pag-sukat ng syndrome, ang estado ng 9 qubits sa kanan ay epektibong nagco-collapse sa isa kung saan ang isang Pauli error na naaayon sa nasukat na syndrome ay nailapat sa isa sa mga qubit. Bukod dito, ang syndrome mismo ay nagbibigay ng sapat na impormasyon para mabawi natin ang error at maibalik ang orihinal na encoding ∣ψ⟩.\vert\psi\rangle.

Sa partikular, kung ang mga syndrome qubit ay nasukat at ang mga angkop na correction ay ginawa, makukuha natin ang isang estado na maaaring ipahayag bilang density matrix,

ξ⊗∣ψ⟩⟨ψ∣,\xi \otimes \vert\psi\rangle\langle\psi\vert,

kung saan

ξ=∣α∣2∣I syndrome⟩⟨I syndrome∣+∣β∣2∣Xk syndrome⟩⟨Xk syndrome∣+∣γ∣2∣XkZk syndrome⟩⟨XkZk syndrome∣+∣δ∣2∣Zk syndrome⟩⟨Zk syndrome∣.\begin{aligned} \xi = & \vert\alpha\vert^2 \vert \mathbb{I} \text{ syndrome}\rangle\langle \mathbb{I} \text{ syndrome}\vert \\[1mm] & + \vert\beta\vert^2 \vert X_k \text{ syndrome}\rangle\langle X_k \text{ syndrome}\vert\\[1mm] & + \vert\gamma\vert^2 \vert X_k Z_k \text{ syndrome}\rangle\langle X_k Z_k \text{ syndrome}\vert\\[1mm] & + \vert\delta\vert^2 \vert Z_k \text{ syndrome}\rangle\langle Z_k \text{ syndrome}\vert. \end{aligned}

Mahalaga, ito ay isang product state: mayroon tayong orihinal, hindi koruptong encoding bilang right-hand tensor factor, at sa kaliwa ay mayroon tayong density matrix ξ\xi na naglalarawan ng random na error syndrome. Wala nang ugnayan sa sistema sa kanan, na siyang pinagmamalasakitan natin, dahil naitama na ang mga error. Sa puntong ito maaari na nating itapon ang mga syndrome qubit o i-reset ang mga ito para magamit muli. Ganito ang pag-aalis ng randomness — o entropy — na nilikha ng mga error mula sa sistema.

Ito ang discretization ng mga error para sa espesyal na kaso ng mga unitary error. Sa esensya, sa pag-sukat ng syndrome, epektibong ini-project natin ang error sa isang error na inilarawan ng isang Pauli matrix.

Sa unang tingin, maaaring mukhang napakagaling para maging totoo na maaari nating i-correct ang mga arbitrary na unitary error tulad nito, kahit na ang mga error na napakaliit at halos hindi kapansin-pansin sa kanilang sarili. Ngunit, ang mahalagang maunawaan dito ay ito ay isang unitary error sa isang single na qubit, at sa disenyo ng code, ang isang single-qubit na operasyon ay hindi maaaring baguhin ang estado ng logical qubit na na-encode. Ang kaya nitong gawin ay ilipat ang estado mula sa subspace ng mga valid na encoding, ngunit pagkatapos ang mga error detection ay nagco-collapse ng estado at ang mga correction ay nagbabalik nito sa dati.

Mga arbitrary na qubit error​

Sa wakas, isaalang-alang natin ang mga arbitrary na error na hindi kailangang unitary. Sa katumpakan, isasaalang-alang natin ang isang error na inilarawan ng isang arbitrary na qubit channel Φ.\Phi. Halimbawa, ito ay maaaring isang dephasing o depolarizing channel, isang reset channel, o isang kakaibang channel na hindi pa natin naiisip noon.

Ang unang hakbang ay isaalang-alang ang anumang Kraus representation ng Φ.\Phi.

Φ(σ)=∑jAjσAj†\Phi(\sigma) = \sum_j A_j \sigma A_j^{\dagger}

Ito ay isang qubit channel, kaya ang bawat AjA_j ay isang 2×22\times 2 matrix, na maaari nating ipahayag bilang linear combination ng mga Pauli matrices.

Aj=αjI+βjX+γjY+δjZA_j = \alpha_j \mathbb{I} + \beta_j X + \gamma_j Y + \delta_j Z

Nagbibigay-daan ito sa atin na ipahayag ang aksyon ng error na Φ\Phi sa isang piniling qubit kk sa pamamagitan ng mga Pauli matrices tulad ng sumusunod.

Φk(∣ψ⟩⟨ψ∣)=∑j(αjIk+βjXk+γjYk+δjZk)∣ψ⟩⟨ψ∣(αjIk+βjXk+γjYk+δjZk)†\Phi_k \bigl( \vert\psi\rangle\langle\psi\vert\bigr) = \sum_j (\alpha_j \mathbb{I}_k + \beta_j X_k + \gamma_j Y_k + \delta_j Z_k) \vert\psi\rangle\langle\psi\vert (\alpha_j \mathbb{I}_k + \beta_j X_k + \gamma_j Y_k + \delta_j Z_k)^{\dagger}

Sa madaling salita, pinalawak lang natin ang lahat ng ating Kraus matrices bilang mga linear combination ng Pauli matrices.

Kung ngayon ay kinukuha at sinusukat natin ang error syndrome, at ini-correct ang mga error na naihayag, makakakuha tayo ng katulad na uri ng estado tulad ng nasa kaso ng unitary error:

ξ⊗∣ψ⟩⟨ψ∣,\xi \otimes \vert\psi\rangle\langle\psi\vert,

kung saan sa pagkakataong ito mayroon tayong

ξ=∑j(∣αj∣2∣I syndrome⟩⟨I syndrome∣+∣βj∣2∣Xk syndrome⟩⟨Xk syndrome∣+∣γj∣2∣XkZk syndrome⟩⟨XkZk syndrome∣+∣δj∣2∣Zk syndrome⟩⟨Zk syndrome∣).\begin{aligned} \xi = & \sum_j \Bigl(\vert\alpha_j\vert^2 \vert \mathbb{I} \text{ syndrome}\rangle\langle \mathbb{I} \text{ syndrome}\vert \\[-3mm] & \qquad + \vert\beta_j\vert^2 \vert X_k \text{ syndrome}\rangle\langle X_k \text{ syndrome}\vert\\[2mm] & \qquad + \vert\gamma_j\vert^2 \vert X_k Z_k \text{ syndrome}\rangle\langle X_k Z_k \text{ syndrome}\vert\\[2mm] & \qquad + \vert\delta_j\vert^2 \vert Z_k \text{ syndrome}\rangle\langle Z_k \text{ syndrome}\vert \Bigr). \end{aligned}

Ang mga detalye ay medyo mas kumplikado at hindi ipinapakita dito. Konsepto, ang ideya ay kapareho ng unitary na kaso.

Generalization​

Ang discretization ng mga error ay nagge-generalize sa ibang mga quantum error-correcting code, kasama na ang mga maaaring makatuklas at makapag-correct ng mga error sa maraming qubit. Sa ganitong mga kaso, ang mga error sa maraming qubit ay maaaring ipahayag bilang mga tensor products ng mga Pauli matrices, at naaayon na ang iba't ibang syndrome ay nagtatakda ng mga Pauli operation corrections na maaaring isagawa sa maraming qubit sa halip na isang qubit lamang.

Muli, sa pag-sukat ng syndrome, ang mga error ay epektibong na-project o na-collapse sa isang discrete na hanay ng mga posibilidad na kinakatawan ng mga tensor products ng mga Pauli matrices, at sa pag-correct ng mga Pauli error na iyon, mababawi natin ang orihinal na encoded state. Samantala, anumang randomness na nalilikha sa proseso ay inililipat sa mga syndrome qubit, na itinatapon o niri-reset, kaya tinatanggal ang randomness na nalilikha sa prosesong ito mula sa sistema na nag-iimbak ng encoding.