อ่าน 36 นาที
ประตูตรรกะควอนตัม
ใน การคำนวณควอนตัม และโดยเฉพาะอย่างยิ่งใน แบบจำลอง วงจรควอนตัม เก ตตรรกะควอนตัม (หรือเรียกสั้น ๆ ว่า เกตควอนตัม ) คือวงจรควอนตัมพื้นฐานที่ทำงานบน คิวบิต...
ประตูตรรกะควอนตัม

ในการคำนวณควอนตัมและโดยเฉพาะอย่างยิ่งในแบบจำลองวงจรควอนตัม เกตตรรกะควอนตัม (หรือเรียกสั้น ๆ ว่าเกตควอนตัม ) คือวงจรควอนตัมพื้นฐานที่ทำงานบน คิวบิตจำนวนน้อยเกตตรรกะควอนตัมเป็นส่วนประกอบพื้นฐานของวงจรควอนตัม เช่นเดียวกับเกตตรรกะ แบบคลาสสิก ที่เป็นส่วนประกอบพื้นฐานของวงจรดิจิทัลทั่วไป
ตามหลักกลศาสตร์ควอนตัมระบบควอนตัมสามารถวิวัฒนาการได้เพียงอย่างใดอย่างหนึ่ง เท่านั้น คือ วิวัฒนาการแบบเอกภาพ ตามสมการชโรดิงเกอร์หรือถูกวัด (บางครั้งเรียกว่า "การสังเกต") เกตควอนตัมอธิบายการแปลงแบบเอกภาพเหล่านี้ ซึ่งเกิดขึ้นเมื่อระบบไม่ได้ถูกวัด คำว่า "เกตควอนตัม" ปรากฏในความสัมพันธ์กับโปรเซสเซอร์ควอนตัม และในบริบทนี้ เกตควอนตัมคือการดำเนินการเชิงตรรกะที่คอมพิวเตอร์ควอนตัมใน ระดับนามธรรมของ ภาษาแอสเซมบลี (เช่นOpenQASM ) สามารถดำเนินการกับข้อมูลควอนตัม ( คิวบิตหรือสถานะควอนตัม ) ที่ประมวลผลได้ แม้ว่าเกตควอนตัมอาจเป็นอัลกอริทึมทั้งหมด (เช่นการแปลงฟูริเยร์ควอนตัม ) ก็ได้ – แต่สิ่งนี้จะเป็นจริงก็ต่อเมื่ออัลกอริทึมดังกล่าวไม่มีการดำเนินการวัด เมื่อข้อมูลควอนตัมถูกวัด มันมักจะถูกแปลงเป็นบิตไบนารี จากนั้นจึงส่งไปยังคอมพิวเตอร์ปกติ ("คลาสสิก") โปรเซสเซอร์ควอนตัมทำหน้าที่เหมือนตัวประมวลผลร่วมสำหรับโปรเซสเซอร์ไบนารีคลาสสิกดังกล่าว
แตกต่างจากเกตตรรกะแบบคลาสสิกหลายๆ ตัว เกตตรรกะควอนตัมสามารถย้อนกลับได้ เป็นไปได้ที่จะทำการคำนวณแบบคลาสสิกโดยใช้เฉพาะเกตที่ย้อนกลับได้เท่านั้น ตัวอย่างเช่นเกต Toffoli ที่ย้อนกลับได้ สามารถใช้ในการสร้างฟังก์ชันบูลีน ทั้งหมดได้ ซึ่งมักจะต้องใช้บิตเสริม (ancilla bits ) เกต Toffoli มีสิ่งที่เทียบเท่าโดยตรงในควอนตัม แสดงให้เห็นว่าวงจรควอนตัมสามารถดำเนินการทุกอย่างที่วงจรคลาสสิกทำได้
เกตควอนตัมเป็นตัวดำเนินการเอกภาพและอธิบายได้ว่าเป็นเมทริกซ์เอกภาพที่สัมพันธ์กับฐาน ออร์ โทนอร์มอล บางอย่าง โดยปกติ จะใช้ ฐานการคำนวณซึ่งเว้นแต่จะเปรียบเทียบกับสิ่งอื่น ก็หมายความว่าสำหรับ ระบบควอนตัมระดับ d (เช่นคิวบิตรีจิสเตอร์ควอนตัมหรือคิวทริตและคิวดิต ) [ 1 ] : 22–23 เวกเตอร์ฐานออร์โทนอร์มอลจะถูกติดป้ายกำกับหรือใช้สัญกรณ์ไบนารี
ประวัติศาสตร์
สัญลักษณ์ปัจจุบันสำหรับเกตควอนตัมได้รับการพัฒนาโดยผู้ก่อตั้งวิทยาศาสตร์ข้อมูลควอนตัม หลายคน รวมถึง Adriano Barenco, Charles Bennett , Richard Cleve , David P. DiVincenzo , Norman Margolus , Peter Shor , Tycho Sleator, John A. Smolinและ Harald Weinfurter [ 2 ]โดยต่อยอดจากสัญลักษณ์ที่Richard Feynman นำเสนอ ในปี 1986 [ 3 ]
การเป็นตัวแทน

