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


15

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

C10|ϕ2ϕ1ϕ0=(I2C10)|ϕ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=|00|1+|11|U
1U|00||11||0|1 ของ qubit ควบคุม - แต่เราไม่ได้ใช้มันที่นี่เป็นองค์ประกอบของการวัด แต่เพื่ออธิบายผลกระทบของ qubits อื่นขึ้นอยู่กับหนึ่งหรือพื้นที่ย่อยอื่น ๆ ของพื้นที่รัฐของ qubit แรก

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

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

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

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

โอ้ใช่ฉันจำโปรเจ็คเตอร์ได้ตั้งแต่เช้าตรู่ในหนังสือ 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 ที่รัดกุมสำหรับมัน มันคือสิ่งที่มันเป็นUI2CNOTCNOTI2


1

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

CNOT|ϕ=CNOT|12...i...k...n1n=|12...i...k...n1n

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

CNOT=[|1...i...k11...i...k1|σx|k+1...nk+1...n|+all permutations of states other then ith]+[|1...i...k11...i...k1|I|k+1...nk+1...n|+all permutations of states other then ith]

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

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

CNOT=|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|σx|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|+|11|I|345345|

-2

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


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