วิธีการรับเมทริกซ์ CNOT สำหรับระบบ 3-qbit ที่ควบคุมและเป้าหมาย qbits ไม่ได้อยู่ติดกัน?


15

ในระบบสาม qbit มันเป็นเรื่องง่ายที่จะได้รับตัวดำเนินการ CNOT เมื่อตัวควบคุม & เป้าหมาย qbits อยู่ติดกันอย่างมีนัยสำคัญ - คุณเพียงแค่ดึงตัวดำเนินการ CNOT แบบ 2 บิตด้วยเมทริกซ์เอกลักษณ์ในตำแหน่งสำคัญของ qbit ที่ไม่ถูกแตะต้อง:

C10|ϕ2ϕ1ϕ0⟩=(I2⊗C10)|ϕ2ϕ1ϕ0⟩

อย่างไรก็ตามมันไม่ชัดเจนว่าจะได้รับตัวดำเนินการ CNOT อย่างไรเมื่อ qbits การควบคุม & เป้าหมายไม่ได้อยู่ติดกันอย่างมีนัยสำคัญ:

C20|ϕ2ϕ1ϕ0⟩

สิ่งนี้ทำได้อย่างไร


ดูคำถามและคำตอบนี้: quantumcomputing.stackexchange.com/questions/9614/…
— Martin Vesely

คำตอบ:


14

สำหรับการนำเสนอจากหลักการแรกผมชอบคำตอบของไรอันดอนเนลล์ แต่สำหรับการรักษาพีชคณิตระดับสูงขึ้นเล็กน้อยนี่คือวิธีที่ฉันจะทำ

คุณสมบัติหลักของ controlled- การดำเนินงานสำหรับการรวมกันใด ๆUคือว่ามัน (เป็นตุเป็นตะ) ทำการดำเนินการใน qubits ขึ้นอยู่กับมูลค่าของบาง qubit เดี่ยว ๆ วิธีที่เราสามารถเขียนพีชคณิตอย่างชัดเจน (ด้วยการควบคุมบน qubit แรก) คือ: ที่เป็นเมทริกซ์เอกลักษณ์ของมิติเช่นเดียวกับUที่นี่และเป็นเครื่องฉายภาพไปยังรัฐและUU

CU=|0⟩⟨0|⊗1+|1⟩⟨1|⊗U
1U|0⟩⟨0||1⟩⟨1||0⟩|1⟩ ของ qubit ควบคุม - แต่เราไม่ได้ใช้มันที่นี่เป็นองค์ประกอบของการวัด แต่เพื่ออธิบายผลกระทบของ qubits อื่นขึ้นอยู่กับหนึ่งหรือพื้นที่ย่อยอื่น ๆ ของพื้นที่รัฐของ qubit แรก

เราสามารถใช้สิ่งนี้เพื่อหาเมทริกซ์สำหรับเกทซึ่งดำเนินการบนควิบิต 3 โดยมีเงื่อนไขอยู่ในสถานะของควิบิต 1 โดยคิดว่านี่เป็นตัวควบคุม -การดำเนินการบน qubits 2 และ 3: CX1,3X(12⊗X)

CX1,3=|0⟩⟨0|⊗14+|1⟩⟨1|⊗(12⊗X)=[140404(12⊗X)]=[12020202021202020202X02020202X],
โดยที่สองหลังเป็นตัวแทนเมทริกซ์บล็อกเพื่อประหยัดพื้นที่ (และสติ)

ยังดีกว่า: เราสามารถรับรู้ได้ว่า - ในระดับคณิตศาสตร์บางอย่างที่เราอนุญาตให้เราตระหนักว่าลำดับของปัจจัยเมตริกซ์ไม่จำเป็นต้องอยู่ในลำดับคงที่ - การควบคุมและเป้าหมายของการดำเนินการสามารถอยู่บนเมตริกซ์สองตัว ปัจจัยและที่เราสามารถกรอกข้อมูลในรายละเอียดของผู้ประกอบการในทุก qubits อื่น ๆ ที่มี1_2 สิ่งนี้จะช่วยให้เรากระโดดตรงไปที่ตัวแทน 12

