ข้ามไปยังเนื้อหาหลัก
โครงการนี้อยู่ในช่วงเบต้า พบข้อผิดพลาด? สร้าง GitHub Issue มีคำถามหรือไอเดีย? ถามใน Discussions — ยินดีรับฟังความคิดเห็น!
คุณภาพการแปลในหน้านี้เป็นอย่างไร?

Repetition code ทบทวนใหม่

ต่อมา เราจะมองดู 3-bit repetition code อีกครั้ง คราวนี้ในแง่ของ Pauli operations นี่จะเป็นตัวอย่างแรกของ stabilizer code

Pauli observables สำหรับ repetition code​

จำไว้ว่าเมื่อเรานำ 3-bit repetition code ไปใช้กับ qubits state vector ของ qubit ที่กำหนด α∣0⟩+β∣1⟩\alpha\vert 0\rangle + \beta\vert 1\rangle จะถูก encode เป็น

∣ψ⟩=α∣000⟩+β∣111⟩.\vert\psi\rangle = \alpha\vert 000\rangle + \beta\vert 111\rangle.

state ใด ๆ ∣ψ⟩\vert\psi\rangle ในรูปแบบนี้คือ 3-qubit encoding ที่ถูกต้องของ qubit state — แต่ถ้ามี state ที่เราไม่แน่ใจ เราสามารถตรวจสอบว่ามี encoding ที่ถูกต้องโดยตรวจสอบสมการสองข้อต่อไปนี้

(Z⊗Z⊗I)∣ψ⟩=∣ψ⟩(I⊗Z⊗Z)∣ψ⟩=∣ψ⟩\begin{aligned} (Z \otimes Z \otimes \mathbb{I}) \vert\psi\rangle & = \vert\psi\rangle\\[1mm] (\mathbb{I} \otimes Z \otimes Z) \vert\psi\rangle & = \vert\psi\rangle \end{aligned}

สมการแรกระบุว่าการนำ ZZ operations ไปใช้กับ qubits สองตัวซ้ายสุดของ ∣ψ⟩\vert\psi\rangle ไม่มีผล ซึ่งก็คือ ∣ψ⟩\vert\psi\rangle เป็น eigenvector ของ Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} ที่มี eigenvalue 11 สมการที่สองคล้ายกันยกเว้น ZZ operations ถูกนำไปใช้กับ qubits สองตัวขวาสุด แนวคิดคือ ถ้าเราคิดถึง ∣ψ⟩\vert\psi\rangle ในฐานะ linear combination ของ standard basis states สมการแรกหมายความว่าเราสามารถมีค่าสัมประสิทธิ์ที่ไม่เป็นศูนย์เฉพาะสำหรับ standard basis states ที่สอง bits ซ้ายสุดมี parity คู่ (หรือพูดอีกอย่างคือเท่ากัน) และสมการที่สองหมายความว่าเราสามารถมีค่าสัมประสิทธิ์ที่ไม่เป็นศูนย์เฉพาะสำหรับ standard basis states ที่สอง bits ขวาสุดมี parity คู่

หรือถ้ามอง Pauli operations Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} และ I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z ในฐานะ observables และวัดทั้งสองด้วย circuits ที่แนะนำไว้ตอนท้ายของส่วนก่อนหน้า เราจะได้ผลการวัดที่สอดคล้องกับ +1+1 eigenvalues อย่างแน่นอน เพราะ ∣ψ⟩\vert\psi\rangle เป็น eigenvector ของทั้งสอง observables ที่มี eigenvalue 11 แต่เวอร์ชันที่ลดรูปของ circuit (ที่รวมกัน) สำหรับวัด observables ทั้งสองอย่างเป็นอิสระต่อกัน ดังที่แสดงนี้ ก็คือ parity check circuit สำหรับ 3-bit repetition code นั่นเอง

Parity check circuit สำหรับ 3-bit repetition code