เกตตรรกะควอนตัมแสดงด้วยเมทริกซ์เอกภาพเกตที่ทำงานกับคิวบิต (รีจิสเตอร์ ) จะแสดงด้วยเมทริกซ์เอกภาพ และเซตของเกตทั้งหมดดังกล่าวที่มีการดำเนินการกลุ่มของการคูณเมทริกซ์[ a ]คือกลุ่มเอกภาพ U(2n ) [ 2 ] สถานะควอนตัมที่เกตทำงานด้วยคือเวกเตอร์หน่วยใน มิติ เชิงซ้อนพร้อมด้วยนอร์มยุคลิดเชิงซ้อน ( นอร์ม 2 ) [ 4 ] : 66 [ 5 ] : 56, 65 เวกเตอร์ฐาน (บางครั้งเรียกว่าสถานะเฉพาะ ) คือผลลัพธ์ที่เป็นไปได้หากสถานะของคิวบิตถูกวัดและสถานะควอนตัมคือการรวมเชิงเส้นของผลลัพธ์เหล่านี้ เกตควอนตัมที่พบบ่อยที่สุดทำงานบนปริภูมิเวกเตอร์ของคิวบิตหนึ่งหรือสองตัว เช่นเดียวกับเกตตรรกะคลาสสิก ทั่วไป ที่ทำงานบนบิต หนึ่งหรือสอง ตัว
แม้ว่าเกตตรรกะควอนตัมจะอยู่ในกลุ่มสมมาตรต่อเนื่อง แต่ ฮาร์ดแวร์จริงนั้นไม่แม่นยำและจึงมีความแม่นยำจำกัด การใช้งานเกตมักจะทำให้เกิดข้อผิดพลาด และความถูกต้องของสถานะควอนตัมจะลดลงเมื่อเวลาผ่านไป หาก ใช้ การแก้ไขข้อผิดพลาดเกตที่ใช้งานได้จะถูกจำกัดให้เหลือเพียงเซตที่จำกัด[ 4 ] : บทที่ 10 [ 1 ] : บทที่ 14 ต่อมาในบทความนี้ เรื่องนี้จะถูกละเลย เนื่องจากจุดสนใจอยู่ที่คุณสมบัติของเกตควอนตัมในอุดมคติ
โดยทั่วไป สถานะควอนตัมจะถูกแทนด้วย "kets" ซึ่งมาจากสัญกรณ์ที่เรียกว่าbra– ket
เวกเตอร์แทนค่าคิวบิต เดี่ยว คือ
ในที่นี้และคือแอมพลิจูดความน่าจะเป็น เชิงซ้อน ของคิวบิต ค่าเหล่านี้กำหนดความน่าจะเป็นของการวัดค่า 0 หรือ 1 เมื่อทำการวัดสถานะของคิวบิต ดู รายละเอียดเพิ่มเติมได้ในหัวข้อ การวัดด้านล่าง
ค่าศูนย์แทนด้วยสัญลักษณ์ ket และค่าหนึ่งแทนด้วยสัญลักษณ์ket
ผลคูณเทนเซอร์ (หรือผลคูณโครเนกเกอร์ ) ใช้สำหรับรวมสถานะควอนตัม สถานะรวมสำหรับรีจิสเตอร์คิวบิตคือผลคูณเทนเซอร์ของคิวบิตที่เป็นส่วนประกอบ ผลคูณเทนเซอร์แสดงด้วยสัญลักษณ์ ` tensor`
เวกเตอร์แทนของคิวบิตสองตัวคือ: [ 6 ]
การกระทำของเกตต่อสถานะควอนตัมเฉพาะนั้นหาได้จากการคูณเวกเตอร์ซึ่งแทนสถานะนั้น ด้วยเมทริกซ์ที่แทนเกต ผลลัพธ์ที่ได้คือสถานะควอนตัมใหม่:
ความสัมพันธ์กับตัวดำเนินการวิวัฒนาการเวลา
สมการชโรดิงเกอร์อธิบายว่าระบบควอนตัมที่ไม่สามารถสังเกตได้ นั้น วิวัฒนาการไปตามเวลาอย่างไร และเมื่อระบบอยู่ในสภาพแวดล้อมที่เสถียร ดังนั้นจึงมีแฮมิลโท เนียนคง ที่ คำตอบของสมการนี้คือ[ 1 ] : 24–25 หากเวลาคงที่เสมอ อาจละเว้นได้เพื่อความง่าย และวิธีที่สถานะควอนตัมวิวัฒนาการสามารถอธิบายได้เช่นเดียวกับในส่วนด้านบน
กล่าวคือ เกตควอนตัมคือวิธีการที่ระบบควอนตัมซึ่งไม่สามารถสังเกตได้นั้นเปลี่ยนแปลงไปในช่วงเวลาที่กำหนด หรือกล่าวอีกนัยหนึ่ง เกตคือตัวดำเนินการวิวัฒนาการเวลา แบบเอกภาพ ที่กระทำต่อสถานะควอนตัมในช่วงเวลาที่กำหนด
ตัวอย่างที่น่าสนใจ
มีประตูอยู่ จำนวนนับ ไม่ถ้วนที่ไม่มีที่สิ้นสุดบางส่วนได้รับการตั้งชื่อโดยผู้เขียนหลายคน[ 1 ] [ 2 ] [ 4 ] [ 5 ] [ 7 ] [ 8 ] [ 9 ]และด้านล่างนี้คือบางส่วนที่ใช้บ่อยที่สุดในเอกสาร
ประตูยืนยันตัวตน
เกตเอกลักษณ์คือเมทริกซ์เอกลักษณ์ซึ่งโดยปกติจะเขียนแทนด้วยIและถูกกำหนดสำหรับคิวบิตเดี่ยวดังนี้
โดยที่Iเป็นฐานอิสระและไม่เปลี่ยนแปลงสถานะควอนตัม เกตเอกลักษณ์มีประโยชน์มากที่สุดเมื่อใช้ในการอธิบายผลลัพธ์ของการดำเนินการเกตต่างๆ ทางคณิตศาสตร์ หรือเมื่อกล่าวถึงวงจรหลายคิวบิต
ประตูเปาลี ( X , Y , Z )
เกต Pauli คือ เมทริกซ์ Pauliสาม เมทริกซ์ และทำงานกับคิวบิตเดียว Pauli X , YและZเทียบเท่ากับการหมุนรอบ แกน x , yและzของทรงกลม Bloch ตามลำดับ ด้วยเรเดียน[ b ]
เกต Pauli- Xเป็นเกตควอนตัมที่เทียบเท่ากับเกต NOTสำหรับคอมพิวเตอร์แบบคลาสสิก โดยสัมพันธ์กับฐานมาตรฐาน, ,ซึ่งแยกแยะ แกน zบนทรงกลม Blochบางครั้งเรียกว่าการพลิกบิต (bit-flip) เนื่องจากมันแปลงค่าจาก เป็นและจาก เป็น ในทำนอง เดียวกันเกต Pauli- Y แปลงค่า จาก เป็นและจาก เป็น เกต Pauli- Z ไม่เปลี่ยนแปลง สถานะฐานและแปลงค่าจากเป็นเนื่องจากลักษณะเช่นนี้ บางครั้งเกต Pauli- Zจึงเรียกว่าการพลิกเฟส (phase-flip)
เมทริกซ์เหล่านี้มักแสดงในรูปแบบดังนี้
เมทริกซ์ Pauli เป็นเมทริกซ์ผกผันซึ่งหมายความว่ากำลังสองของเมทริกซ์ Pauli คือเมท ริกซ์เอกลักษณ์
ตัวอย่างเช่นเมทริกซ์ของเปาลีก็มีคุณสมบัติการสลับที่แบบผกผัน ด้วย
เมทริกซ์เอกซ์โพเนนเชียลของเมทริกซ์ Pauli คือตัวดำเนินการหมุนซึ่งมักเขียนในรูป
ประตูควบคุม

เกตควบคุมจะทำงานกับคิวบิต 2 ตัวขึ้นไป โดยที่คิวบิตหนึ่งตัวขึ้นไปทำหน้าที่เป็นตัวควบคุมสำหรับการดำเนินการบางอย่าง[ 2 ]ตัวอย่างเช่นเกต NOT ควบคุม (หรือ CNOT หรือ CX) ทำงานกับคิวบิต 2 ตัว และดำเนินการ NOT กับคิวบิตตัวที่สองเฉพาะเมื่อคิวบิตตัวแรกเป็นและมิเช่นนั้นจะไม่เปลี่ยนแปลง เมื่อเทียบกับฐาน, , , ,จะถูกแทนด้วย เมทริกซ์ เอกภาพ เฮอร์มิ เชียน :
เกต CNOT (หรือเกต Pauli- X ที่ควบคุมได้ ) สามารถอธิบายได้ว่าเป็นเกตที่แมปสถานะพื้นฐานโดยที่คือ การดำเนิน การ XOR
CNOT สามารถแสดงในฐานเปาลีได้ดังนี้:
เนื่องจาก CNOT เป็นตัวดำเนินการเอกภาพแบบเฮอร์มิเชียน จึงมีคุณสมบัติที่ว่าและและเป็นแบบ ผกผัน
โดยทั่วไปแล้ว หากUเป็นเกตที่ทำงานกับคิวบิตเดี่ยวที่มีการแสดงผลในรูปแบบเมทริกซ์
ดังนั้นเกตควบคุม Uจึงเป็นเกตที่ทำงานกับคิวบิตสองตัวในลักษณะที่คิวบิตตัวแรกทำหน้าที่เป็นตัวควบคุม โดยจะแมปสถานะพื้นฐานดังต่อไปนี้
เมทริกซ์ที่แสดงถึงU ที่ถูกควบคุม คือ
เมื่อUเป็นหนึ่งในตัวดำเนินการ Pauli X , Y , Zบางครั้งจะใช้คำที่เกี่ยวข้องว่า "controlled- X ", "controlled- Y " หรือ "controlled- Z " [ 4 ] : 177–185 บางครั้งจะย่อให้เหลือเพียง C X , C YและC Z
โดยทั่วไปเกตเอกภาพควอนตัมบิต เดี่ยวใดๆ สามารถแสดงได้เป็น โดยที่Hคือเมทริกซ์เฮอร์มิเชียนและจากนั้นU ที่ถูกควบคุม คือ
การควบคุมสามารถขยายไปยังเกตที่มีจำนวนคิวบิตตามอำเภอใจ[ 2 ]และฟังก์ชันในภาษาโปรแกรม[ 10 ]ฟังก์ชันสามารถกำหนดเงื่อนไขตามสถานะซ้อนทับได้[ 11 ] [ 12 ]
การควบคุมแบบคลาสสิก

