CNOT Gate บน Qubits ที่พันกัน


9

ฉันพยายามสร้างสถานะ Greenberger-Horne-Zeilinger (GHZ) สำหรับ N การใช้คอมพิวเตอร์ควอนตัมเริ่มต้นด้วย |000...000 (ครั้ง N)

ทางออกที่นำเสนอคือการใช้ Hadamard Transformation ใน qubit แรกก่อนจากนั้นเริ่มวนประตู CNOT ด้วย qubit แรกของอื่น ๆ ทั้งหมด

ฉันไม่สามารถเข้าใจวิธีการแสดง CNOT (q1,q2) ถ้า q1 เป็นส่วนหนึ่งของคู่ที่พันกันเช่นรัฐเบลล์ B0 ซึ่งรูปแบบที่นี่หลังจากการเปลี่ยนแปลง Hadamard

ฉันรู้วิธีเขียนโค้ดสำหรับมัน แต่พีชคณิตทำไมวิธีนี้ถึงถูกต้องและทำอย่างไร? ขอบคุณ

คำตอบ:


3

ฉันไม่สามารถเข้าใจวิธีการแสดง CNOT (q1,q2) ถ้า q1 เป็นส่วนหนึ่งของคู่ที่พันกันเช่นรัฐเบลล์ B0 ซึ่งรูปแบบที่นี่หลังจากการเปลี่ยนแปลง Hadamard

กุญแจสำคัญคือการสังเกตว่าเกิดอะไรขึ้นกับสถานะพื้นฐานของการคำนวณ (หรือสำหรับเรื่องนั้นชุดสถานะพื้นฐานที่สมบูรณ์แบบอื่น ๆ) เมื่อใช้ประตูควอนตัมที่เกี่ยวข้อง ไม่สำคัญว่ารัฐจะเข้าไปพัวพันหรือแยกกันไม่ออก วิธีนี้ใช้ได้ผลเสมอ

ลองพิจารณา 2-qubit Bell state (จากสอง qubits A และ B):

|Ψ=12(|00+|11)

|Ψถูกสร้างขึ้นโดยการซ้อนทับเชิงเส้นเท่ากันของสถานะพื้นฐานการคำนวณ|00 & |11 (ซึ่งสามารถแสดงเป็น |0A|0B และ |1A|1B ตามลำดับ) และ |1A|1B. เราไม่จำเป็นต้องกังวลเกี่ยวกับสถานะพื้นฐานการคำนวณอีกสองสถานะ:|01 และ |10 เนื่องจากไม่ได้เป็นส่วนหนึ่งของการซ้อนทับของรัฐระฆัง |Ψ. ประตู CNOT พลิกโดยทั่วไป(เช่นการแมปหนึ่งในสองอย่างใดอย่างหนึ่ง)|0|1 หรือ |1|0) สถานะของ qubit B ในกรณี qubitA อยู่ในสถานะ |1หรืออื่น ๆ มันไม่ทำอะไรเลย

ดังนั้นโดยทั่วไป CNOT จะทำให้สถานะพื้นฐานการคำนวณ |00ตามที่มันเป็น อย่างไรก็ตามมันจะแปลงสถานะพื้นฐานการคำนวณ|11 ถึง |10. จากการกระทำของ CNOT บน|00 และ |11คุณสามารถอนุมานการกระทำของ CNOT ในสถานะการซ้อนทับ |Ψ ขณะนี้:

CNOT|Ψ=12(|00+|10)

แก้ไข :

คุณพูดถึงในความคิดเห็นที่คุณต้องการหนึ่งในสอง qubits ของรัฐยุ่ง |Ψเพื่อทำหน้าที่เป็นตัวควบคุม (และการทำงานแบบ NOT จะถูกนำไปใช้กับควิบิตอื่นพูด C, ขึ้นอยู่กับการควบคุม )

ในกรณีดังกล่าวคุณสามารถดำเนินการในลักษณะเดียวกันนี้ได้