สมการสองข้อด้านบนจึงหมายความว่า parity check circuit ให้ผล 0000 ซึ่งเป็น syndrome ที่บ่งบอกว่าไม่พบข้อผิดพลาด

3-qubit Pauli operations Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} และ I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z เรียกว่า stabilizer generators สำหรับโค้ดนี้ และ stabilizer ของโค้ดคือชุดที่สร้างจาก stabilizer generators

⟨Z⊗Z⊗I,I⊗Z⊗Z⟩={I⊗I⊗I,Z⊗Z⊗I,Z⊗I⊗Z,I⊗Z⊗Z}\langle Z\otimes Z\otimes \mathbb{I}, \mathbb{I}\otimes Z\otimes Z\rangle = \{ \mathbb{I}\otimes\mathbb{I}\otimes\mathbb{I}, Z\otimes Z\otimes\mathbb{I}, Z\otimes\mathbb{I}\otimes Z, \mathbb{I}\otimes Z\otimes Z \}

Stabilizer เป็นวัตถุทางคณิตศาสตร์ที่สำคัญอย่างยิ่งของโค้ดนี้ และเราจะพูดถึงบทบาทของมันในส่วนถัดไปของบทเรียน สำหรับตอนนี้ สังเกตว่าเราอาจเลือก generators และ parity checks ที่สอดคล้องต่างออกไปได้ โดยเฉพาะโดยนำ Z⊗I⊗ZZ\otimes\mathbb{I}\otimes Z แทน generators ใดตัวหนึ่งที่เราเลือก แต่ stabilizer และโค้ดเองจะไม่เปลี่ยนแปลง

การตรวจจับข้อผิดพลาด​

ต่อมา เราจะพิจารณาการตรวจจับ bit-flip สำหรับ 3-bit repetition code โดยมุ่งเน้นที่การโต้ตอบและความสัมพันธ์ระหว่าง Pauli operations ที่เกี่ยวข้อง: stabilizer generators และข้อผิดพลาดเอง

สมมติว่าเราได้ encode qubit โดยใช้ 3-bit repetition code และเกิด bit-flip error บน qubit ซ้ายสุด สิ่งนี้ทำให้ state ∣ψ⟩\vert\psi\rangle ถูกแปลงตาม action ของ XX operation (หรือ XX error)

∣ψ⟩↦(X⊗I⊗I)∣ψ⟩\vert\psi\rangle \mapsto (X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle

ข้อผิดพลาดนี้สามารถตรวจจับได้โดยดำเนินการ parity checks สำหรับ 3-bit repetition code ดังที่พูดถึงในบทก่อนหน้า ซึ่งเทียบเท่ากับการวัด stabilizer generators Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} และ I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z ในฐานะ observables แบบ nondestructive

มาเริ่มด้วย stabilizer generator ตัวแรก State ∣ψ⟩\vert\psi\rangle ได้รับผลจาก XX error บน qubit ซ้ายสุด และเป้าหมายของเราคือเข้าใจว่า measurement ของ stabilizer generator นี้ในฐานะ observable ได้รับอิทธิพลจากข้อผิดพลาดนี้อย่างไร เนื่องจาก XX และ ZZ anti-commute ในขณะที่ matrix ทุกตัว commute กับ identity matrix จึงตามมาว่า Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} anti-commutes กับ X⊗I⊗IX\otimes\mathbb{I}\otimes\mathbb{I} ในขณะเดียวกัน เนื่องจาก ∣ψ⟩\vert\psi\rangle เป็น encoding ที่ถูกต้องของ qubit Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} ทำงาน trivially บน ∣ψ⟩\vert\psi\rangle