เกตยังสามารถควบคุมได้ด้วยตรรกะแบบคลาสสิก คอมพิวเตอร์ควอนตัมถูกควบคุมโดยคอมพิวเตอร์แบบคลาสสิกและทำหน้าที่เหมือนโคโปรเซสเซอร์ที่รับคำสั่งจากคอมพิวเตอร์แบบคลาสสิกเกี่ยวกับเกตที่จะดำเนินการกับคิวบิตใด[ 13 ] : 42–43 [ 14 ]การควบคุมแบบคลาสสิกเป็นเพียงการรวมหรือการละเว้นเกตในลำดับคำสั่งสำหรับคอมพิวเตอร์ควอนตัม[ 4 ] : 26–28 [ 1 ] : 87–88 การทำการวัดในส่วนกลางของวงจรควอนตัม แทนที่จะเป็นส่วนท้ายนั้น เป็นเรื่องยากและท้าทายทางเทคนิคเนื่องจากปัญหาเรื่องเวลาและการสูญเสียความสอดคล้องด้วยเหตุนี้ คอมพิวเตอร์ควอนตัมบางเครื่องจึงไม่รองรับคำสั่ง if แบบคลาสสิกเหล่านี้ ซึ่งข้อมูลควอนตัมจะถูกแปลงเป็นบิต จากนั้นจึงควบคุมการไหลของโปรแกรม[ 15 ] [ 16 ]
เกตเปลี่ยนเฟส
การเปลี่ยนเฟสเป็นกลุ่มของเกตควอนตัมบิตเดี่ยวที่แมปสถานะพื้นฐานและความน่าจะเป็นของการวัดค่าหรือจะไม่เปลี่ยนแปลงหลังจากใช้เกตนี้ อย่างไรก็ตาม มันจะปรับเปลี่ยนเฟสของสถานะควอนตัม ซึ่งเทียบเท่ากับการลากวงกลมแนวนอน (เส้นละติจูดคงที่) หรือการหมุนรอบแกน z บนทรงกลมบล็อกด้วยมุมเรเดียน เกตการเปลี่ยนเฟสแสดงด้วยเมทริกซ์:
โดยที่คือการเปลี่ยนเฟสที่มีคาบ2πตัวอย่างที่พบได้ทั่วไป ได้แก่ เกต T ( ซึ่งในอดีตเรียกว่าเกต) เกตเฟส (หรือที่รู้จักกันในชื่อเกต S เขียนเป็นSแต่ บางครั้ง Sก็ใช้สำหรับเกต SWAP) และเกตPauli- Z
เกตเปลี่ยนเฟสมีความสัมพันธ์กันดังต่อไปนี้:
โปรดทราบว่าเกตเฟสไม่ใช่เฮอร์มิเชียน (ยกเว้นทั้งหมด) เกตเหล่านี้แตกต่างจากเกตเฮอร์มิเชียนคู่ควบของพวกมัน: เกตคู่ควบ สองตัว (หรือเกตคู่ควบสลับตำแหน่ง ) และบางครั้งรวมอยู่ในชุดคำสั่ง[ 17 ] [ 18 ]
ประตูฮาดามาร์ด
เกต Hadamard หรือ Walsh-Hadamard ซึ่งตั้งชื่อตามJacques Hadamard ( ภาษาฝรั่งเศส: [adamaʁ] ) และJoseph L. Walshทำงานกับคิวบิตเดี่ยว มันแมปสถานะพื้นฐานและ(มันสร้างสถานะซ้อนทับที่เท่ากันหากได้รับสถานะพื้นฐานการคำนวณ) สถานะทั้งสองและบางครั้งเขียน ว่า และตามลำดับ เกต Hadamard ทำการหมุนรอบแกนที่ทรงกลม Blochและดังนั้นจึงเป็น เกต ผกผันมันถูกแทนด้วยเมทริกซ์ Hadamard :

ถ้าใช้เกต Hadamard แบบHermitian (ดังนั้น ) เพื่อทำการ เปลี่ยนฐานมันจะพลิกกลับและตัวอย่างเช่นและ
ประตูสลับ

เกตสลับ (swap gate) สลับคิวบิตสองตัว โดยเทียบกับฐาน, , , จะถูกแทนด้วยเมทริกซ์
เกตสลับสามารถแยกออกเป็นรูปแบบผลรวมได้:
ประตูทอฟโฟลี (CCNOT)

เกต Toffoli ซึ่งตั้งชื่อตามTommaso Toffoliและเรียกอีกอย่างว่าเกต CCNOT หรือเกต Deutsch เป็นเกต 3 บิตที่เป็นสากลสำหรับการคำนวณแบบคลาสสิก แต่ไม่ใช่สำหรับการคำนวณแบบควอนตัม เกต Toffoli แบบควอนตัมเป็นเกตเดียวกันที่กำหนดสำหรับ 3 คิวบิต หากเราจำกัดตัวเองให้ยอมรับเฉพาะคิวบิตอินพุตที่เป็นและเท่านั้นหากบิตสองบิตแรกอยู่ในสถานะมันจะใช้ Pauli- X (หรือ NOT) กับบิตที่สาม มิฉะนั้นจะไม่ทำอะไรเลย นี่เป็นตัวอย่างของเกต CC-U (controlled-controlled Unitary) เนื่องจากเป็นอนาล็อกควอนตัมของเกตแบบคลาสสิก มันจึงถูกกำหนดอย่างสมบูรณ์โดยตารางความจริง เกต Toffoli เป็นสากลเมื่อรวมกับเกต Hadamard คิวบิตเดี่ยว[ 19 ]
| ตารางความจริง | รูปแบบเมทริกซ์ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||
เกต Toffoli เกี่ยวข้องกับ การดำเนินการ AND ( ) และXOR ( ) แบบคลาสสิก เนื่องจากทำการแมปสถานะในฐานการคำนวณ
ประตู Toffoli สามารถแสดงได้โดยใช้เมทริกซ์ Pauliดังนี้
ประตูควอนตัมสากล

เซตของเกตควอนตัมสากลคือเซตของเกตใดๆ ที่การดำเนินการใดๆ ที่เป็นไปได้บนคอมพิวเตอร์ควอนตัมสามารถลดทอนลงได้ กล่าวคือ การดำเนินการเอกภาพอื่นๆ สามารถแสดงได้เป็นลำดับเกตจำนวนจำกัดจากเซตนั้น ในทางเทคนิคแล้ว สิ่งนี้เป็นไปไม่ได้หากเซตของเกตมีจำนวนน้อยกว่า เซต ที่นับไม่ได้เนื่องจากจำนวนเกตควอนตัมที่เป็นไปได้นั้นนับไม่ได้ ในขณะที่จำนวนลำดับจำนวนจำกัดจากเซตที่จำกัด นั้น นับได้ในการแก้ปัญหานี้ เราเพียงต้องการว่าการดำเนินการควอนตัมใดๆ สามารถประมาณได้ด้วยลำดับเกตจากเซตที่จำกัดนี้ ยิ่งไปกว่านั้น สำหรับการดำเนินการเอกภาพบนจำนวนคิวบิตคงที่ทฤษฎีบท Solovay–Kitaevรับประกันว่าสิ่งนี้สามารถทำได้อย่างมีประสิทธิภาพ การตรวจสอบว่าเซตของเกตควอนตัมเป็นสากลหรือไม่สามารถทำได้โดยใช้วิธีการทฤษฎีกลุ่ม[ 20 ] และ/หรือความสัมพันธ์กับ t-design เอกภาพ ( โดยประมาณ) [ 21 ] หาก สมมติฐานช่องว่างสเปกตรัมเป็นจริง นั่นหมายความว่าชุดเกตควอนตัมที่เลือกโดยทั่วไปจะมีประสิทธิภาพในระดับสากล
ชุดเกตควอนตัมสากลบางชุดได้แก่:
- ตัวดำเนินการหมุนR x ( θ ) , R y ( θ ) , R z ( θ ) , เกตเปลี่ยนเฟสP ( φ ) [ c ]และCNOTมักใช้เพื่อสร้างชุดเกตควอนตัมสากล[ 22 ] [ d ]
- เซตคลิฟฟอร์ด {CNOT, H , S } + เกต Tเซตคลิฟฟอร์ดเพียงอย่างเดียวไม่ใช่เซตเกตควอนตัมสากล เนื่องจากสามารถจำลองได้อย่างมีประสิทธิภาพในแบบคลาสสิกตามทฤษฎีบทGottesman–Knill
- เกต Toffoli + เกต Hadamard [ 19 ]เกต Toffoli เพียงอย่างเดียวก็สร้างชุดเกตสากลสำหรับ วงจรตรรกะ พีชคณิตบูลีน แบบย้อนกลับได้ ซึ่งครอบคลุมการคำนวณแบบคลาสสิกทั้งหมด
ประตูเยอรมัน
ชุดเกตควอนตัมสากลแบบเกตเดี่ยวสามารถกำหนดสูตรได้โดยใช้เกต Deutsch สามคิวบิตแบบพารามิเตอร์[ 23 ] ซึ่งตั้งชื่อตามนักฟิสิกส์David Deutschเป็นกรณีทั่วไปของCC-Uหรือ เกต ควบคุม-ควบคุม-เอกภาพและกำหนดเป็น
น่าเสียดายที่เกต Deutsch ที่ใช้งานได้ยังคงเข้าถึงได้ยาก เนื่องจากขาดโปรโตคอล มีข้อเสนอบางประการในการสร้างเกต Deutsch ด้วยปฏิสัมพันธ์ไดโพล-ไดโพลในอะตอมที่เป็นกลาง[ 24 ]
เกตตรรกะสากลสำหรับการคำนวณแบบคลาสสิกที่ย้อนกลับได้ ซึ่งก็คือเกตทอฟโฟลี สามารถลดรูปไปเป็นเกตดอยช์ได้ซึ่งแสดงให้เห็นว่าการดำเนินการทางตรรกะแบบคลาสสิกที่ย้อนกลับได้ทั้งหมดสามารถทำได้บนคอมพิวเตอร์ควอนตัมสากล
นอกจากนี้ยังมีเกตสองคิวบิตเดี่ยวที่เพียงพอสำหรับความเป็นสากล ในปี 1996 Adriano Barenco ได้แสดงให้เห็นว่าเกต Deutsch สามารถแยกส่วนได้โดยใช้เกตสองคิวบิตเดี่ยว ( เกต Barenco ) แต่ยากที่จะทำให้เกิดขึ้นจริงในทางทดลอง[ 1 ] : 93 คุณสมบัตินี้เป็นเอกลักษณ์เฉพาะของวงจรควอนตัม เนื่องจากไม่มีเกตสองบิตแบบคลาสสิกใดที่ทั้งย้อนกลับได้และเป็นสากล[ 1 ] : 93 เกตสองคิวบิตที่เป็นสากลสามารถนำไปใช้เพื่อปรับปรุงวงจรย้อนกลับแบบคลาสสิกในไมโครโปรเซสเซอร์พลังงานต่ำที่รวดเร็วได้[ 1 ] : 93
การประกอบวงจร
ประตูที่ต่อสายแบบอนุกรม