CX1,3=|0⟩⟨0|⏟control⊗12⏟uninvolved⊗12⏟target+|1⟩⟨1|⏟control⊗12⏟uninvolved⊗X⏟target=[12020202021202020202020202020202]+[02020202020202020202X02020202X]
และยังช่วยให้เราเห็นสิ่งที่ต้องทำทันทีหากบทบาทของการควบคุมและเป้าหมายกลับด้าน:
CX3,1=12⏟target⊗12⏟uninvolved⊗|0⟩⟨0|⏟control+X⏟target⊗12⏟uninvolved⊗|1⟩⟨1|⏟control=[|0⟩⟨0||0⟩⟨0||0⟩⟨0||0⟩⟨0|]+[|1⟩⟨1||1⟩⟨1||1⟩⟨1||1⟩⟨1|]=[1000000000100000000001000000000100000100000000011000000000100000].
แต่ที่ดีที่สุดของทั้งหมด: ถ้าคุณสามารถเขียนตัวดำเนินการเชิงพีชคณิตคุณสามารถทำขั้นตอนแรกสู่การจ่ายด้วยเมทริกซ์ขนาดยักษ์โดยสิ้นเชิงแทนที่จะใช้เหตุผลเกี่ยวกับตัวดำเนินการเชิงพีชคณิตโดยใช้นิพจน์เช่น และ CX1,3=|0⟩⟨0|⊗12⊗12+|1⟩⟨1|⊗12⊗XCX3,1=12⊗12⊗|0⟩⟨0|+X⊗12⊗|1⟩⟨1|. จะมีข้อ จำกัด ว่าคุณสามารถทำอะไรกับสิ่งเหล่านี้ได้แน่นอน - การเปลี่ยนแปลงอย่างง่าย ๆ ในการเป็นตัวแทนไม่น่าจะทำให้อัลกอริทึมควอนตัมที่ยากแก้ไขได้อย่างมีประสิทธิภาพ ใช้การแสดงออกเหล่านี้มากกว่ากับเมทริกซ์กินพื้นที่

โอ้ใช่ฉันจำโปรเจ็คเตอร์ได้ตั้งแต่เช้าตรู่ในหนังสือ Mermin โปรเจ็คเตอร์และเมทริกซ์เป็นวิธีเข้ารหัสตรรกะตามเงื่อนไขในเมทริกซ์!
— ahelwer

"การเปลี่ยนแปลงอย่างง่ายของการเป็นตัวแทนไม่น่าจะทำให้อัลกอริทึมควอนตัมที่ยากแก้ไขได้อย่างมีประสิทธิภาพ" - แล้วในกรณีของการหมุนไส้ตะเกียง?
— meowzz

1
@meowzz: ทุกครั้งในช่วงเวลาการเปลี่ยนแปลงในสัญกรณ์ช่วยให้คุณสามารถสร้างแนวคิดล่วงหน้าและช่วยให้คุณแก้ปัญหาได้ง่ายขึ้น แต่ไม่บ่อยและอาจไม่ได้อยู่ในกรณีของการเปลี่ยนแปลงเฉพาะของสัญกรณ์ซึ่งเป็นที่รู้จักกันดีพอสมควร สำหรับกรณีเฉพาะของการหมุนของไส้ตะเกียงคำถามที่ฉันจะถามคืออะไรล่วงหน้าที่เฉพาะเจาะจงมันทำให้เป็นไปได้ในการแก้ปัญหาและปัญหาที่เป็นประโยชน์
— Niel de Beaudrap

8

นี่เป็นคำถามที่ดี มันเป็นหนังสือที่ดูเหมือนจะแอบเข้าไป ฉันมาถึงคำถามที่แน่นอนนี้เมื่อเตรียมการบรรยายควอนตัมการคำนวณเมื่อสองสามวันก่อน

เท่าที่ฉันสามารถบอกได้ไม่มีวิธีรับเมทริกซ์ 8x8 ที่ต้องการโดยใช้สัญลักษณ์ผลิตภัณฑ์ Kroneckerสำหรับเมทริกซ์ ทั้งหมดที่คุณสามารถพูดได้ก็คือ: การทำงานของคุณในการใช้ CNOT กับสาม qubits โดยที่การควบคุมเป็นเป้าหมายแรกและเป้าหมายเป็นอันดับสามจะมีผลต่อไปนี้:⊗

|000⟩↦|000⟩

|001⟩↦|001⟩

|010⟩↦|010⟩

|011⟩↦|011⟩

|100⟩↦|101⟩

|101⟩↦|100⟩

|110⟩↦|111⟩

|111⟩↦|110⟩

และดังนั้นจึงได้รับจากเมทริกซ์ต่อไปนี้:

U=[1000000001000000001000000001000000000100000010000000000100000010]

เมทริกซ์นี้แน่นอนค่ามิได้I_2 ไม่มีสัญกรณ์ที่ใช้ผลิตภัณฑ์ Kronecker ที่รัดกุมสำหรับมัน มันคือสิ่งที่มันเป็นUI2⊗CNOTCNOT⊗I2


1