เขียนลงไป 3-qubit สถานะรวม :

|Ψ|0C=12(|0A|0B+|1A|1B)|0C
=12(|0A|0B|0C+|1A|1B|0C)

สมมติว่า Bเป็นqubit ควบคุมของคุณ

เราจะตรวจสอบการกระทำของ CNOT อีกครั้งในสถานะการคำนวณ (สำหรับระบบ 3 บิต) คือ |000 & |110. ในสถานะพื้นฐานการคำนวณ|000=|0A|0B|0C สังเกตว่าสถานะของ qubit B คือ |0 และของควิบิต C คือ |0. ตั้งแต่ควิบิตB อยู่ในสถานะ |0สถานะของควิบิต Cจะไม่ถูกพลิก อย่างไรก็ตามโปรดสังเกตว่าในสถานะพื้นฐานการคำนวณ|110=|1A|1B|0C qubit B อยู่ในสถานะ |1 ในขณะที่ qubit C อยู่ในสถานะ |0. ตั้งแต่ควิบิตB อยู่ในสถานะ |1สถานะของควิบิต C จะถูกพลิกไป |1.

ดังนั้นคุณจะได้รัฐ:

12(|0A|0B|0C+|1A|1B|1C)

นี่คือสถานะ Greenberger – Horne – Zeilingerสำหรับคุณ3 qubits!


เราสามารถใช้วิธีนี้หากเราต้องการใช้ CNOT กับคู่ที่พันกัน แต่ฉันไม่ต้องการทำเช่นนั้น สิ่งที่ฉันต้องการคือการใช้ qubit แรกของรัฐยุ่งB0 (ไม่สามารถเรียกมันว่า q1 เนื่องจากแยกไม่ออก) และใช้ CNOT กับ (q1) และสิ่งอื่น |0>คิวบิต ถ้าเป็นไปได้โปรดแสดงการคูณแบบเมทริกซ์ที่ทำได้ ขอบคุณอีกครั้ง.
Satvik Golechha

@SatvikGolechha ดังนั้นคุณคิดว่าอันไหนเป็นควิทควบคุม (ของเกทที่ควบคุมไม่ได้):q1 หรือ "แตกต่าง |0qubit "คำตอบจะขึ้นอยู่กับว่า
Sanchayan Dutta

ฉันกำลังพิจารณา q1เป็นบิตควบคุม และความยากลำบากที่ฉันเผชิญคือฉันไม่สามารถแยกจากกันได้q1และด้วยเหตุนี้ไม่สามารถมองเห็นสิ่งที่ประตู CNOT จะทำอย่างไร q1 และ |0>.
Satvik Golechha

@SatvikGolechha อัปเดตคำตอบ ตกลงตอนนี้
Sanchayan Dutta

ขอบคุณมัด! การใช้คุณสมบัติผลิตภัณฑ์ของ Tensor ทำให้ทุกอย่างชัดเจนและพอดีในตอนนี้ ฉันทำเครื่องหมายคำตอบนี้ว่ายอมรับแล้ว
Satvik Golechha

7

ψ1=|000ψ2=(HII)ψ1=12(|0+|1)|00=12(|000+|100)ψ3=(CNOT12I)ψ2=12(|000+|110)ψ4=(CNOT13I2)ψ3=12(|000+|111)

CNOTij เป็นตัวดำเนินการเอง 2 qubits ให้ 4×4เมทริกซ์รวม คุณสามารถใช้มันกับรัฐใด ๆ ในC2C2 ไม่ใช่แค่แบบฟอร์ม qiqj. เพียงแค่เขียนค่าสัมประสิทธิ์ในการคำนวณพื้นฐานที่คุณรู้ว่าจะทำอย่างไรในแง่ของCNOTijของการคำนวณย้อนกลับแบบคลาสสิก จากนั้นทำตามจมูกเส้นตรงของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.