สมมติว่าเรามีเกตAและB สองตัว ที่ทำงานกับคิวบิตทั้งคู่ เมื่อวางB ต่อจาก Aในวงจรอนุกรม ผลของเกตทั้งสองสามารถอธิบายได้ว่าเป็นเกตC ตัว เดียว
โดยที่เป็นการคูณเมทริกซ์ เกต Cที่ได้จะมีมิติเท่ากับAและBลำดับที่เกตจะปรากฏในแผนภาพวงจรจะกลับกันเมื่อคูณเข้าด้วยกัน[ 4 ] : 17–18,22–23,62–64 [ 5 ] : 147–169
ตัวอย่างเช่น การวางเกต Pauli X ไว้ หลังเกต Pauli Yซึ่งทั้งสองเกตทำงานกับคิวบิตเดียว สามารถอธิบายได้ว่าเป็นเกตแบบรวมC ตัวเดียว :
โดยทั่วไปมักละเว้น สัญลักษณ์ผลิตภัณฑ์ ( )
เลขชี้กำลังของเกตควอนตัม
เลขชี้กำลังจริงทั้งหมด ของ เมทริกซ์เอกลักษณ์ก็เป็นเมทริกซ์เอกลักษณ์เช่นกัน และเกตควอนตัมทั้งหมดก็เป็นเมทริกซ์เอกลักษณ์
เลขชี้กำลังจำนวนเต็มบวกเทียบเท่ากับลำดับของเกตที่ต่ออนุกรมกัน (เช่น)และเลขชี้กำลังจำนวนจริงเป็นการขยายความของวงจรอนุกรม ตัวอย่างเช่นและต่างก็เป็นเกตควอนตัมที่ถูกต้อง
สำหรับเมทริกซ์เอกลักษณ์ใดๆเมทริกซ์เอกลักษณ์ ( ) ทำหน้าที่เหมือนNOP [ 25 ] [ 26 ]และสามารถแสดงเป็นสายเปลือยในวงจรควอนตัม หรือไม่แสดงเลยก็ได้
เกตทั้งหมดเป็นเมทริกซ์เอกลักษณ์ ดังนั้นและโดยที่คือเมทริกซ์สลับตำแหน่งสังยุคซึ่งหมายความว่าเลขชี้กำลังลบของเกตจะเป็นเมทริกซ์ผกผันเอกลักษณ์ของเลขชี้กำลังบวกของเกตนั้น:ตัวอย่างเช่น เลขชี้กำลังลบของ เก ตเปลี่ยนเฟส บางตัว คือและ
โปรดทราบว่าสำหรับเมทริกซ์เฮอร์มิเชียน และเนื่องจากความเป็นเอกภาพดังนั้นสำหรับเกตเฮอร์มิเชียนทั้งหมด เกตเหล่านี้จึงเป็นแบบผกผันตัวอย่างของเกตเฮอร์มิเชียน ได้แก่เกต Pauli , Hadamard , CNOT , SWAPและToffoliเมทริกซ์เอกภาพเฮอร์มิเชียนแต่ละตัวมีคุณสมบัติที่ว่า โดยที่
เลขชี้กำลังของเกตเป็นผลคูณของระยะเวลาที่ตัวดำเนินการวิวัฒนาการเวลาถูกนำไปใช้กับสถานะควอนตัม เช่น ในคอมพิวเตอร์ควอนตัมแบบคิวบิตสปินเกตสามารถสร้างขึ้นได้ผ่านปฏิสัมพันธ์แลกเปลี่ยนบนสปินของอิเล็กตรอน สองตัว เป็นเวลาครึ่งหนึ่งของระยะเวลาของปฏิสัมพันธ์แลกเปลี่ยนเต็มรูปแบบ[ 27 ]
ประตูขนาน

ผลคูณเทนเซอร์ (หรือผลคูณโครเนกเกอร์ ) ของเกตควอนตัมสองตัวคือเกตที่เท่ากับเกตทั้งสองตัวที่ขนานกัน[ 4 ] : 71–75 [ 5 ] : 148
ถ้าเราต่อวงจรเกต Pauli- Yกับเกต Pauli- X แบบขนาน ดังแสดงในภาพจะสามารถเขียนได้ดังนี้:
เกต Pauli- Xและเกต Pauli- Y ต่างก็ ทำงานกับคิวบิตตัวเดียว ส่วนเกตที่ได้นั้นจะทำงานกับคิวบิตสองตัว
บางครั้งสัญลักษณ์ผลคูณเทนเซอร์จะถูกละเว้น และจะใช้ดัชนีแทนตัวดำเนินการ[ 27 ]
การแปลงฮาดามาร์ด
เกตนี้คือเกต Hadamard ( )ที่ใช้แบบขนานกับคิวบิต 2 ตัว สามารถเขียนได้ดังนี้:
"เกต Hadamard แบบขนานสองคิวบิต" นี้ เมื่อนำไปใช้กับเวกเตอร์ศูนย์สองคิวบิต ( )ตัวอย่างเช่น จะ สร้างสถานะค วอนตัมที่มีความน่าจะเป็นเท่ากันในการสังเกตผลลัพธ์ที่เป็นไปได้ทั้งสี่แบบ ได้แก่, , ,และเราสามารถเขียนการดำเนินการนี้ได้ดังนี้:

ในที่นี้ แอมพลิจูดสำหรับแต่ละสถานะที่วัดได้คือ1/2 ความน่าจะเป็นที่จะสังเกตเห็นสถานะใดๆ คือกำลังสองของค่าสัมบูรณ์ของแอมพลิจู ดของสถานะที่วัดได้ ซึ่งในตัวอย่างข้างต้นหมายความว่ามีโอกาสหนึ่งในสี่ที่เราจะสังเกตเห็นกรณีใดกรณีหนึ่งจากสี่กรณี ดูรายละเอียดเพิ่มเติมได้ใน ส่วนการวัด
ทำการแปลงฮาดามาร์ดบนคิวบิตสองตัว ในทำนองเดียวกัน เกตนี้ทำการแปลงฮาดามาร์ดบนรีจิสเตอร์ของคิวบิต
เมื่อนำไปใช้กับรีจิสเตอร์ของคิวบิตที่เริ่มต้นด้วยค่า 0 ทั้งหมดการแปลงฮาดามาร์ดจะทำให้รีจิสเตอร์ควอนตัมเข้าสู่สถานะซ้อนทับ โดยมีความน่าจะเป็นเท่ากันที่จะถูกวัดในสถานะใดๆ ก็ตามที่เป็นไปได้:
สถานะนี้เป็นการซ้อนทับแบบสม่ำเสมอและถูกสร้างขึ้นเป็นขั้นตอนแรกในอัลกอริธึมการค้นหาบางอย่าง เช่น ในการขยายแอมพลิจูดและการประมาณค่าเฟส
การวัดสถานะนี้ส่งผลให้ได้ตัวเลขสุ่มระหว่างและ[ e ]ความสุ่มของตัวเลขขึ้นอยู่กับความแม่นยำ ของเกตตรรกะ หากไม่ได้วัด ตัวเลข นี้ จะเป็นสถานะควอนตัมที่มี แอมพลิจูดความน่าจะเป็นเท่ากันสำหรับแต่ละสถานะที่เป็นไปได้
การแปลง Hadamard กระทำต่อรีจิสเตอร์ที่มีคิวบิตในลักษณะดังต่อไปนี้:
การประยุกต์ใช้กับสถานะพันกัน
หากมองคิวบิตสองตัวขึ้นไปเป็นสถานะควอนตัมเดียว สถานะรวมนี้จะเท่ากับผลคูณเทนเซอร์ของคิวบิตที่เป็นส่วนประกอบ สถานะใดๆ ที่สามารถเขียนได้ในรูปผลคูณเทนเซอร์จากระบบย่อยที่เป็นส่วนประกอบเรียกว่าสถานะแยกส่วนได้ในทางกลับกันสถานะพันกันคือสถานะใดๆ ที่ไม่สามารถแยกตัวประกอบเทนเซอร์ได้ หรือกล่าวอีกนัยหนึ่งคือสถานะพันกันไม่สามารถเขียนได้ในรูปผลคูณเทนเซอร์ของสถานะคิวบิตที่เป็นส่วนประกอบต้องใช้ความระมัดระวังเป็นพิเศษเมื่อใช้เกตกับคิวบิตที่เป็นส่วนประกอบที่ประกอบเป็นสถานะพันกัน
ถ้าเรามีชุด คิวบิต Nตัวที่พันกัน และต้องการใช้เกตควอนตัมกับ คิวบิต M < Nตัวในชุดนั้น เราจะต้องขยายเกตให้รองรับ คิวบิต Nตัว การประยุกต์ใช้ดังกล่าวสามารถทำได้โดยการรวมเกตเข้ากับเมทริกซ์เอกลักษณ์โดยที่ผลคูณเทนเซอร์ของทั้งสองจะกลายเป็นเกตที่ทำงานกับ คิวบิต Nตัว เมทริกซ์เอกลักษณ์( )เป็นตัวแทนของเกตที่แมปทุกสถานะไปยังตัวมันเอง (กล่าวคือ ไม่ทำอะไรเลย) ในแผนภาพวงจร เกตหรือเมทริกซ์เอกลักษณ์มักจะปรากฏเป็นเพียงสายไฟเปลือย

