تركيب العمليات الأحادية
إصدارات الحزم
تم تطوير الكود في هذه الصفحة باستخدام المتطلبات التالية. نوصي باستخدام هذه الإصدارات أو أحدث منها.
qiskit[all]~=2.3.0
العملية الأحادية (Unitary) تصف تغييرًا يحافظ على القاعدة في نظام كمي. بالنسبة لـ من الـ Qubits، يُوصف هذا التغيير بمصفوفة مركبة ذات أبعاد تُسمى ، يساوي فيها المرافق المعكوسَ، أي .
تركيب عمليات أحادية محددة في مجموعة من بوابات الكم مهمةٌ أساسية تُستخدم، مثلاً، في تصميم وتطبيق الخوارزميات الكمية أو في ترجمة الدوائر الكمية.
في حين يمكن إجراء التركيب بكفاءة لفئات معينة من المصفوفات الأحادية — كتلك المكوّنة من بوابات كليفورد أو ذات بنية الجداء التنسوري — فإن معظم المصفوفات الأحادية لا تندرج في هذه الفئات. بالنسبة للمصفوفات الأحادية العامة، يُعدّ التركيب مهمةً معقدة تتزايد تكاليفها الحسابية بشكل أسي مع عدد الـ Qubits. لذا، إذا كنت تعرف تحليلاً فعّالاً للمصفوفة الأحادية التي تريد تنفيذها، فمن المرجح أن يكون أفضل من التركيب العام.
إذا لم يتوفر أي تحليل، يوفر لك Qiskit SDK الأدوات اللازمة للعثور على واحد. غير أنه تجدر الإشارة إلى أن هذا يُولّد بشكل عام دوائر عميقة قد لا تكون مناسبة للتشغيل على أجهزة الكم ذات الضوضاء.
# Added by doQumentation — required packages for this notebook
!pip install -q numpy qiskit
import numpy as np
from qiskit import QuantumCircuit
U = 0.5 * np.array(
[[1, 1, 1, 1], [-1, 1, -1, 1], [-1, -1, 1, 1], [-1, 1, 1, -1]]
)
circuit = QuantumCircuit(2)
circuit.unitary(U, circuit.qubits)
<qiskit.circuit.instructionset.InstructionSet at 0x7fedb83e7a90>