تعرف على لغة Q# لغة برمجة الحواسيب الكمية من مايكروسوفت
تعرف على لغة Q# لغة برمجة الحواسيب الكمية من مايكروسوفت

تعرف على لغة Q# لغة برمجة الحواسيب الكمية من مايكروسوفت

 

أصدرت Microsoft في أواخر سنة 2017 لغة برمجة جديدة تم تسميتها لغة Q# (تُنطق “Q-sharp”) سيتم استخدماها في برمجة  الحواسيب الـكمـية.

يتمثل هدف الشركة في النهاية في إنشاء مجموعة برامج كاملة تمنح المطورين المهتمين فرصة للتعرف على برمجة الحوسبة الكمية قبل أن تصبح التكنولوجيا متاحة بسهولة أكبر.

تصميم لغة Q#

تم تصميم Q # من الألف إلى الياء لدعم برمجة الحوسبة الكمية ، وهي لغة برمجة عالية المستوى مخصصة لكتابة البرامج النصية التي ستنفذ برامجها الفرعية على معالج كمي مرتبط بجهاز كمبيوتر مضيف كلاسيكي يتلقى نتائجه. هذا لا يختلف عن أنواع بنية الكمبيوتر الهجينة مثل وحدات المعالجة المركزية ووحدات معالجة الرسومات أو وحدات المعالجة المركزية و  Field-programmable gate array) FPGA).

لا يحتاج المطورون الذين يستخدمون اللغة إلى معرفة متعمقة بفيزياء الكم. للمهتمين ، تقدم Microsoft كتابًا تمهيديًا عن مفاهيم الحوسبة الكمية الأساسية ، والتي تغطي رياضيات المتجهات والمصفوفات ، والكيوبت ، وتدوين ديراك ، وقياسات باولي ، والدوائر الكمومية.

تتوفر مجموعة أدوات التطوير Q # مجانًا مع إرشادات مفصلة حول كيفية تثبيتها ودروس البرمجة التمهيدية الخاصة بها. يتوفر Q# Compiler في بيئة Visual Studio ، لمحاكاة معالج كمي بسعة 32 كيوبت. يمكن لإصدار Azure من المحاكاة محاكاة ما يصل إلى 40 كيوبت.

تتوقع Microsoft أن تحتوي حزمة الحوسبة الكمية على عدة طبقات مختلفة من البرامج والأجهزة التي تعمل جميعها في درجات حرارة مختلفة للعمل. على سبيل المثال ، من المحتمل أن تكون المعالجات المبردة أو FPGAs مطلوبة للتعامل مع تصحيح الأخطاء في أجهزة الكمبيوتر الكمومية ، وسيعمل الكمبيوتر المضيف الكلاسيكي أيضًا جنبًا إلى جنب مع الكمبيوتر الكمومي لأن الكيوبتات غير مستقرة.

يُقصد بـ Q # التجريد بعيدًا عن متطلبات إدارة كل هذه الطبقات من المطور ، بحيث يظل التركيز على تطوير الخوارزمية وحل المشكلات ، باستخدام لغة تبدو مألوفة.

 

كيف يبدو شكل لغة Q#

لا تختلف لغة البرمجة Q # عن معظم لغات البرمجة الأخرى ، وهي تشبه إلى حد كبير نظيرتها في C #.

يتضمن البرنامج التعليمي الأول الذي توفره Microsoft إنشاء برنامج نصي Q # Bell State – الحالات الأربع المتشابكة لاثنين من البتات الكمومية. تؤدي النتيجة النهائية إلى ملاحظة التشابك في بتتين مقاستين في ناتج البرنامج. هناك برنامج تعليمي سيتم اطلاقه لاحقاً يوجه المستخدم خلال كتابة نص لمحاكاة النقل الآني الكمي. تأمل Microsoft أن تقديم مثل هذا المفهوم الجديد للمطورين المحتملين قد يثير الاهتمام باللغة والحوسبة الكمومية.

Q# لديها أنواع بيانات قليلة مثيرة للاهتمام. بالإضافة إلى الأنواع الأكثر شيوعًا مثل int و double و bool و string ، يوجد أيضًا نوع Pauli و Range و Result و Qubit.

هناك أيضًا العديد من الاشياء المعروف في  اللغة ، بما في ذلك الوظائف التي يشار إليها بالعمليات ، وما إلى ذلك.

تعرف على لغة Q# لغة برمجة الحواسيب الكمية من مايكروسوفت

operation Teleport(msg : Qubit, there : Qubit) : () {
    body {
        using (register = Qubit[1]) {
            let here = register[0];
            H(here);
            CNOT(here, there);
            CNOT(msg, here);
            H(msg);
            // Measure out the entanglement. 
           if (M(msg) == One) { Z(there); } 
           if (M(here) == One) { X(there); }

           }
       } 
   }

 

الحوسبة الكمومية لحل المشكلات الصعبة

من المتوقع أن تؤدي الحوسبة الكمومية إلى تعطيل العديد من الصناعات والمجالات بمجرد أن تصبح متاحة ومنتشرة في كل مكان. لن تكون العديد من طرق التشفير المستخدمة اليوم فعالة ضد الحوسبة الكمومية ، بما في ذلك RSA.

ومع ذلك ، ستساعدنا الحوسبة الكمومية أيضًا في حل المشكلات المعقدة جدًا. بل إنها ستيحل مشكلة التشفير التي يحلها في البداية ، لأن التشفير الكمي سيكون آمنًا تمامًا بقدر ما نشعر بالقلق.

سيصبح من الممكن أيضًا نمذجة التفاعل الكيميائي والبروتيني لتصميم الأدوية ويمكن أن يفتح الباب أمام العلاج الفردي بتصميم الأدوية ، حيث يتم تطوير الأدوية استنادًا إلى علم الوراثة للفرد. ايضاً سيساعدنا في معالجة تغير المناخ من خلال نماذج التنبؤ بالطقس والمناخ. سنكون أقرب كثيرًا إلى نمذجة العقل البشري بنجاح ، وخلق ذكاء اصطناعي أكثر قدرة بكثير ، وتحقيق قفزة في كل مجال تقني رئيسي.