เป็นแนวคิดทั่วไป CNOT พลิกเป้าหมายตามการควบคุม ฉันเลือกพลิกเป้าหมายหากการควบคุมคือคุณสามารถเลือกเช่นกัน ดังนั้นถือว่าใดรัฐ multiparticle ทั่วไป|ตอนนี้คุณเลือกการควบคุมและเป้าหมายของคุณแล้วสมมติว่าคือการควบคุมและคือเป้าหมาย การใช้ CNOT บนจะเป็นแค่ ↑(=[1 0]T)↓(=[0 1]T)|ϕ⟩=|↑1↓2↓3....↑n−1↓n⟩i′thk′th|ϕ⟩

CNOT|ϕ⟩=CNOT|↑1↓2...↑i...↑k...↑n−1↓n⟩=|↑1↓2...↑i...↓k...↑n−1↓n⟩

เพื่อสร้างเมทริกซ์ของประตู CNOT ดังกล่าวเราใช้ ( -Pauli เมทริกซ์) ถ้ารัฐขึ้นและเราใช้ (เอกลักษณ์) ถ้ารัฐจะลดลง เราใช้เมทริกซ์เหล่านี้ที่ตำแหน่งซึ่งเป็นเป้าหมายของเรา ศาสตร์ σxxi′thI2×2i′thk′th

CNOT=[|↑1...↑i...↑k−1⟩⟨↑1...↑i...↑k−1|⊗σx⊗|↑k+1...↑n⟩⟨↑k+1...↑n|+all permutations of states other then i′th]+[|↑1...↓i...↑k−1⟩⟨↑1...↓i...↑k−1|⊗I⊗|↑k+1...↑n⟩⟨↑k+1...↑n|+all permutations of states other then i′th]

หมายเหตุรัฐ (เป้าหมาย) ได้รับการยกเว้นขณะที่การสร้างเมทริกซ์การเปลี่ยนแปลงและตำแหน่งผู้ประกอบการหรือเป็นลายลักษณ์อักษรk′thk′thσxI

ยกตัวอย่างห้า qubits ที่ qubit เป็นเป้าหมายและคือการควบคุม ช่วยสร้างเมทริกซ์การเปลี่ยนแปลงของCNOTฉันใช้เวลาถ้าการควบคุมคือพลิกเป้าหมาย คุณสามารถใช้ในทางกลับกันได้เช่นกัน2nd4thCNOT↑

CNOT=|↑1⟩⟨↑1|⊗σx⊗|↑3↑4↑5⟩⟨↑3↑4↑5|+|↑1⟩⟨↑1|⊗σx⊗|↑3↑4↓5⟩⟨↑3↑4↓5|+|↑1⟩⟨↑1|⊗σx⊗|↓3↑4↑5⟩⟨↓3↑4↑5|+|↑1⟩⟨↑1|⊗σx⊗|↓3↑4↓5⟩⟨↓3↑4↓5|+|↓1⟩⟨↓1|⊗σx⊗|↑3↑4↑5⟩⟨↑3↑4↑5|+|↓1⟩⟨↓1|⊗σx⊗|↑3↑4↓5⟩⟨↑3↑4↓5|+|↓1⟩⟨↓1|⊗σx⊗|↓3↑4↑5⟩⟨↓3↑4↑5|+|↓1⟩⟨↓1|⊗σx⊗|↓3↑4↓5⟩⟨↓3↑4↓5|+|↑1⟩⟨↑1|⊗I⊗|↑3↓4↑5⟩⟨↑3↓4↑5|+|↑1⟩⟨↑1|⊗I⊗|↑3↓4↓5⟩⟨↑3↓4↓5|+|↑1⟩⟨↑1|⊗I⊗|↓3↓4↑5⟩⟨↓3↓4↑5|+|↑1⟩⟨↑1|⊗I⊗|↓3↓4↓5⟩⟨↓3↓4↓5|+|↓1⟩⟨↓1|⊗I⊗|↑3↓4↑5⟩⟨↑3↑4↓5|+|↓1⟩⟨↓1|⊗I⊗|↑3↓4↓5⟩⟨↑3↓4↓5|+|↓1⟩⟨↓1|⊗I⊗|↓3↓4↑5⟩⟨↓3↓4↑5|+|↓1⟩⟨↓1|⊗I⊗|↓3↓4↓5⟩⟨↓3↓4↓5|

-2

ก่อนอื่นเขียนเมทริกซ์CNOT⊗𝐼2จากนั้นเปลี่ยนลำดับของ index2 และ index3 ด้วย matlab ด้วยวิธีนี้คุณสามารถทำ qubits ได้ไม่ จำกัด จำนวน


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