ประตูควอนตัมได้รับการกล่าวถึงว่าเป็นหนึ่งเดียว อย่างไรก็ตามประตูคลาสสิคอาจไม่สามารถย้อนกลับได้เช่นตรรกะ AND และตรรกะหรือประตู จากนั้นจะเป็นไปได้อย่างไรที่จะจำลองประตู AND และ OR แบบคลาสสิคที่กลับไม่ได้โดยใช้ประตูควอนตัม?
ประตูควอนตัมได้รับการกล่าวถึงว่าเป็นหนึ่งเดียว อย่างไรก็ตามประตูคลาสสิคอาจไม่สามารถย้อนกลับได้เช่นตรรกะ AND และตรรกะหรือประตู จากนั้นจะเป็นไปได้อย่างไรที่จะจำลองประตู AND และ OR แบบคลาสสิคที่กลับไม่ได้โดยใช้ประตูควอนตัม?
คำตอบ:
สมมุติว่าเรามีฟังก์ชั่นซึ่งแมปnบิตเป็นmบิต (โดยที่m < n )
แน่นอนว่าเราสามารถออกแบบวงจรคลาสสิคเพื่อดำเนินการนี้ ขอเรียกว่า F มันใช้เป็นอินพุตn-บิต สมมติว่ามันจะใช้เวลาเป็น input Xและมันจะออกผลลัพธ์F ( X )
ตอนนี้เราอยากทำสิ่งเดียวกันโดยใช้วงจรควอนตัม ลองเรียกมันว่าซึ่งรับเป็นอินพุต| X ⟩และเอาท์พุท| F ( X ) ⟩ ตอนนี้จำไว้ว่าเนื่องจากกลศาสตร์ควอนตัมเป็นเชิงเส้น qubits อินพุตอาจจะอยู่ในการซ้อนทับของสตริงnบิตทั้งหมด ดังนั้นอินพุตอาจอยู่ในบางสถานะ∑ X ∈ { 0 , 1 } n α X | X ⟩ โดย linearity เอาต์พุตจะเป็น∑ X ∈ { 0 , ⟩
วิวัฒนาการในกลศาสตร์ควอนตัมคือการรวมกัน และเนื่องจากเป็นการรวมกันจึงย้อนกลับได้ นี่หมายความว่าถ้าคุณใช้ quantum gate กับสถานะอินพุต| x ⟩และรับสถานะ ouput U | x ⟩คุณสามารถใช้เกตผกผันU †เพื่อกลับสู่สถานะ| x ⟩
โปรดสังเกตอย่างระมัดระวังในภาพด้านบนว่าจำนวนบรรทัดอินพุต (เช่นหก) นั้นตรงกับจำนวนบรรทัดเอาต์พุตในแต่ละขั้นตอน นี่เป็นเพราะหน่วยของการดำเนินการ เปรียบเทียบนี้เพื่อดำเนินงานคลาสสิกเช่นตรรกะและที่ให้ผลผลิตบิตเดียว0 คุณไม่สามารถสร้างบิตเริ่มต้น0และ1จากการส่งออกตั้งแต่แม้0 ∧ 0และ1 ∧ 0จะมีแมปเพื่อส่งออกเดียวกัน0 แต่ให้พิจารณาประตูที่ไม่ใช่แบบดั้งเดิม หากการป้อนข้อมูลเป็น0มันจะใส่1ในขณะที่ถ้าเป็นมันจะออกผลลัพธ์0ตั้งแต่การทำแผนที่นี้เป็น 1-1 ก็สามารถดำเนินการได้อย่างง่ายดายเป็นประตูรวมพลิกกลับคือประตู Pauli-X อย่างไรก็ตามสำหรับการนำคลาสสิก AND หรือคลาสสิกหรือเกตเราจำเป็นต้องคิดให้มากขึ้น
พิจารณาประตู CSWAP นี่คือแผนผังคร่าวๆที่แสดงโครงร่าง:
ในประตู SWAP ขึ้นอยู่กับบิตควบคุมเราอีกสองคนอาจหรือไม่ได้รับการสลับ โปรดสังเกตว่ามีสามบรรทัดอินพุตและสามบรรทัดเอาต์พุต ดังนั้นมันสามารถสร้างแบบจำลองเป็นประตูควอนตัมรวม ตอนนี้ถ้า : ถ้าx = 0 , เอาท์พุทเป็น0ในขณะที่ถ้าx = 1 , เอาท์พุทเป็นปี
ถ้าคุณสังเกตเห็นถ้าเรามี outputting ˉ x ∧ ปีในขณะที่ถ้าx = 1เราเป็น outputting x ∧ Y ดังนั้นเราจึงประสบความสำเร็จสามารถสร้างผลผลิตx ∧ ปีที่เราอยากแม้ว่าเราจะจบลงด้วยบางคน "ขยะ" ผลˉ x ∧ Yและx ข้อเท็จจริงที่น่าสนใจคือประตูผกผันของ CSWAP นั้นเป็นประตู CSWAP (ตรวจสอบ!)
นั่นคือทั้งหมด! โปรดจำไว้ว่าประตูคลาสสิคทั้งหมดสามารถสร้างได้ด้วยประตู NANDซึ่งแน่นอนว่าสามารถสร้างประตู AND และ NOT ได้ เราจำลองแบบคลาสสิกไม่และคลาสสิกและเกทอย่างมีประสิทธิภาพโดยใช้ประตูควอนตัมแบบย้อนกลับได้ เพื่อให้ปลอดภัยเรายังสามารถเพิ่มqauntum gate CNOTไปยังรายการของเราเพราะการใช้ CNOT เราสามารถคัดลอกบิต
ดังนั้นข้อความพื้นฐานคือการใช้ควอนตัม CSWAP, CNOT และประตูไม่ได้เราสามารถทำซ้ำประตูคลาสสิกใด ๆ BTW มีเคล็ดลับที่ชาญฉลาดในการกำจัดบิต "ขยะ" ที่ผลิตเมื่อใช้ประตูควอนตัม แต่นั่นเป็นอีกเรื่องหนึ่ง
PS: มันสำคัญมากที่จะต้องกำจัดบิต "ขยะ" มิฉะนั้นอาจทำให้เกิดข้อผิดพลาดในการคำนวณ!
เครดิตอ้างอิงและรูปภาพ: กลศาสตร์ควอนตัมและการคำนวณควอนตัม MOOCนำเสนอโดย UC Berkeley ใน edX