ตัวอย่างเช่น เกต Hadamard ( )ทำงานกับคิวบิตเดียว แต่ถ้าเราป้อนคิวบิตแรกจากสองคิวบิตที่ประกอบกันเป็นสถานะ Bell ที่พันกัน เราจะไม่สามารถเขียนการดำเนินการนั้นได้ง่ายๆ เราจำเป็นต้องขยายเกต Hadamard ด้วยเกตเอกลักษณ์เพื่อให้เราสามารถทำงานกับสถานะควอนตัมที่ครอบคลุมสองคิวบิต ได้
ตอนนี้ เกตนี้สามารถนำไปใช้กับสถานะสองคิวบิตใดๆ ก็ได้ ไม่ว่าจะเป็นคิวบิตที่พันกันหรือไม่ก็ตาม เกตนี้จะปล่อยให้คิวบิตที่สองไม่เปลี่ยนแปลง และใช้การแปลงฮาดามาร์ดกับคิวบิตแรก หากนำไปใช้กับสถานะเบลล์ในตัวอย่างของเรา เราอาจเขียนได้ดังนี้:
ความซับซ้อนในการคำนวณและผลคูณเทนเซอร์
ความซับซ้อน ของเวลาในการคูณเมท ริกซ์ สองตัวอย่างน้อยที่สุดคือ[ 28 ] หากใช้เครื่องจักรแบบคลาสสิก เนื่องจากขนาดของเกตที่ดำเนินการกับคิวบิตคือหมายความว่าเวลาสำหรับการจำลองขั้นตอนในวงจรควอนตัม (โดยการคูณเกต) ที่ดำเนินการกับสถานะพันกันทั่วไปคือด้วยเหตุนี้จึงเชื่อกันว่า การจำลองระบบควอนตัมพันกันขนาดใหญ่โดยใช้คอมพิวเตอร์แบบคลาสสิกนั้น ทำได้ยาก อย่างไรก็ตาม ชุดย่อยของ เกต เช่นเกตคลิฟฟอร์ดหรือกรณีง่ายๆ ของวงจรที่ใช้เฉพาะฟังก์ชันบูลีนแบบคลาสสิก (เช่น การรวมกันของX , CNOT , Toffoli ) สามารถจำลองได้อย่างมีประสิทธิภาพบนคอมพิวเตอร์แบบคลาสสิก
เวกเตอร์สถานะของรีจิสเตอร์ควอนตัมที่มีคิวบิตประกอบด้วยค่าเชิงซ้อน การจัดเก็บ ค่าแอม พลิจูดความน่าจะเป็นเป็นรายการของค่าทศนิยมนั้นทำได้ยากสำหรับค่าขนาดใหญ่
การผกผันเอกภาพของเกต

เนื่องจากเกตตรรกะควอนตัมทั้งหมด สามารถย้อน กลับได้ดังนั้นการประกอบเกตหลายตัวเข้าด้วยกันจึงสามารถย้อนกลับได้เช่นกัน ผลคูณและผลคูณเทนเซอร์ (เช่น การรวมกัน แบบอนุกรมและแบบขนาน ) ของเมทริกซ์เอกลักษณ์ ทั้งหมด ก็เป็นเมทริกซ์เอกลักษณ์เช่นกัน ซึ่งหมายความว่าสามารถสร้างตัวผกผันของอัลกอริทึมและฟังก์ชันทั้งหมดได้ ตราบใดที่พวกมันประกอบด้วยเกตเท่านั้น
การเริ่มต้น การวัด การรับส่งข้อมูลและการเสื่อมสภาพของ ควอนตัมโดยธรรมชาติ เป็นผลข้างเคียงในคอมพิวเตอร์ควอนตัม อย่างไรก็ตาม เกตนั้นเป็นฟังก์ชันล้วนๆและเป็นแบบหนึ่งต่อหนึ่ง
ถ้าเป็นเมทริกซ์เอกลักษณ์แล้วและเครื่องหมายกริช ( )หมายถึงเมทริกซ์สลับเปลี่ยนเชิงสัง ยุค เรียกอีกอย่างว่าเมทริกซ์เฮอร์มิเชียนแอดจอยต์
ถ้าฟังก์ชันเป็นผลคูณของเกต เราสามารถสร้าง อินเวอร์สเอกภาพ (unitary inverse) ของฟังก์ชันนั้น ได้:
เพราะเรามี หลังจากนำไปประยุกต์ใช้ซ้ำหลายครั้งแล้ว
ในทำนองเดียวกัน หากฟังก์ชันประกอบด้วยเกตสองตัวและต่อขนานกัน ก็จะ ได้ ว่าและ
เกตที่เป็นตัวผกผันเอกภาพของตัวเองเรียกว่า ตัวดำเนินการ เฮอร์มิเชียนหรือตัวดำเนินการสมมาตรในตัวเองเกตพื้นฐานบางตัว เช่น เกตฮาดามาร์ด ( H ) และเกตเปาลี ( I , X , Y , Z ) เป็นตัวดำเนินการเฮอร์มิเชียน ในขณะที่เกตอื่นๆ เช่น เกต เปลี่ยนเฟส ( S , T , P , CPhase ) โดยทั่วไปไม่ใช่ตัวดำเนินการเฮอร์ มิเชียน
ตัวอย่างเช่น อัลกอริทึมสำหรับการบวกสามารถใช้สำหรับการลบได้ หากมันถูก "ดำเนินการย้อนกลับ" ในฐานะตัวผกผันเอกภาพการแปลงฟูริเยร์ควอนตัมผกผันคือตัวผกผันเอกภาพ ตัวผกผันเอกภาพยังสามารถใช้สำหรับการคำนวณย้อนกลับได้อีก ด้วย ภาษาโปรแกรมสำหรับคอมพิวเตอร์ควอนตัม เช่นQ#ของMicrosoft [ 10 ] QCLของBernhard Ömer [ 13 ] : 61 และ Qiskit ของ IBM [ 29 ]มีการผกผันฟังก์ชันเป็นแนวคิดการเขียนโปรแกรม
การวัด

การวัด (บางครั้งเรียกว่าการสังเกต ) นั้นไม่สามารถย้อนกลับได้ ดังนั้นจึงไม่ใช่เกตควอนตัม เพราะมันกำหนดสถานะควอนตัมที่สังเกตได้ให้กับค่าเดียว การวัดจะนำสถานะควอนตัมและฉายภาพไปยังเวกเตอร์ฐานตัว ใดตัวหนึ่ง โดยมีความน่าจะเป็นเท่ากับกำลังสองของความยาวของเวกเตอร์ (ในนอร์ม 2 [ 4 ] : 66 [ 5 ] : 56, 65 ) ตามเวกเตอร์ฐานนั้น[ 1 ] : 15–17 [ 30 ] [ 31 ] [ 32 ]สิ่งนี้เรียกว่ากฎของบอร์นและปรากฏ[ e ]เป็นการ ดำเนินการ แบบสุ่มที่ไม่สามารถย้อนกลับได้ เนื่องจากมันกำหนดสถานะควอนตัมให้เท่ากับเวกเตอร์ฐานที่แสดงถึงสถานะที่วัดได้โดยใช้ความน่าจะเป็น ณ ขณะที่ทำการวัด สถานะจะ " ยุบตัว " ไปสู่ค่าเดียวที่แน่นอนซึ่งวัดได้ เหตุใดและอย่างไร หรือแม้กระทั่งว่า[ 33 ] [ 34 ]สถานะควอนตัมจะยุบตัวลงเมื่อทำการวัด เรียกว่าปัญหาการวัด
ความน่าจะเป็นของการวัดค่าด้วยแอมพลิจูดความ น่าจะ เป็น คือโดยที่คือค่าสัมบูรณ์
การวัดคิวบิตเดี่ยว ซึ่งสถานะควอนตัมแสดงด้วยเวกเตอร์จะได้ผลลัพธ์เป็นด้วยความน่าจะเป็นและ ผลลัพธ์ เป็นด้วยความน่าจะเป็น
ตัวอย่างเช่น การวัดคิวบิตด้วยสถานะควอนตัมจะให้ผลลัพธ์เป็น หรือ ด้วยความน่าจะเป็นเท่ากัน

