Noise-aware Verification and Synthesis of Quantum Programs
यह शोध पत्र क्वांटम प्रोग्रामिंग के लिए एक शोर-जागरूक (noise-aware) ढांचे को प्रस्तुत करता है जो एक हार्डवेयर-निर्भर सिमेंटिक्स स्थापित करता है, सीमित सत्यापन (bounded verification) के लिए एक संगत होअर लॉजिक (Hoare logic) विकसित करता है, और IBM जैसे विक्रेताओं से वास्तविक-विश्व त्रुटि मॉडलों का लाभ उठाकर शोर-इष्टतम (noise-optimal), लूप-मुक्त क्वांटम सबरूटीन के स्वचालित संश्लेषण को सक्षम बनाता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक आदर्श केक बनाने की कोशिश कर रहे हैं, लेकिन आप एक साफ-सुथरी, तापमान-नियंत्रित रसोई के बजाय एक बर्फीले तूफ़ान में बेकिंग कर रहे हैं, जहाँ ओवन का दरवाज़ा बार-बार खड़खड़ाकर खुल जाता है और आटा उड़कर दूर चला जाता है। आज के क्वांटम कंप्यूटिंग की वास्तविकता यही है। वैज्ञानिक ऐसी मशीनें बना रहे हैं जो उन समस्याओं को हल कर सकती हैं जो सामान्य कंप्यूटरों के लिए असंभव हैं, लेकिन ये मशीनें अविश्वसनीय रूप से नाजुक हैं। वे कांच की उन सुंदर मूर्तियों की तरह हैं जो टूट जाती हैं यदि आप उन्हें बहुत ध्यान से देखें या यदि हवा बहुत गर्म हो जाए। भौतिकी की दुनिया में, इस "तूफ़ान" को नॉइज़ (noise) कहा जाता है। यह वे यादृच्छिक त्रुटियाँ (random errors) हैं जो तब होती हैं जब क्वांटम बिट्स (इन कंप्यूटरों में सूचना की छोटी इकाइयाँ) अपना काम करने की कोशिश करते हैं।
यह समझने के लिए कि वैज्ञानिक इसे ठीक करने की कोशिश कैसे कर रहे हैं, आपको यह जानना आवश्यक है कि ये कंप्यूटर कैसे "सोचते" हैं। पहला, वे केवल एक एकल उत्तर संग्रहीत नहीं करते हैं जैसे एक सामान्य कंप्यूटर करता है; वे कई संभावनाओं के एक धुंधले बादल के रूप में मौजूद होते हैं, जिसे सुपरपोजिशन (superposition) कहा जाता है। दूसरा, जब आप उत्तर की जाँच करने की कोशिश करते हैं, तो वह बादल एक एकल परिणाम में सिमट जाता है, लेकिन वहाँ तक पहुँचने की प्रक्रिया अव्यवस्थित होती है। लंबे समय तक, कंप्यूटर वैज्ञानिकों ने इन मशीनों के लिए नियम ऐसे लिखे जैसे वे पूर्ण हों, और उन्होंने तूफ़ान को अनदेखा कर दिया। उन्होंने मान लिया कि ओवन हमेशा बिल्कुल सही तापमान पर रहता है। लेकिन चूंकि हमारे पास जो मशीनें वास्तव में उपलब्ध हैं वे 'नॉइजी' (noisy) हैं, इसलिए वे आदर्श नियम अक्सर टूटे हुए केक का कारण बनते हैं। यह शोध पत्र हवा में बेकिंग करना सीखने के बारे में है, जो वास्तविक हार्डवेयर की अव्यवस्था को ध्यान में रखते हुए नए नियम बनाता है।
शोधकर्ताओं—स्टेफ़नी मुरोया, कृष्णेंदु चटर्जी और थॉमस ए. हेन्ज़िंगर ने प्रोग्रामर्स को ऐसा क्वांटम कोड लिखने में मदद करने के लिए एक नया टूलकिट बनाया है जो वास्तव में वास्तविक, नॉइजी मशीनों पर काम कर सके। वे अपने दृष्टिकोण को "नॉइज़-अवेयर" (noise-aware) कहते हैं, जो एक फैंसी तरीका है यह कहने का कि, "आइए हम कंप्यूटर के पूर्ण होने का ढोंग करना बंद करें और टूटे हुए कंप्यूटर की वास्तविकता के लिए डिज़ाइन करना शुरू करें।"
उनका बड़ा विचार क्वांटम अवस्था (quantum state) को एक एकल, धुंधली तस्वीर (जिसे वे "डेंसिटी मैट्रिक्स" कहते हैं) के रूप में देखने के बजाय, इसे विशिष्ट, अलग-अलग संभावनाओं के एक संग्रह के रूप में देखना है जिनकी अपनी संभावनाएँ हैं (जिसे वे "एन्सेम्बल" कहते हैं)। इसे ऐसे समझें: यदि आपके पास कंचों (marbles) का एक थैला है, तो एक धुंधली तस्वीर केवल यह बता सकती है कि थैला "ज्यादातर लाल" है। लेकिन एक "एन्सेम्बल" आपको बताता है कि उसमें कितने लाल, नीले और हरे कंचे हैं, और प्रत्येक को निकालने की कितनी संभावना है। यह अंतर महत्वपूर्ण है क्योंकि, एक शोर वाले वातावरण में, विशिष्ट मिश्रण मायने रखता है। दो अलग-अलग थैले एक धुंधली फोटो में समान दिख सकते हैं, लेकिन यदि आप उन्हें हिलाते हैं (एक नॉइजी ऑपरेशन लागू करते हैं), तो वे बहुत अलग दिख सकते हैं। इस विशिष्ट मिश्रण को ट्रैक करके, शोधकर्ता सटीक रूप से भविष्यवाणी कर सकते हैं कि शोर एक प्रोग्राम को कैसे बिगाड़ देगा और अधिक महत्वपूर्ण बात यह है कि इसे कैसे ठीक किया जाए।
यह शोध पत्र मुख्य रूप से तीन चीजें करता है। पहला, उन्होंने नियमों का एक नया सेट (एक "होअर लॉजिक") बनाया है जो क्वांटम प्रोग्रामों के लिए स्पेल-चेकर (वर्तनी जाँचने वाले) के रूप में कार्य करता है। यह स्पेल-चेकर केवल टाइपो (लिखने की गलतियों) को ही नहीं देखता; यह जाँचता है कि क्या आपका प्रोग्राम अभी भी काम करेगा भले ही कंप्यूटर कुछ यादृच्छिक गलतियाँ करे। यह प्रोग्रामर्स को यह कहने की अनुमति देता है, "मैं वादा करता हूँ कि यदि मैं संभावनाओं के इस विशिष्ट मिश्रण के साथ शुरू करता हूँ, तो मेरा प्रोग्राम उस विशिष्ट मिश्रण के साथ समाप्त होगा, शोर के बावजूद।"
दूसरा, उन्होंने एक उपकरण बनाया है जो स्वचालित रूप से सत्यापित कर सकता है कि एक छोटा क्वांटम प्रोग्राम किसी विशिष्ट हार्डवेयर पर सही है या नहीं। कल्पना कीजिए कि आपके पास एक विशिष्ट रेसिपी और एक विशिष्ट ओवन है। यह उपकरण उस विशिष्ट ओवन में हर डगमगाहट और हवा के झोंके को ध्यान में रखते हुए, चरण-दर-चरण बेकिंग प्रक्रिया का अनुकरण करता है, ताकि आपको बता सके कि केक फूलेगा या नहीं। उन्होंने इसका परीक्षण IBM के Qiskit टूलकिट की 55 विभिन्न हार्डवेयर विशिष्टताओं पर किया, जिससे यह सिद्ध हुआ कि उनकी विधि उच्च सटीकता के साथ वास्तविक दुनिया की मशीनों पर प्रोग्रामों की जाँच कर सकती है।
तीसरा, और शायद सबसे रोमांचक, उन्होंने एक ऐसा उपकरण बनाया है जो नए क्वांटम प्रोग्रामों का आविष्कार कर सकता है। एक मानव द्वारा किसी कार्य के लिए सर्वोत्तम तरीका अनुमान लगाने के बजाय, यह उपकरण एक विशिष्ट नॉइजी मशीन के लिए सबसे अच्छा काम करने वाले "परफेक्ट" छोटे प्रोग्राम की खोज करता है। उन्होंने कुछ आश्चर्यजनक पाया: कभी-कभी, एक नॉइजी कंप्यूटर पर पूर्ण परिणाम प्राप्त करने का सबसे अच्छा तरीका एक एकल, सख्त पथ का पालन करना नहीं होता है। इसके बजाय, इष्टतम रणनीति में प्रोबेबिलिस्टिक ब्रांचिंग (probabilistic branching) शामिल है। इसका अर्थ है कि प्रोग्राम को कभी-कभी यह तय करने के लिए सिक्का उछालना चाहिए कि कौन सा रास्ता लेना है। उदाहरण के लिए, दो कठिन क्वांटम अवस्थाओं के बीच अंतर करने के लिए, सबसे अच्छी रणनीति यह हो सकती है कि एक परीक्षण 50% समय किया जाए और दूसरा परीक्षण दूसरी 50% बार किया जाए। रणनीतियों का यह "मिश्रण", जो विरोधाभासी लग सकता है, शोर को हराने के लिए एक गुप्त नुस्खे (secret sauce) के रूप में काम आता है।
शोधकर्ताओं ने अपने सिंथेसिस टूल का परीक्षण विशिष्ट क्वांटम अवस्थाओं को तैयार करने और त्रुटियों की जाँच करने जैसे सामान्य कार्यों पर किया। उन्होंने पाया कि "सर्वश्रेष्ठ" प्रोग्राम इस बात पर निर्भर करता है कि आप किस विशिष्ट IBM मशीन का उपयोग कर रहे हैं। एक प्रोग्राम जो एक नॉइजी चिप के लिए एकदम सही है, वह दूसरी चिप के लिए बहुत बुरा हो सकता है। इसके अलावा, उनके द्वारा बनाए गए प्रोग्राम अक्सर उन "पाठ्यपुस्तक" समाधानों से बिल्कुल अलग थे जो आदर्श, शोर-मुक्त कंप्यूटरों के लिए सिखाए जाते हैं। कई मामलों में, उन्होंने पाया कि उच्चतम सफलता दर प्राप्त करने के लिए शास्त्रीय संभाव्यता (क्लासिकल प्रोबेबिलिटी - यानी रास्ता चुनने के लिए सिक्का उछालना) का उपयोग करना अनिवार्य था।
संक्षेप में, यह शोध पत्र केवल यह नहीं कहता कि "क्वांटम कंप्यूटर शोर वाले होते हैं।" यह शोर को समझने, यह जाँचने कि क्या आपका कोड उससे बच पाता है, और इसमें फलने-फूलने के लिए नया कोड स्वचालित रूप से लिखने के लिए एक पूर्ण ढांचा प्रदान करता है। क्वांटम अवस्था को एक विस्तृत संभावनाओं के संग्रह के रूप में मानकर, न कि एक धुंधले औसत के रूप में, और इस विचार को अपनाकर कि कभी-कभी जीतने के लिए आपको सिक्का उछालने की आवश्यकता होती है, उन्होंने क्वांटम कंप्यूटिंग को वास्तविक, अव्यवस्थपूर्ण दुनिया के लिए व्यावहारिक बनाने की दिशा में एक महत्वपूर्ण कदम उठाया है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।