Basic Quantum Gate ควอนตัมเกตพื้นฐาน
เมื่อพูดถึงการคำนวนพื้นฐานใน Computer ก็คงจะหนีไม่พ้น Logic Gate ซึ่งใน Classical Logic Gate ก็จะมี Operation ทั้ง Not And Or หรือ Xor
แต่ใน Quantum นั้นเราจะมีลักษณะ Gate ที่แตกต่างจาก Classical ซึ่งถ้าใครยังไม่ได้ดูพื้นฐานของ Quantum Bits สามารถเรียนรู้เพิ่มเติมได้ตาม Blog ด้านล่างนี้เลย
Evolution
ใน Classical แล้วการที่เราจะเปลี่ยน State ต่าง ๆ จะใช้ Logic Operator แต่ใน Quantum “Quantum State evolve in time with rotation on Hilbert space” การเปลี่ยนแปลง Quantum State นั้นทำได้ด้วยการใช้ Quantum Gate เพื่อหมุน Qubit
ซึ่งจากที่เรารู้ว่า Qubit นั้นสามารถเขียนอยู่ในรูป Vector
ในการหมุน Vector เราจึงสามารถใช้ Matrix เป็น Operator ต่าง ๆ ได้
Rotation Matrix
Rotation Matrix เป็น Matrix ที่เราสามารถใช้ในการหมุน Qubit ในมุม θ โดย Matrix มีลักษณะดังนี้
ในกรณีของ R_θ นั้นจะเป็นการหมุนในลักษณะทวนเข็มนาฬิกาบน Hilbert space
ถ้าเราทำ Transpose R_θ เราจะได้เป็นการหมุนตามเข็ม
Unitary Transforms
นอกจาก Rotation Matrix ในการหมุน K-dimensional Matrix (ℂᵏ) จะใช้ Linear Transformation Matrix ที่เรียกว่า Unitary Matrix
ใน Linear Algebra นั้นเราจะรู้จัก Matrix หนึ่งชื่อว่า Orthogonal Matrix เป็น Real Matrix ที่มีคุณสมบัติดังนี้
เมื่อ O เป็น Orthogonal Matrix
OᵀO = OOᵀ = I (ᵀ = Transpose)
ดังนั้น Oᵀ = O⁻¹
ซึ่งจากคุณสมบัตินี้ทำให้เราหา Inverse Matrix ได้โดยง่ายโดยใช้การ Transpose ทำให้มีคุณสมบัติ Reversible
ซึ่ง Matrix ที่เราใช้ในการหมุน Qubit เราก็ต้องการให้มีคุณสมบัตินี้เช่นกัน แต่จากที่เรารู้ว่า Qubit นั้นเป็น Complex Vector ไม่ได้มีแค่ Real Number ดังนั้น Matrix ที่จะใช้จึงเป็น Unitary Matrix แทน โดยมีคุณสมบัติดังนี้
จาก U† = U*ᵀ (* = Conjugate)
U†U = UU† = I
ดังนั้น U† = U⁻¹
ซึ่งเมื่อเรานำ U มา Dot กับ |0⟩ และ |1⟩ จะได้
จะเห็นได้ว่าค่าภายใน Unitary Matrix นั้นเป็นค่าที่ส่งผลต่อสัมประสิทธิ์ของ Qubit ทำให้ได้ข้อสรุปว่า “U preserves inner product” คือ U นั้นเก็บค่าของ Inner Product ซึ่ง Inner Product ของ Matrix ก็คือ Rotation นั้นเอง
Single Qubit Gate
ใน Classical single bit นั้นมีแค่ Not gate เท่านั้นเนื่องจาก State ของ Single bit สามารถเปลี่ยนแปลงได้เพียง 1 วิธี แต่ใน Hilbert Space นั้นเราสามารถ Rotate ได้ทั้ง 360 ํ ซึ่งเราใช้ Unitary Matrix ขนาด 2x2 ทำเป็น Quantum Gate
Pauli-X (Bit Flip)
Unitary Gate X นั้นมี ลักษณะดังนี้
เป็น Gate ที่ทำหน้าที่ Flip Qubit สลับจาก |0⟩ เป็น|1⟩ และ |1⟩ เป็น|0⟩ หรือ เป็นการหมุนแกน 45 ํ ใน Hilbert Space
Pauli-Z (Phase Flip)
Unitary Gate Z นั้นมี ลักษณะดังนี้
เป็น Gate ที่ทำหน้าที่ Flip Sign สลับจาก |+⟩ เป็น|-⟩ และ |-⟩ เป็น|+⟩ หรือ เป็นการหมุนแกน |0⟩ ใน Hilbert Space
Hadamard Transform
Unitary Gate H มีลักษณะดังนี้
เป็น Gate ที่ทำหน้าที่แปลง Basis จาก Bit <-> Sign
จาก Gate ที่กล่าวมาเบื้องต้นนั้น เราสามารถสรุปออกมาได้ดังนี้
Two Qubits Gates
ในกรณีของ 2 Qubits Gate เราสามารถนำ Single Qubits Gate มาใช้งานได้เหมือนกัน
ในการที่เราใช้ 2 Single Qubit Gate เราสามารถคำนวน Gate รวมได้ดังนี้
กำหนด U₁ U₂
หา U ได้จากการนำ U และ U₂ ทำ Tensor Product กัน
Controlled NOT (CNOT)
Matrix ของ CNOT Gate มีลักษณะดังนี้
เป็น Gate ที่จะทำ Not กับ Qubit ที่ 2 เมื่อ Qubit ที่ 1 (Control Bit) เป็น 1 เท่านั้น
SWAP Gate
Matrix ของ SWAP Gate มีลักษณะดังนี้
โดย SWAP Gate เป็น Gate ที่จะทำการสลับค่าของ Qubit 1 เป็น Qubit 2 และ Qubit 2 เป็น Qubit 1