สถานะควอนตัมที่ครอบคลุมnคิวบิต สามารถเขียนได้ในรูปเวกเตอร์ใน มิติ เชิงซ้อน : .เนื่องจากผลคูณเทนเซอร์ของnคิวบิต เป็นเวกเตอร์ในมิติ ด้วยวิธีนี้รีจิสเตอร์ของnคิวบิต สามารถวัดได้เป็นสถานะที่แตกต่างกัน คล้ายกับที่รีจิสเตอร์ของn บิตแบบคลาสสิกสามารถเก็บสถานะที่แตกต่างกันได้ แต่แตกต่างจากบิตของคอมพิวเตอร์แบบคลาสสิก สถานะควอนตัมสามารถมีแอมพลิจูดความน่าจะเป็นที่ไม่เป็นศูนย์ในหลายค่าที่วัดได้พร้อมกัน ซึ่งเรียกว่าการซ้อนทับ (superposition )
ผลรวมของความน่าจะเป็นทั้งหมดสำหรับผลลัพธ์ทั้งหมดจะต้องเท่ากับเสมอ1. [ f ]อีกวิธีหนึ่งที่จะกล่าวเช่นนี้คือทฤษฎีบทพีทาโกรัสที่ขยายความทั่วไปไปสู่มีว่าสถานะควอนตัมทั้งหมดที่มีnคิวบิตต้องสอดคล้องกับ[ g ]โดยที่คือแอมพลิจูดความน่าจะเป็นสำหรับสถานะที่วัดได้การตีความทางเรขาคณิตของสิ่งนี้คือพื้นที่ค่า ที่เป็นไปได้ ของสถานะควอนตัมที่มีnคิวบิต คือพื้นผิวของทรงกลมหน่วยในและการแปลงเอกภาพ (เช่น เกตตรรกะควอนตัม) ที่ใช้กับมันคือการหมุนบนทรงกลม การหมุนที่เกตดำเนินการก่อให้เกิดกลุ่มสมมาตรU(2n )การ วัดจึงเป็นการฉายภาพความน่าจะเป็นของจุดบนพื้นผิวของทรงกลม เชิงซ้อนนี้ลงบนเวกเตอร์ฐานที่ครอบคลุมพื้นที่ (และติดป้ายกำกับผลลัพธ์)
ในหลายกรณี พื้นที่นั้นจะถูกแทนด้วยพื้นที่ฮิลเบิร์ต (Hilbert space) แทนที่จะเป็นพื้นที่เชิงซ้อนมิติใดมิติ หนึ่ง โดยเฉพาะ จำนวนมิติ (ที่กำหนดโดยเวกเตอร์ฐาน และด้วยเหตุนี้จึงรวมถึงผลลัพธ์ที่เป็นไปได้จากการวัด) มักจะถูกบ่งบอกโดยตัวดำเนินการ ตัวอย่างเช่น เป็นพื้นที่สถานะ ที่จำเป็น สำหรับการแก้ปัญหาในอัลกอริทึมของโกรเวอร์โกรเวอร์เรียกชุดเวกเตอร์ฐานทั่วไปนี้ว่า "ฐานข้อมูล "
การเลือกเวกเตอร์ฐานที่จะใช้วัดสถานะควอนตัมจะมีผลต่อผลลัพธ์ของการวัด[ 1 ] : 30–35 [ 4 ] : 22, 84–85, 185–188 [ 35 ]ดู รายละเอียดเพิ่มเติมเกี่ยวกับ การเปลี่ยนฐานและเอนโทรปีของ Von Neumannในบทความนี้ เราใช้ฐานการคำนวณ เสมอ ซึ่งหมายความว่าเราได้กำหนดป้ายกำกับเวกเตอร์ฐานของรีจิสเตอร์n -qubit หรือใช้การแสดงแทนแบบไบนารี
ในกลศาสตร์ควอนตัมเวกเตอร์ฐานประกอบกันเป็นฐานตั้งฉากปกติ (orthonormal basis )
ตัวอย่างหนึ่งของการใช้ฐานการวัดทางเลือกคือในรหัสลับ BB84
ผลกระทบของการวัดต่อสถานะพันกัน

หากสถานะควอนตัม สองสถานะ (เช่นคิวบิตหรือรีจิสเตอร์ ) เกิดการพัวพันกัน (หมายความว่าสถานะรวมของทั้งสองสถานะไม่สามารถแสดงได้ในรูปผลคูณเทนเซอร์ ) การวัดรีจิสเตอร์หนึ่งจะส่งผลกระทบหรือเปิดเผยสถานะของรีจิสเตอร์อีกตัวหนึ่งโดยการยุบตัวของสถานะนั้นบางส่วนหรือทั้งหมด ผลกระทบนี้สามารถนำไปใช้ในการคำนวณได้ และถูกนำไปใช้ในอัลกอริทึมหลายอย่าง
การรวมกันของ Hadamard-CNOT มีผลต่อสถานะศูนย์ดังต่อไปนี้:

สถานะที่เกิดขึ้นนี้คือสถานะเบลล์ไม่สามารถอธิบายได้ว่าเป็นผลคูณเทนเซอร์ของคิวบิตสองตัว ไม่มีคำตอบสำหรับ
เพราะตัวอย่างเช่นw จะต้องมี ค่า ทั้งไม่เป็นศูนย์และเป็นศูนย์ในกรณีของxwและyw
สถานะควอนตัมครอบคลุมคิวบิตทั้งสองตัว นี่เรียกว่าการพัวพัน (entanglement ) การวัดคิวบิตตัวใดตัวหนึ่งจากสองตัวที่ประกอบกันเป็นสถานะเบลล์นี้ จะส่งผลให้คิวบิตอีกตัวหนึ่งต้องมีค่าเดียวกันตามหลักตรรกะ กล่าวคือทั้งสองตัวต้องมีค่าเหมือนกัน ไม่ว่าจะเป็นสถานะหรือสถานะหากเราวัดคิวบิตตัวใดตัวหนึ่งได้ค่าเป็น ตัวอย่างเช่นคิวบิตอีกตัวหนึ่งก็ต้องมีค่าเป็น เช่นกันเพราะสถานะรวม ของทั้งสองตัวกลายเป็น การวัดคิวบิตตัวใดตัวหนึ่งจะทำให้สถานะควอนตั มทั้งหมดที่ครอบคลุมคิวบิตทั้งสองตัวนั้น ยุบ ตัว ลง
สถานะGHZเป็นสถานะควอนตัมพันกันที่คล้ายคลึงกัน ซึ่งครอบคลุมคิวบิตสามตัวขึ้นไป
การกำหนดค่าประเภทนี้เกิดขึ้นทันทีในระยะทางใดๆ และได้รับการยืนยันจากการทดลองโดย QUESSในปี 2018 สำหรับระยะทางสูงสุดถึง 1200 กิโลเมตร[ 36 ] [ 37 ] [ 38 ]ปรากฏการณ์ที่ดูเหมือนจะเกิดขึ้นทันทีเมื่อเทียบกับเวลาที่ใช้ในการเดินทางข้ามระยะทางที่แยกคิวบิตด้วยความเร็วแสงเรียกว่าปรากฏการณ์ EPRและเป็นคำถามที่ยังเปิดอยู่ในฟิสิกส์ว่าจะแก้ไขปัญหานี้ได้อย่างไร เดิมทีปัญหานี้ได้รับการแก้ไขโดยการละทิ้งสมมติฐานของความเป็นจริงเฉพาะที่แต่ ก็มี การตีความ อื่นๆ เกิดขึ้นเช่นกัน สำหรับข้อมูลเพิ่มเติม โปรดดูการทดลองทดสอบของเบลล์ทฤษฎีบทการสื่อสารไม่ได้ พิสูจน์ว่าปรากฏการณ์นี้ไม่สามารถใช้สำหรับการสื่อสาร ข้อมูลคลาสสิกที่เร็วกว่าแสงได้
การวัดค่าบนรีจิสเตอร์ที่มีคิวบิตพันกันเป็นคู่ๆ

