Pagkontrol sa pagkalat ng error
Ang fault-tolerant quantum computation ay katulad ng isang karera sa pagitan ng mga error at ng error correction. Kung sapat na kaunti ang bilang ng mga error, matagumpay na maitutuwid ng error correction ang mga ito; ngunit kung masyadong marami, mabibigo ang error correction.
Dahil dito, kailangang bigyan ng sapat na pansin ang paraan ng pagsasagawa ng quantum computations sa fault-tolerant na mga implementasyon ng mga circuit, upang makontrol ang pagkalat ng error. Ibig sabihin, ang isang error sa isang qubit ay maaaring kumalat sa maraming qubit sa pamamagitan ng pagkilos ng mga gate sa isang quantum circuit, na maaaring magdulot ng dramatikong pagtaas ng bilang ng mga error. Ito ay isang napakahalgang alalahanin, dahil kung hindi natin makontrol ang pagkalat ng error, ang ating mga pagsisikap sa error correction ay mabilis na malulubos ng mga error. Kung, sa kabilang banda, kaya nating kontrolin ang pagkalat ng mga error, mayroon namang pagkakataon ang error correction na makasabay, na nagbibigay-daan sa mga error na matuwid nang sapat para mapatakbo nang maayos ang quantum computation.
Ang simula ng teknikal na talakayan ng isyung ito ay ang pagkilala na ang two-qubit gates (o multiple-qubit gates sa pangkalahatan) ay maaaring magkalat ng mga error, kahit na perpekto ang kanilang paggana. Halimbawa, isaalang-alang ang isang controlled-NOT gate, at ipagpalagay na may error na nangyayari sa control qubit bago pa man isagawa ang controlled-NOT gate. Tulad ng napansin na natin sa aralin na "Correcting quantum errors", ito ay katumbas ng isang error na nangyayari sa parehong qubit pagkatapos isagawa ang controlled-NOT. At katulad ang sitwasyon para sa isang error na kumikilos sa target sa halip na ang control bago pa man isagawa ang controlled-NOT gate.
Ito ay isang pagkalat ng mga error, dahil ang masamang posisyon ng isang o error bago ang controlled-NOT gate ay epektibong ginagawang dalawang error pagkatapos ng controlled-NOT gate. Nangyayari ito kahit perpekto ang controlled-NOT gate, at hindi natin dapat kalimutan na ang isang partikular na controlled-NOT gate ay maaaring mismo ay may ingay, na maaaring lumikha ng mga correlated na error sa dalawang qubit.
Dagdag pa sa ating alalahanin ay ang katotohanan na ang mga kasunod na two-qubit gate ay maaaring magpalat pa ng mga error na ito, gaya ng iminumungkahi ng sumusunod na pigura.
Sa ilang paraan, hindi natin ito maiwasan; hangga't gumagamit tayo ng multiple-qubit gates, laging may potensyal na pagkalat ng error. Gayunpaman, tulad ng tatalakayin natin sa mga subseksyon na susunod, may mga hakbang na maaaring gawin upang limitahan ang pinsalang dulot nito, na nagbibigay-daan sa pamamahala ng mga kumakalat na error.
Mga transversal gate implementationβ
Ang pinakasimpleng kilalang paraan upang mabawasan ang pagkalat ng error sa fault-tolerant quantum circuits ay ang pagpapatupad ng mga gate nang transversally, na nangangahulugang ang pagbuo ng mga gadget para sa mga ito na may isang partikular na simpleng anyo. Partikular, ang mga gadget ay dapat na isang tensor product ng mga operasyon (o, sa madaling salita, isang depth-one quantum circuit), kung saan ang bawat operasyon ay maaari lamang kumilos sa isang qubit posisyon sa loob ng bawat code block na naabot nito. Marahil ito ay pinakamadaling ipaliwanag sa pamamagitan ng mga halimbawa.
Mga halimbawa ng transversal gate implementationβ
Isaalang-alang ang sumusunod na pigura, na nagmumungkahi ng isang transversal na implementasyon ng isang CNOT gate. (Ang partikular na implementasyong ito, kung saan ang mga CNOT ay isinasagawa qubit sa qubit, ay gumagana lamang para sa mga CSS code β ngunit totoo naman, gumagana ito para sa lahat ng CSS code.)
Mayroong dalawang code block sa pigura na ito, bawisa ay inilalarawan na binubuo ng limang qubit (kahit na maaaring mas marami pa, tulad ng naipahiwatig na). Ang circuit sa kanan ay may depth one, at ang bawat CNOT gate ay kumikilos sa isang qubit posisyon sa loob ng bawat block: ang control at target para sa unang CNOT ay ang pinakamataas na qubit (iyon ay, qubit 0 gamit ang Qiskit numbering convention), ang control at target para sa pangalawang CNOT ay ang qubit pangalawa mula sa itaas (iyon ay, qubit 1), at iba pa. Kaya naman, ito ay isang transversal na gadget.
Para sa pangalawang halimbawa β talagang isang klase ng mga halimbawa β isaalang-alang ang anumang Pauli gate. Ang mga Pauli gate ay palaging maaaring ipatupad nang transversally, para sa anumang stabilizer code, sa pamamagitan ng pagbuo ng mga gadget na binubuo ng mga Pauli operation. Partikular, ang bawat Pauli operation sa isang logical qubit na naka-encode ng isang stabilizer code ay maaaring ipatupad nang transversally sa pamamagitan ng pagpili ng naaangkop na Pauli operation sa mga pisikal na qubit na ginagamit para sa encoding. Ito ay naaayon sa isang katotohanang binanggit nang mabilis sa aralin na "Stabilizer formalism": hanggang sa isang global phase, ang mga Pauli operation na nagko-commute sa bawat stabilizer generator ng isang stabilizer code ay kumikilos tulad ng mga Pauli operation sa qubit o mga qubit na naka-encode ng code na iyon.
Bilang isang tiyak na halimbawa, isaalang-alang ang -qubit Shor code, kung saan ang mga standard basis state ay maaaring i-encode tulad ng sumusunod.
Ang isang gate sa logical qubit na naka-encode ng code na ito ay maaaring ipatupad nang transversally ng -qubit Pauli operation na
habang ang isang gate sa logical qubit ay maaaring ipatupad nang transversally ng -qubit Pauli operation na
Ang parehong mga Pauli operation na ito ay may weight na na siyang pinakamababang weight na kinakailangan. (Ang -qubit Shor code ay may distance na kaya ang anumang hindi-identity Pauli operation na may weight na o mas mababa ay natukoy bilang isang error.)
At, para sa ikatlong halimbawa, ang -qubit Steane code (at talagang bawat color code) ay nagbibigay-daan sa transversal na implementasyon ng lahat ng Clifford gate. Nakita na natin kung paano ang mga CNOT gate ay ipinatupad nang transversally para sa anumang CSS code, kaya nananatili pa ring isaalang-alang ang mga at gate. Ang isang Hadamard gate na inilapat sa lahat ng qubit ng Steane code ay katumbas ng na inilapat sa logical qubit na naka-encode nito, habang ang isang gate (kumpara sa isang gate) na inilapat sa lahat ng qubit ay katumbas ng isang logical gate.
Pagkalat ng error para sa mga transversal gadgetβ
Ngayong alam na natin kung ano ang mga transversal na implementasyon ng mga gate, talakayin natin ang kanilang koneksyon sa pagkalat ng error.
Para sa isang transversal na implementasyon ng isang single-qubit gate, mayroon lamang tayong tensor product ng mga single-qubit gate sa ating gadget, na kumikilos sa isang code block ng mga pisikal na qubit para sa napiling quantum error correcting code. Kahit na ang alinman sa mga gate na ito ay maaaring mabigo at magpakilala ng isang error, wala itong pagkalat ng mga error dahil walang multiple-qubit gate na kasangkot. Kaagad pagkatapos mailapat ang gadget, ang error correction ay isasagawa; at kung sapat na maliit ang bilang ng mga error na ipinakilala ng gadget (o habang isinasagawa ang gadget), ang mga error ay maitutuwid. Kaya, kung sapat na maliit ang rate ng mga error na ipinakilala ng mga sira-sirang gate, mayroon namang magandang pagkakataon ang error correction na magtagumpay.
Para sa isang transversal na implementasyon ng isang two-qubit gate, sa kabilang banda, may potensyal para sa pagkalat ng mga error β walang paraan upang maiwasan ito, tulad ng napansin na natin. Ang mahalagang punto, gayunpaman, ay ang isang transversal na gadget ay hindi kailanman maaaring magdulot ng pagkalat ng mga error sa loob ng isang code block.
Halimbawa, isaalang-alang ang transversal na implementasyon ng isang CNOT gate para sa isang CSS code na inilarawan sa itaas, maaaring may error na mangyari sa pinakamataas na qubit ng nangungunang code block bago isagawa ang gadget, at ang unang CNOT sa loob ng gadget ay magkakalat ng error na iyon sa pinakamataas na qubit sa mas mababang block. Gayunpaman, ang dalawang nagresultang error ay nasa hiwalay na code block na ngayon. Kaya, ipagpalagay na ang ating code ay maaaring itama ang isang error, ang mga hakbang sa error correction na nangyayari pagkatapos ng gadget ay maitutuwid ang dalawang error nang isa-isa β dahil isang error lamang ang nangyayari sa loob ng bawat code block. Sa kaibahan, kung ang pagkalat ng error ay mangyayari sa loob ng parehong code block, maaari nitong gawing high-weight error ang isang low-weight error na hindi na kayang harapin ng code.
Hindi-universalidad ng mga transversal gateβ
Para sa dalawang magkaibang stabilizer code, maaaring posible ang transversal na implementasyon ng isang partikular na gate gamit ang isang code ngunit hindi sa isa pa. Halimbawa, habang hindi posible na ipatupad ang isang gate nang transversally gamit ang -qubit Steane code, may iba pang mga code para sa kung saan ito ay posible.
Sa kasamaang palad, hindi kailanman posible, para sa anumang hindi-trivial na quantum error correcting code, na ipatupad ang isang universal na hanay ng mga gate nang transversally. Ang katotohanang ito ay kilala bilang Eastin-Knill theorem.
Ang patunay ng teoremang ito ay hindi ipapaliwanag dito. (Hindi ito isang kumplikadong patunay, ngunit nangangailangan ng pangunahing kaalaman sa Lie groups at Lie algebras, na hindi kabilang sa mga paunang kinakailangan ng serye.) Ang pangunahing ideya, gayunpaman, ay maaaring ipaliwanag sa intuitive na paraan: Ang mga walang katapusang pamilya ng mga transversal na operasyon ay hindi maaaring manatili sa loob ng code space ng isang hindi-trivial na code dahil ang maliliit na pagkakaiba sa mga transversal na operasyon ay mahusay na napro-approximate ng mga low-weight Pauli operation, na natutukoy ng code bilang mga error.
Sa buod, nag-aalok ang mga transversal gadget ng isang simple at likas na fault-tolerant na implementasyon ng mga gate β ngunit para sa anumang makatuwirang pagpili ng quantum error correcting code, wala kailanman ang isang universal gate set na maaaring ipatupad sa ganitong paraan, na nagpapailalim sa paggamit ng mga alternatibong gadget.
Mga magic stateβ
Dahil hindi posible, para sa anumang hindi-trivial na pagpili ng quantum error correcting code, na ipatupad nang transversally ang isang universal na hanay ng mga quantum gate, kailangan nating isaalang-alang ang iba pang mga paraan upang ipatupad ang mga gate nang fault-tolerantly. Ang isang kilalang pamamaraan ay batay sa konsepto ng mga magic state, na mga quantum state ng mga qubit na nagbibigay-daan sa fault-tolerant na implementasyon ng ilang partikular na gate.
Pagpapatupad ng mga gate gamit ang mga magic stateβ
Magsimula tayo sa pagsasaalang-alang ng mga at gate, na may mga matrix description tulad ng sumusunod.
Sa kahulugan, ang ay isang Clifford operation, habang ang ay hindi; hindi posible na ipatupad ang isang gate gamit ang isang circuit na binubuo ng mga Clifford gate ( gate, gate, at CNOT gate).
Gayunpaman, posible na ipatupad ang isang gate (hanggang sa isang global phase) gamit ang isang circuit na binubuo ng mga Clifford gate kung, bukod pa rito, mayroon tayong kopya ng state na
at pinapayagan natin ang mga standard basis measurement at ang mga gate na classically controlled. Partikular, ang sumusunod na circuit ay nagpapakita ng isang paraan upang gawin ito. Ang kababalaghang ipinapakita dito ay isang medyo simplipikadong halimbawa ng quantum gate teleportation.
Upang masuri kung gumagana nang tama ang circuit na ito, maaari muna nating kalkulahin ang pagkilos ng CNOT gate sa input.