تقترح هذه الورقة وتتحقق من ست علاقات تحولية لثلاث خوارزميات استعلام كمي، وتثبت من خلال تجارب منهجية أن هذه العلاقات تكتشف الأخطاء بفعالية مع درجات طفرات عالية وتحافظ على هذه الفعالية حتى عند استخدام مجموعات مدخلات مختزلة بشكل كبير.
المؤلفون الأصليون:Sinhué García-Gil, Luis Llana, José Ignacio Requeno Jarabo
في المجال الناشئ للحوسبة الكمومية، تعد هذه الآلات بحل مشكلات قد تستغرق الحواسيب الفائقة الحالية آلاف السنين لفك شفرتها. ولا تعتمد هذه الآلات على مفاتيح التشغيل والإيقاف التقليدية المستخدمة في الحواسيب الكلاسيكية؛ بل تعتمد بدلاً من ذلك على جسيمات يمكن أن توجد في حالات متعددة في آن واحد، وهي خاصية تسمح لها باستكشاف احتمالات عديدة في وقت واحد. ومع ذلك، تأتي هذه القوة مع عقبة كبيرة: وهي أن عملية قياس نتيجة الحساب الكمومي هي بطبيعتها احتمالية. فخلافاً للحاسوب الكلاسيكي الذي يعطي إجابة واحدة محددة، تنتج الآلة الكمومية سحابة من الاحتمالات، مما يتطلب من الباحثين تشغيل نفس الحساب آلاف المرات واستخدام الإحصاء لتخمين النتيجة الصحيحة. وهذا عدم اليقين يجعل من الصعب للغاية اختبار ما إذا كان البرنامج الذي يعمل على هذه الآلات يعمل بشكل صحيح، حيث لا توجد غالباً طريقة بسيطة لمعرفة ما إذا كانت النتيجة صحيحة أم خاطئة دون إعادة تشغيل العملية بأكملها مرة أخرى.
ولمعالجة هذا التحدي، طور فريق من الباحثين في جامعة كومبلوتنسي بمدريد (Universidad Complutense de Madrid) طريقة جديدة لاختبار البرمجيات الكمومية تتجاوز الحاجة إلى نموذج إجابة مثالي. فقد ركزوا على ثلاثة أنواع محددة من البرامج الكمومية المصممة لحل ألغاز رياضية معينة. وبدلاً من محاولة التنبؤ بالمخرجات الدقيقة لكل عملية تشغيل، وضع الفريق مجموعة من القواعد التي تصف كيفية ارتباط نتائج المدخلات المختلفة ببعضها البعض. فإذا كان البرنامج يعمل بشكل صحيح، فإن تغيير المدخل بطريقة معينة سيؤدي دائماً إلى تغيير يمكن التنبؤ به في المخرجات، حتى لو ظلت الأرقام الدقيقة غير مؤكدة. ومن خلال التحقق من هذه العلاقات، تمكن الباحثون من التحقق من منطق البرنامج دون الحاجة إلى معرفة الإجابة النهائية مسبقاً.
طبق الباحثون هذه الطريقة على ثلاث خوارزميات كمومية معروفة: إحداها تحدد ما إذا كانت الدالة متوازنة أم ثابتة، وأخرى تكشف عن سلسلة سرية مخفية، وثالثة تجد نمطاً متكرراً. وقد حددوا ست قواعد محددة، أو علاقات، يجب أن تتبعها هذه الخوارزميات. فعلى سبيل المثال، إذا قمت بقلب البتات (bits) في مدخل ما بطريقة معينة، فيجب أن تتغير المخرجات بطريقة مقابلة ويمكن التنبؤ بها. ولاختبار مدى صمود هذه القواعد، استخدموا تقنية تسمى "اختبار الطفرة" (mutation testing). وتضمن ذلك أخذ الدوائر الكمومية الأصلية الصحيحة وإدخال أخطاء عشوائية صغيرة عليها عمداً، مما خلق آلاف النسخ المعيبة قليلاً. ثم قاموا بتشغيل قواعد الاختبار الجديدة الخاصة بهم ضد هذه النسخ المعيبة لمعرفة ما إذا كانت القواعد قادرة على رصد الأخطاء.
أظهرت النتائج أن هذه القواعد القائمة على العلاقات كانت فعالة للغاية في كشف الأخطاء. فعندما اختبر الباحثون البرنامج مع جميع المدخلات الممكنة، نجحت القواعد في تحديد ما بين 41 في المئة و83 في المئة من الأعطال التي تم إدخالها، اعتماداً على الخوارزمية المحددة. وكان هذا اكتشافاً هاماً لأنه أثبت أن هذه القواعد يمكنها اكتشاف الأخطاء في البرمجيات الكمومية بشكل موثوق دون الحاجة إلى معرفة الإجابة الصحيحة مسبقاً. والأهم من ذلك، اكتشف الفريق أنهم لم يكونوا بحاجة إلى اختبار كل المدخلات الممكنة للوصول إلى هذا المستوى من الدقة. ففي كثير من الحالات، كان اختبار عدد قليل من المدخلات كافياً لإيجاد نفس عدد الأخطاء التي وجدها الاختبار الشامل. وبالنسبة لبعض الخوارزميات، كان اختبار ثلاثة مدخلات فقط كافياً لإعادة إنتاج نتائج اختبار شامل كان سيتطلب ملايين العمليات الحسابية.
يعد هذا الاكتشاف أمراً حاسماً لمستقبل هندسة البرمجيات الكمومية. ونظراً لأن عمليات المحاكاة الكمومية مكلفة حاسوبياً، فإن تشغيل كل الاختبار الممكن هو أمر مستحيل غالباً، خاصة مع كبر حجم المشكلات. وقد وجد الباحثون أنه بالنسبة للخوارزميات التي درسوها، فإن القدرة على اكتشاف الأخطاء تستقر بسرعة. فبعد نقطة معينة، لا يؤدي إضافة المزيد من المدخلات إلى الكشف عن أخطاء جديدة، مما يشير إلى أن مجموعة صغيرة مختارة بعناية من الاختبارات قد تكون كافية لضمان عمل البرنامج. ورغم أن الدراسة أجريت باستخدام محاكاة حاسوبية بدلاً من الأجهزة الكمومية الفيزيائية، إلا أن النتائج تقدم مساراً عملياً للمضي قدماً. فهي تشير إلى أنه من خلال التركيز على كيفية ارتباط المدخلات والمخرجات ببعضها البعض، بدلاً من محاولة التنبؤ بالنتائج الدقيقة، يمكن للمطورين بناء برمجيات كمومية أكثر موثوقية بموارد أقل بكثير. ويسلط هذا العمل الضوء على أنه حتى في عالم النتوت الاحتمالية، لا تزال هناك أنماط ثابتة يمكن التنبؤ بها والتي يمكن استخدامها لضمان الجودة والثقة في هذه الآلات المعقدة الجديدة.
بيان المشكلة تواجه اختبار البرمجيات الكمية تحديين رئيسيين: الطبيعة الاحتمالية للقياس الكمي، مما يستلوجب تكرار التنفيذ والتحليل الإحصائي للتحقق من السلوك، و"مشكلة الأوراكل" (Oracle Problem)، حيث يكون تحديد المخرج المتوقع الصحيح لمدخل معين أمراً مستعصياً في كثير من الأحيان. وبينما يقدم الاختبار التحويلي (Metamorphic Testing - MT) حلاً لمشكلة الأوراكل من خلال التحقق من العلاقات بين المدخلات والمخرجات بدلاً من القيم المحددة، إلا أن فعالية اكتشاف الأخطاء ومتطلبات المدخلات لخوارزميات الكم لا تزال غير مدروسة بشكل كافٍ. علاوة على ذلك، تعتمد النهج الحالية غالباً بشكل كبير على التحليل الإحصائي لنتائج القياس، مما يزيد من تكاليف الاختبار.
المنهجية يقترح المؤلفون نهجاً نظامياً لتطبيق الاختبار التحويلي على ثلاث خوارزميات استعلام كمي أساسية: دويتش-جوزا (Deutsch-Jozsa)، وبيرنشتاين-فازيراني (Bernstein-Vazirani)، وسيمون (Simon). تتضمن المنهجية ثلاثة مكونات أساسية:
تعريف العلاقات التحويلية (MRs): تم اشتقاق ست علاقات تحويلية محددة بناءً على الخصائص الرياضية والشروط المسبقة للخوارزميات المستهدفة:
دويتش-جوزا: علاقتان تحويليتان (MR1DJ، MR2DJ) تعتمدان على التباين (bijections) وتكملة المدخلات، للتحقق من أن المخرج يظل ∣0⟩ إذا وفقط إذا كانت الدالة ثابتة.
بيرنشتاين-فازيراني: ثلاث علاقات تحويلية (MR1BV، MR2BV، MR3BV) مشتقة من الخصائص الجبرية للأوراكل. ومن الجدير بالذكر أن هذه العلاقات تسمح بالتحقق من الخصائص (مثل o2=o0⊕o1) قبل القياس عن طريق دمج المخرجات داخل الدائرة الكمية باستخدام بوابات CNOT. وهذا يقلل من الاعتماد على التحليل الإحصائي.
سيمون: علاقة تحويلية واحدة (MRS) تعتمد على دورية الدالة، للتحقق من أن عكس سلسلة المدخلات يؤدي إلى نفس مجموعة مخرجات القياس.
التكامل مع اختبار الطفرات (Mutation Testing): قام المؤلفون بتوسيع أداة QCRMut (التي تدعم Qiskit 2.x) لأتمتة عملية الاختبار.
توليد الطفرات: تقوم QCRMut بتوليد طفرات عبر إدخال أخطاء في الدوائر الكمية مع الحفاظ على أجزاء "غير قابلة للتغيير" (الأوراكل للمدخلات) لضمان بقاء العلاقات التحويلية قابلة للتطبيق.
هيكل الاختبار: تم تطوير إطار عمل لترجمة العلاقات التحويلية الرياضية إلى هياكل اختبار قابلة للتنفيذ. يتضمن ذلك مولدات مدخلات حسابية، ومنشئات دوائر اختبار (تقوم بإدراج الأوراكل، وفي حالة BV، دمج المخرجات)، ومحللات نتائج تحدد ما إذا كانت الطفرة قد "قُتلت" (أي تم انتهاك العلاقة التحويلية).
التقييم التجريبي: أُجريت ثلاث تجارب باستخدام Qiskit's AerSimulator:
التجربة الأولى (التقييم الشامل): تقييم صلاحية وفعالية اكتشاف الأخطاء للعلاقات التحويلية عبر فضاء المدخلات الكامل لمختلف تكوينات الكيوبت (حتى 6-7 كيوبت اعتماداً على الخوارزمية).
التجربة الثانية (تقليل المدخلات): بحث ما إذا كان مجموعة مختزلة من المدخلات المختارة عشوائياً يمكن أن تعيد إنتاج درجات الطفرات التي تم الحصول عليها عبر التقييم الشامل. تضمن ذلك 20 بذرة عشوائية لكل تكوين.
التجربة الثالثة (الاستقرار): فحص التكوينات الأكبر (حتى 7 كيوبت) حيث كان التقييم الشامل غير عملي حسابياً، وتحليل ما إذا كانت درجات الطفرات قد استقرت مع عدد محدود من المدخلات.
النتائج الرئيسية
فعالية اكتشاف الأخطاء (RQ1): نجحت جميع العلاقات التحويلية الست في اكتشاف الأخطاء في الطفرات المولدة. تراوحت درجات الطفرات بين 41.80% و83.59%.
حققت علاقات بيرنشتاين-فازيراني أعلى الدرجات (75.35% – 83.59%).
أظهرت علاقات دويتش-جوزا فعالية متسقة (69.92% – 77.34%).
أظهرت علاقة سيمون فعالية أقل ولكنها مهمة (41.80% – 60.16%).
تقليل المدخلات (RQ2): كانت مجموعات المدخلات المختزلة فعالة للغاية في إعادة إنتاج النتائج الشاملة.
بالنسبة لدويتش-جوزا، كان 3 مدخلات كافية عبر جميع التكوينات.
بالنسبة لبيرشتاين-فازيراني، كان المطلوب وسيطاً يتراوح بين 2 إلى 4 مدخلات.
بالنسبة لسيمون، تراوح الوسيط بين 4 إلى 11.5 مدخلاً اعتماداً على عدد الكيوبت.
والأهم من ذلك، أن جميع البذور العشوائية العشرين لكل تكوين وصلت إلى درجة الطفرة الشاملة في غضون 15 مدخلاً.
الاستقرار (RQ3): بالنسبة للتكوينات الأكبر دون مراجع شاملة، مالت درجات الطفرات إلى الاستقرار. وبينما أظهرت سيمون بعض المكاسب حتى 15 مدخلاً، لم يتم ملاحظة أي اكتشافات إضافية بعد 15 مدخلاً في أي تكوين.
الأهمية والادعاءات يزعم البحث أنه يقدم أول تقييم منهجي لقدرة اكتشاف الأخطاء للاختبار التحويلي للخوارزميات الكمية باستخدام طفرات مولدة تلقائياً. وتتمثل مساهماته الرئيسية في:
إثبات جدوى الاختبار التحويلي: التأكيد على أن الاختبار التحويلي هو نهج واعد لاختبار البرمجيات الكمية، قادر على اكتشاف نسبة كبيرة من الأخطاء دون الحاجة إلى أوراكل اختبار تقليدي.
التحقق قبل القياس: تسليط الضوء على أنه في خوارزميات مثل بيرشتاين-فازيراني، يمكن التحقق من العلاقات التحويلية بشكل حتمي داخل الدائرة قبل القياس، مما يقلل الاعتماد على التحليل الإحصائي.
كفاءة المدخلات: إظهار أن تقييم فضاء المدخلات الشامل غالباً ما يكون غير ضروري؛ حيث يمكن لمجموعات صغيرة من المدخلات المختارة عشوائياً أن تحافظ على فعالية اكتشاف الأخطاء، مما يخفف من التكاليف الحسابية لمحاكاة الكم.
يتبنى المؤلفون موقفاً متواضعاً، معترفين بأن تعريف العلاقة التحويلية يعتمد على الخوارزمية، وأن وجود طفرات متكافئة قد يؤدي إلى تقليل درجات الطفرات. كما يشيرون إلى أن النتائج الحالية مبنية على المحاكاة وأن هناك حاجة لمزيد من العمل للتحقق من هذه النتائج على أجهزة الكم الكمي الحقيقية وتوسيع النهج ليشمل خوارزميات أكثر تعقيداً وعملية.