พิจารณารีจิสเตอร์ A ที่มี คิวบิต nตัวซึ่งเริ่มต้นด้วยค่าและป้อนค่าผ่าน เก ตHadamard แบบขนานรีจิสเตอร์ A จะเข้าสู่สถานะที่มีความน่าจะเป็นเท่ากันของ เมื่อวัดค่า ให้เป็น ในสถานะใดๆ ก็ตามที่เป็นไปได้พิจารณารีจิสเตอร์ B ตัวที่สอง ซึ่งมี คิวบิต nตัวที่เริ่มต้นด้วยค่า เช่นกันและทำการCNOTคิวบิตของรีจิสเตอร์ B กับคิวบิตในรีจิสเตอร์ A แบบจับคู่กัน โดยที่สำหรับแต่ละpคิวบิตและ จะก่อให้ เกิดสถานะ
ถ้าเราวัดคิวบิตในรีจิสเตอร์ A ในตอนนี้ จะพบว่ารีจิสเตอร์ B มีค่าเดียวกันกับ A แต่ถ้าเราใช้เกตตรรกะควอนตัมFกับ A แล้ววัดค่าอีกครั้ง จะได้ว่า โดยที่คือตัวผกผันเอกภาพของF
เนื่องจากลักษณะการทำงานของตัวผกผันเอกภาพของเกตตัวอย่างเช่น สมมติว่าแล้ว
ความเท่าเทียมกันนี้จะเป็นจริงไม่ว่าการวัดจะดำเนินการในลำดับใด (บนรีจิสเตอร์ A หรือ B) โดยสมมติว่าFทำงานเสร็จสมบูรณ์แล้ว การวัดยังสามารถสลับกันแบบสุ่มและพร้อมกันได้ทีละคิวบิต เนื่องจาก1 การกำหนดค่าการวัดของคิวบิตหนึ่งจะจำกัดพื้นที่ค่าที่เป็นไปได้จากคิวบิตที่พันกันอื่นๆ
แม้ว่าความเท่าเทียมกันจะเป็นจริง แต่ความน่าจะเป็นในการวัดผลลัพธ์ที่เป็นไปได้อาจเปลี่ยนแปลงไปอันเป็นผลมาจากการใช้Fซึ่งอาจเป็นเจตนาในอัลกอริธึมการค้นหาควอนตัม
ผลของการแบ่งปันค่าผ่านการพันกันนี้ใช้ในอัลกอริทึมของ Shor การประมาณเฟสและการนับควอนตัมการใช้การแปลงฟูริเยร์เพื่อขยายแอมพลิจูดความน่าจะเป็นของสถานะคำตอบสำหรับปัญหา บางอย่าง เป็นวิธีการทั่วไปที่เรียกว่า " การตกปลาฟูริเยร์ " [ 39 ]
การสังเคราะห์ฟังก์ชันตรรกะ