(Z⊗Z⊗I)(X⊗I⊗I)∣ψ⟩=−(X⊗I⊗I)(Z⊗Z⊗I)∣ψ⟩=−(X⊗I⊗I)∣ψ⟩\begin{aligned} (Z \otimes Z \otimes \mathbb{I})(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle & = -(X \otimes \mathbb{I} \otimes \mathbb{I})(Z \otimes Z \otimes \mathbb{I})\vert\psi\rangle \\ & = -(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle \end{aligned}

ดังนั้น (X⊗I⊗I)∣ψ⟩(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle เป็น eigenvector ของ Z⊗Z⊗IZ \otimes Z \otimes \mathbb{I} ที่มี eigenvalue −1-1 เมื่อดำเนิน measurement ที่เชื่อมโยงกับ observable Z⊗Z⊗IZ \otimes Z \otimes \mathbb{I} บน state (X⊗I⊗I)∣ψ⟩(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle ผลลัพธ์จึงแน่นอนว่าเป็นอันที่เชื่อมโยงกับ eigenvalue −1-1

การอนุมานที่คล้ายกันสามารถนำไปใช้กับ stabilizer generator ตัวที่สองได้ แต่คราวนี้ข้อผิดพลาด commute กับ stabilizer generator แทนที่จะ anti-commute ดังนั้นผลลัพธ์สำหรับ measurement นี้คืออันที่เชื่อมโยงกับ eigenvalue +1+1

(I⊗Z⊗Z)(X⊗I⊗I)∣ψ⟩=(X⊗I⊗I)(I⊗Z⊗Z)∣ψ⟩=(X⊗I⊗I)∣ψ⟩\begin{aligned} (\mathbb{I} \otimes Z \otimes Z)(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle & = (X \otimes \mathbb{I} \otimes \mathbb{I})(\mathbb{I} \otimes Z \otimes Z)\vert\psi\rangle\\ & = (X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle \end{aligned}

สิ่งที่เราพบเมื่อพิจารณาสมการเหล่านี้คือ ไม่ว่า state เดิม ∣ψ⟩\vert\psi\rangle จะเป็นอะไร state ที่เสียหายเป็น eigenvector ของทั้งสอง stabilizer generators และว่า eigenvalue เป็น +1+1 หรือ −1-1 ถูกกำหนดโดยว่า ข้อผิดพลาด commute หรือ anti-commute กับ stabilizer generator แต่ละตัว สำหรับข้อผิดพลาดที่แทนด้วย Pauli operations มันจะเป็นอย่างใดอย่างหนึ่งเสมอ เพราะ Pauli operations สองตัวใด ๆ commute หรือ anti-commute กัน ในขณะเดียวกัน state จริง ∣ψ⟩\vert\psi\rangle ไม่มีบทบาทสำคัญ ยกเว้นข้อเท็จจริงที่ว่า stabilizer generators ทำงาน trivially บน state นี้

ด้วยเหตุนี้ เราไม่จำเป็นต้องกังวลโดยทั่วไปเกี่ยวกับ encoded state เฉพาะที่เราทำงานด้วย สิ่งที่สำคัญคือว่าข้อผิดพลาด commute หรือ anti-commute กับ stabilizer generator แต่ละตัว โดยเฉพาะ นี่คือสมการที่เกี่ยวข้องกับข้อผิดพลาดเฉพาะนี้สำหรับโค้ดนี้

(Z⊗Z⊗I)(X⊗I⊗I)=−(X⊗I⊗I)(Z⊗Z⊗I)(I⊗Z⊗Z)(X⊗I⊗I)=(X⊗I⊗I)(I⊗Z⊗Z)\begin{aligned} (Z \otimes Z \otimes \mathbb{I})(X \otimes \mathbb{I} \otimes \mathbb{I}) & = -(X \otimes \mathbb{I} \otimes \mathbb{I})(Z \otimes Z \otimes \mathbb{I})\\[1mm] (\mathbb{I} \otimes Z \otimes Z)(X \otimes \mathbb{I} \otimes \mathbb{I}) & = (X \otimes \mathbb{I} \otimes \mathbb{I})(\mathbb{I} \otimes Z \otimes Z) \end{aligned}

นี่คือตารางที่มีหนึ่งแถวต่อ stabilizer generator หนึ่งตัวและหนึ่งคอลัมน์ต่อข้อผิดพลาดหนึ่งอย่าง entry ในตารางเป็น +1+1 หรือ −1-1 ขึ้นอยู่กับว่าข้อผิดพลาดและ stabilizer generator commute หรือ anti-commute กัน ตารางรวมเฉพาะคอลัมน์สำหรับข้อผิดพลาดที่สอดคล้องกับ bit-flip เดียว รวมถึงกรณีที่ไม่มีข้อผิดพลาดเลย ซึ่งอธิบายด้วย identity tensor กับตัวมันเองสามครั้ง เราอาจเพิ่มคอลัมน์สำหรับข้อผิดพลาดอื่น ๆ ได้ แต่ตอนนี้เราจะมุ่งเน้นที่ข้อผิดพลาดเหล่านี้เท่านั้น

I⊗I⊗IX⊗I⊗II⊗X⊗II⊗I⊗XZ⊗Z⊗I+1−1−1+1I⊗Z⊗Z+1+1−1−1\begin{array}{c|cccc} & \mathbb{I}\otimes\mathbb{I} \otimes\mathbb{I} & X \otimes \mathbb{I} \otimes \mathbb{I} & \mathbb{I}\otimes X\otimes\mathbb{I} & \mathbb{I} \otimes\mathbb{I} \otimes X \\ \hline Z\otimes Z\otimes\mathbb{I} & +1 & -1 & -1 & +1 \\ \mathbb{I}\otimes Z\otimes Z & +1 & +1 & -1 & -1 \end{array}

สำหรับข้อผิดพลาดแต่ละอย่างในตาราง คอลัมน์ที่สอดคล้องจึงเปิดเผยว่าข้อผิดพลาดนั้นแปลง encoding ใด ๆ ให้เป็น eigenvector +1+1 หรือ −1-1 ของ stabilizer generator แต่ละตัวอย่างไร หรือพูดอีกอย่างคือ คอลัมน์อธิบาย syndrome ที่เราจะได้จาก parity checks ซึ่งเทียบเท่ากับการวัด stabilizer generators ในฐานะ observables แบบ nondestructive แน่นอน ตารางมี entries +1+1 และ −1-1 แทน 00 และ 11 — และเป็นเรื่องปกติที่จะคิดถึง syndrome ในฐานะ binary string แทนที่จะเป็น vector ของ entries +1+1 และ −1-1 — แต่เราสามารถมอง vectors ที่มี entries +1+1 และ −1-1 เหล่านี้เป็น syndromes เช่นกันเพื่อเชื่อมต่อพวกมันโดยตรงกับ eigenvalues ของ stabilizer generators โดยทั่วไป syndromes บอกบางอย่างเกี่ยวกับข้อผิดพลาดที่เกิดขึ้น และถ้าเรารู้ว่าข้อผิดพลาดหนึ่งในสี่อย่างที่ระบุในตารางเกิดขึ้น syndrome บอกว่าอันไหน

Syndromes​

Encodings สำหรับ 3-bit repetition code เป็น 3-qubit states ดังนั้นเป็น unit vectors ใน complex vector space 8 มิติ สี่ syndromes ที่เป็นไปได้แบ่ง space 8 มิตินี้ออกเป็น 4 subspaces ขนาด 2 มิติ โดยที่ quantum state vectors ใน subspace แต่ละอันให้ syndrome เดียวกันเสมอ แผนภาพต่อไปนี้แสดงโดยเฉพาะว่า space 8 มิติถูกแบ่งโดย stabilizer generators สองตัวอย่างไร

การแบ่ง subspace สำหรับ 3-bit repetition code

Stabilizer generator แต่ละตัวแบ่ง space เป็น subspaces ขนาดเท่ากันสองอัน คือ space ของ +1+1 eigenvectors และ space ของ −1-1 eigenvectors สำหรับ observable นั้น ตัวอย่างเช่น +1+1 eigenvectors ของ Z⊗Z⊗IZ\otimes Z\otimes\mathbb{I} เป็น linear combinations ของ standard basis states ที่สอง bits ซ้ายสุดมี parity คู่ และ −1-1 eigenvectors เป็น linear combinations ของ standard basis states ที่สอง bits ซ้ายสุดมี parity คี่ สถานการณ์คล้ายกันสำหรับ stabilizer generator ตัวอื่น ยกเว้นว่าสำหรับตัวนี้เป็นสอง bits ขวาสุดแทนที่จะเป็นสอง bits ซ้ายสุด

สี่ subspaces 2 มิติที่สอดคล้องกับสี่ syndromes ที่เป็นไปได้อธิบายได้ง่ายในกรณีนี้ เนื่องจากโค้ดนี้เรียบง่ายมาก โดยเฉพาะ subspace ที่สอดคล้องกับ syndrome (+1,+1)(+1,+1) คือ space ที่ span ด้วย ∣000⟩\vert 000\rangle และ ∣111⟩\vert 111\rangle ซึ่งคือ space ของ valid encodings (หรือที่รู้จักกันในชื่อ code space) และโดยทั่วไป spaces ถูก span ด้วย standard basis ที่แสดงในช่องสี่เหลี่ยมที่สอดคล้อง

Syndromes ยังแบ่ง Pauli operations 3-qubit ทั้งหมดออกเป็น 4 ชุดขนาดเท่ากัน ขึ้นอยู่กับ syndrome ที่ operation นั้น (ในฐานะ error) จะก่อให้เกิด ตัวอย่างเช่น Pauli operation ใด ๆ ที่ commute กับทั้งสอง stabilizer generators ให้ syndrome (+1,+1)(+1,+1) และในจำนวน 64 3-qubit Pauli operations ที่เป็นไปได้ มีอยู่พอดี 16 ตัวในหมวดนี้ (รวมถึง I⊗I⊗Z,\mathbb{I}\otimes \mathbb{I}\otimes Z, Z⊗Z⊗Z,Z\otimes Z\otimes Z, และ X⊗X⊗XX\otimes X\otimes X เป็นต้น) และเช่นเดียวกันสำหรับอีกสาม syndromes

คุณสมบัติทั้งสองนี้ — ที่ syndromes แบ่งทั้ง state space ที่ encodings อาศัยอยู่และ Pauli operations ทั้งหมดบน space นั้นออกเป็นชุดขนาดเท่ากัน — เป็นจริงโดยทั่วไปสำหรับ stabilizer codes ซึ่งเราจะนิยามอย่างแม่นยำในส่วนถัดไป

แม้ว่าจะเป็นเรื่องข้าง ๆ ในจุดนี้ แต่ควรกล่าวถึงว่า Pauli operations ที่ commute กับ ทั้งสอง stabilizer generators หรือพูดอีกอย่างคือ Pauli operations ที่ให้ syndrome (+1,+1)(+1,+1) แต่ตัวมันเองไม่ proportional กับ elements ของ stabilizer กลายเป็นว่าทำตัวเหมือน single-qubit Pauli operations บน encoded qubit (กล่าวคือ logical qubit) สำหรับโค้ดนี้ ตัวอย่างเช่น X⊗X⊗XX\otimes X \otimes X commute กับทั้งสอง stabilizer generators แต่ตัวมันเองไม่ proportional กับ element ใดใน stabilizer และอันที่จริงผลของ operation นี้บน encoding เทียบเท่ากับ XX gate บน logical qubit ที่ถูก encode

(X⊗X⊗X)(α∣000⟩+β∣111⟩)=α∣111⟩+β∣000⟩(X\otimes X \otimes X)(\alpha \vert 000\rangle + \beta \vert 111\rangle) = \alpha \vert 111\rangle + \beta \vert 000\rangle

อีกครั้ง นี่คือปรากฏการณ์ที่ขยายไปสู่ stabilizer codes ทั้งหมด