ฟังก์ชันและรูทีนที่ใช้เฉพาะเกตสามารถอธิบายได้ว่าเป็นเมทริกซ์เช่นเดียวกับเกตขนาดเล็กกว่า เมทริกซ์ที่แสดงถึงฟังก์ชันควอนตัมที่กระทำต่อคิวบิตจะมีขนาดตัวอย่างเช่น ฟังก์ชันที่กระทำต่อ "คิวไบต์" ( รีจิสเตอร์ของ 8 คิวบิต) จะถูกแทนด้วยเมทริกซ์ที่มีองค์ประกอบ
การแปลงแบบเอกภาพที่ไม่ได้อยู่ในเซตของเกตที่มีอยู่ตามธรรมชาติในคอมพิวเตอร์ควอนตัม (เกตดั้งเดิม) สามารถสังเคราะห์หรือประมาณได้โดยการรวมเกตดั้งเดิมที่มีอยู่เข้าด้วยกันในวงจรวิธีหนึ่งในการทำเช่นนี้คือการแยกตัวประกอบเมทริกซ์ที่เข้ารหัสการแปลงแบบเอกภาพออกเป็นผลคูณของผลคูณเทนเซอร์ (เช่น วงจร อนุกรมและขนาน ) ของเกตดั้งเดิมที่มีอยู่กลุ่มU(2 q )เป็นกลุ่มสมมาตรสำหรับเกตที่กระทำกับคิวบิต[ 2 ]การแยกตัวประกอบจึงเป็นปัญหาของการค้นหาเส้นทางใน U(2 q ) จากเซตตัวสร้างของเกตดั้งเดิมทฤษฎีบท Solovay–Kitaevแสดงให้เห็นว่าเมื่อมีเซตของเกตดั้งเดิมที่เพียงพอ จะมีค่าประมาณที่มีประสิทธิภาพสำหรับเกตใดๆ สำหรับกรณีทั่วไปที่มีจำนวนคิวบิตมาก วิธีการโดยตรงนี้ในการสังเคราะห์วงจรทำได้ยาก[ 40 ] [ 41 ]สิ่งนี้จำกัดขนาดของฟังก์ชันที่สามารถแยกตัวประกอบแบบใช้กำลังทั้งหมดเป็นเกตควอนตัมแบบดั้งเดิมได้ โดยทั่วไปแล้วโปรแกรมควอนตัมจะถูกสร้างขึ้นโดยใช้ฟังก์ชันควอนตัมที่ค่อนข้างเล็กและเรียบง่าย คล้ายกับการเขียนโปรแกรมแบบคลาสสิกทั่วไป
เนื่องจาก ลักษณะ เอกภาพ ของเกต ฟังก์ชันทั้งหมดจะต้องสามารถย้อนกลับได้และเป็นการ แมปแบบ หนึ่งต่อหนึ่งจากอินพุตไปยังเอาต์พุตเสมอ จะต้องมีฟังก์ชันอยู่เสมอที่ทำให้ฟังก์ชันที่ไม่สามารถย้อนกลับได้สามารถทำให้ย้อนกลับได้โดยการเพิ่มคิวบิตเสริมเข้าไปในอินพุตหรือเอาต์พุต หรือทั้งสองอย่าง หลังจากที่ฟังก์ชันทำงานเสร็จสมบูรณ์แล้ว คิวบิตเสริมสามารถยกเลิกการคำนวณหรือปล่อยไว้โดยไม่แตะต้อง การวัดหรือการยุบสถานะควอนตัมของคิวบิตเสริม (เช่น โดยการกำหนดค่าเริ่มต้นใหม่ หรือโดยการลดความสอดคล้อง โดยธรรมชาติ ) ที่ยังไม่ได้ยกเลิกการคำนวณอาจทำให้เกิดข้อผิดพลาด[ 42 ] [ 43 ]เนื่องจากสถานะของพวกมันอาจพันกันกับคิวบิตที่ยังคงใช้ในการคำนวณอยู่
การดำเนินการที่ไม่สามารถย้อนกลับได้ในเชิงตรรกะ เช่น การบวกโมดูลัสของรีจิสเตอร์ควอนตัมบิตสองตัวaและb สามารถทำให้ย้อนกลับได้ในเชิงตรรกะโดยการเพิ่มข้อมูลลงในเอาต์พุต เพื่อให้สามารถคำนวณอินพุตจากเอาต์พุตได้ (กล่าวคือ มีฟังก์ชันอยู่)ในตัวอย่างของเรา สามารถทำได้โดยการส่งต่อรีจิสเตอร์อินพุตตัวใดตัวหนึ่งไปยังเอาต์พุต: จากนั้นสามารถใช้เอาต์พุตเพื่อคำนวณอินพุตได้ (กล่าวคือ เมื่อกำหนดเอาต์พุตและเราสามารถหาอินพุตได้อย่างง่ายดาย; กำหนดให้ และ)และฟังก์ชันจะเป็นฟังก์ชันหนึ่งต่อหนึ่งทั่วถึง
นิพจน์ พีชคณิตบูลีนทั้งหมดสามารถเข้ารหัสเป็นทรานส์ฟอร์มเอกภาพ (เกตตรรกะควอนตัม) ได้ ตัวอย่างเช่น โดยการใช้การรวมกันของ เกต Pauli-X , CNOTและToffoliเกตเหล่านี้มีความสมบูรณ์ในเชิงฟังก์ชันในโดเมนตรรกะบูลีน
มีการแปลงเอกภาพจำนวนมากในไลบรารีของQ# , QCL , Qiskitและ ภาษา การเขียนโปรแกรมควอนตัม อื่นๆ นอกจากนี้ยังปรากฏในเอกสาร[ 44 ] [ 45 ]
ตัวอย่างเช่นโดยที่คือจำนวนคิวบิตที่ประกอบเป็นรีจิสเตอร์จะถูกนำไปใช้ใน QCL ดังต่อไปนี้: [ 46 ] [ 13 ] [ 12 ]
cond qufunct inc ( qureg x ) { // เพิ่มค่าในรีจิสเตอร์int i ; for i = # x - 1 to 0 step - 1 { CNot ( x [ i ], x [ 0 :: i ]); // ใช้การควบคุม-not จาก} // บิตที่มีค่ามากที่สุดไปยังบิตที่มีค่าน้อยที่สุด}
ใน QCL การลดค่าจะทำโดยการ "ยกเลิก" การเพิ่มค่า คำนำหน้า!ใช้เพื่อเรียกใช้ ฟังก์ชัน ผกผันแบบเอกภาพของฟังก์ชัน แทน !inc(x)คือฟังก์ชันผกผันของ และจะทำการ ดำเนินinc(x)การแทนคำหลักหมายความว่าฟังก์ชันสามารถมีเงื่อนไขได้[ 11 ]cond
ในแบบจำลองการคำนวณที่ใช้ในบทความนี้ ( แบบจำลอง วงจรควอนตัม ) คอมพิวเตอร์แบบคลาสสิกจะสร้างองค์ประกอบเกตสำหรับคอมพิวเตอร์ควอนตัม และคอมพิวเตอร์ควอนตัมจะทำหน้าที่เป็นโคโปรเซสเซอร์ที่รับคำสั่งจากคอมพิวเตอร์แบบคลาสสิกเกี่ยวกับเกตพื้นฐานที่จะนำไปใช้กับคิวบิตใด[ 13 ] : 36–43 [ 14 ]การวัดรีจิสเตอร์ควอนตัมส่งผลให้ได้ค่าไบนารีที่คอมพิวเตอร์แบบคลาสสิกสามารถใช้ในการคำนวณได้อัลกอริทึมควอนตัมมักประกอบด้วยทั้งส่วนคลาสสิกและส่วนควอนตัม การรับส่งข้อมูลแบบไม่วัด(การส่งคิวบิตไปยังคอมพิวเตอร์ระยะไกลโดยไม่ทำให้สถานะควอนตัมของพวกมันยุบตัว) สามารถใช้เพื่อสร้างเครือข่ายของคอมพิวเตอร์ควอนตัมได้จากนั้นสามารถใช้การสลับการพัวพัน เพื่อสร้าง อัลกอริทึมแบบกระจายด้วยคอมพิวเตอร์ควอนตัมที่ไม่ได้เชื่อมต่อกันโดยตรง ตัวอย่างของอัลกอริธึมแบบกระจายที่ต้องการใช้เพียงเกตตรรกะควอนตัมจำนวนเล็กน้อย ได้แก่การเข้ารหัสความหนาแน่นสูงพิเศษ (superdense coding) ข้อตกลงไบแซนไทน์ควอนตัม ( quantum Byzantine agreement ) และ โปรโตคอลการแลกเปลี่ยนรหัสลับ BB84 (BB84 cipherkey exchange protocol )
ดูเพิ่มเติม
- การคำนวณควอนตัมแบบอะเดียแบติก
- บีคิวพี
- ออโตมาตาเซลลูลาร์
- การประมวลผลควอนตัมบนระบบคลาวด์
- ความแน่นอนเชิงสมมติ
- การคำนวณควอนตัมเชิงสมมติ
- หลักการของแลนเดาเออร์
- ตัวเชื่อมตรรกะ
- คอมพิวเตอร์ควอนตัมแบบทางเดียว
- อัลกอริทึมควอนตัม
- ออโตมาตาเซลลูลาร์ควอนตัม
- ช่องควอนตัม
- ออโตมาตาจำกัดควอนตัม
- ตรรกะควอนตัม
- หน่วยความจำควอนตัม
- เครือข่ายควอนตัม
- ปรากฏการณ์ควอนตัมซีโน
- การคำนวณแบบย้อนกลับได้
- การแปลงเอกภาพ (กลศาสตร์ควอนตัม)
หมายเหตุ
- ^การคูณเมทริกซ์ของเกตควอนตัมถูกนิยามว่าเป็นวงจรอนุกรม
- ^หมายเหตุ การหมุนรอบทรงกลม Bloch ครบหนึ่งรอบในที่นี้มีหน่วยเป็นเรเดียน ซึ่งแตกต่างจากเกตตัวดำเนินการหมุนที่การหมุนครบหนึ่งรอบมีหน่วยเป็น
- ^สามารถใช้เกต Pหรือ Phก็ได้ ดังที่ [ 2 ] : 11 [ 1 ] : 76–83
- ^เซตนี้สร้างเกตเอกภาพที่เป็นไปได้ทั้งหมดอย่างแม่นยำ อย่างไรก็ตาม เนื่องจากเฟสโดยรวมไม่เกี่ยวข้องกับผลลัพธ์การวัด จึงสามารถสร้างเซตย่อยควอนตัมสากลได้ เช่น เซตที่ประกอบด้วย R y ( θ ) , R z ( θ )และ CNOT ครอบคลุมเฉพาะเกตเอกภาพที่มีดีเทอร์มิแนนต์ ±1 เท่านั้น แต่ก็เพียงพอสำหรับการคำนวณควอนตัม
- ^ a bว่านี่เป็น ผล แบบสุ่ม จริงหรือไม่ นั้น ขึ้นอยู่กับการตีความกลศาสตร์ควอนตัมที่ถูกต้อง (และหากมีการตีความใดที่ถูกต้องได้) ตัวอย่างเช่นทฤษฎีของเดอ บรอยล์-โบห์มและการตีความแบบหลายโลกยืนยันว่าผลลัพธ์เป็นแบบกำหนดได้ (ในการตีความแบบหลายโลก คอมพิวเตอร์ควอนตัมเป็นเครื่องจักรที่ทำงานตามโปรแกรม ( วงจรควอนตัม ) ที่เลือกความเป็นจริงที่ความน่าจะเป็นที่จะมีสถานะคำตอบของปัญหาสูง นั่นคือ เครื่องจักรมักจะจบลงในความเป็นจริงที่ให้คำตอบที่ถูกต้อง เนื่องจาก ผลลัพธ์ ทั้งหมด เกิดขึ้นในจักรวาลที่แยกจากกันตามการตีความแบบหลายโลก ผลลัพธ์โดยรวมจึงเป็นแบบกำหนดได้ อย่างไรก็ตาม การตีความนี้ไม่ได้เปลี่ยนแปลงกลไกการทำงานของเครื่องจักร)
- ^ดูสัจพจน์ความน่าจะเป็น § สัจพจน์ข้อที่สอง
- ด้านตรงข้ามมุมฉากมีความยาว 1 เนื่องจากผลรวมของความน่าจะเป็นเท่ากับ 1 ดังนั้นเวกเตอร์สถานะควอนตัมจึงเป็นเตอร์หน่วย
- ^ข้อมูลนำเข้าคือคิวบิต แต่ข้อมูลส่งออกก็คือคิวบิตเช่นกัน การลบข้อมูลไม่ใช่การดำเนินการที่ย้อนกลับได้ (หรือแบบเอกภาพ ) ดังนั้นจึงไม่ได้รับอนุญาต โปรดดูหลักการของแลนเดาเออร์เพิ่มเติม
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ประตูตรรกะควอนตัม
ใน การคำนวณควอนตัม และโดยเฉพาะอย่างยิ่งใน แบบจำลอง วงจรควอนตัม เก ตตรรกะควอนตัม (หรือเรียกสั้น ๆ ว่า เกตควอนตัม ) คือวงจรควอนตัมพื้นฐานที่ทำงานบน คิวบิต...
ประวัติศาสตร์
สัญลักษณ์ปัจจุบันสำหรับเกตควอนตัมได้รับการพัฒนาโดยผู้ก่อตั้ง วิทยาศาสตร์ข้อมูลควอนตัม หลายคน รวมถึง Adriano Barenco, Charles Bennett , Richard Cleve , David P. DiVincenzo , Norman Margolus , Peter Shor , Tycho Sleator, John A.
การเป็นตัวแทน
เกตตรรกะควอนตัมแสดงด้วย เมทริกซ์เอกภาพ เกตที่ทำงานกับ คิวบิต (รี จิสเตอร์ ) จะแสดงด้วยเมทริกซ์เอกภาพ และ เซต ของเกตทั้งหมดดังกล่าวที่มีการดำเนินการกลุ่มของ การคูณเมทริกซ์ [ a ] คือ กลุ่มเอกภาพ U(2n ) [ 2 ] สถานะ ค วอนตัม ที่เกตทำงานด้วยคือ เวกเตอร์หน่วย ใน...
ความสัมพันธ์กับตัวดำเนินการวิวัฒนาการเวลา
สม การชโรดิงเกอร์ อธิบายว่าระบบควอนตัมที่ไม่ สามารถสังเกตได้ นั้น วิวัฒนาการไปตามเวลาอย่างไร และเมื่อระบบอยู่ในสภาพแวดล้อมที่เสถียร ดังนั้นจึงมี แฮมิลโท เนียนคง ที่ คำตอบของสมการนี้คือ [ 1 ] : 24–25 หากเวลาคงที่เสมอ อาจละเว้นได้เพื่อความง่าย...