← नवीनतम पेपर
💻 computer science

A Deductive System for Contract Satisfaction Proofs

यह शोध पत्र हार्डवेयर-सॉफ्टवेयर अनुबंध संतुष्टि के मॉड्यूलर, संवादात्मक सत्यापन को सक्षम करने के लिए रिलेटिव बिसिमिलरेशन (relative bisimulation) और कोइंडक्टिव रीजनिंग (coinductive reasoning) पर आधारित एक सुदृढ़ और पूर्ण निगमनात्मक प्रमाण प्रणाली प्रस्तुत करता है, जैसा कि इसके रॉक (Rocq) प्रूफ़ असिस्टेंट में औपचारिकीकरण और चुनौतीपूर्ण सुरक्षा प्रमाणों पर इसके अनुप्रयोग द्वारा प्रदर्शित किया गया है।

मूल लेखक: Arthur Correnson, Haoyi Zeng, Jana Hofmann

प्रकाशित 2026-04-13
📖 7 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Arthur Correnson, Haoyi Zeng, Jana Hofmann

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

यहाँ इस शोध पत्र (paper) का सरल भाषा, रोज़मर्रा के उदाहरणों और रूपकों (analogies) के साथ विवरण दिया गया है।

बड़ी तस्वीर: "ब्लैक बॉक्स" की समस्या

कल्पना कीजिए कि आप एक सॉफ्टवेयर डेवलपर हैं और एक बहुत ही प्रसिद्ध शेफ (कंप्यूटर हार्डवेयर) के लिए एक गुप्त रेसिपी (एक प्रोग्राम) लिख रहे हैं। आप यह सुनिश्चित करना चाहते हैं कि कोई भी व्यक्ति खाना खाकर यह न जान सके कि आपके गुप्त सामग्रियाँ क्या हैं, सिर्फ शेफ की गतिविधियों को देखकर।

हालाँकि, शेफ एक जटिल मशीन है। कभी-कभी, शेफ किसी गुप्त सामग्री पर नज़र डाल सकता है, एक टुकड़ा गिरा सकता है, या अंदर क्या है इसके आधार पर बर्तन को थोड़ा अलग तरीके से हिला सकता है। इन छोटे "टुकड़ों" को साइड-चैनल लीक्स (side-channel leaks) कहा जाता है। वास्तविक दुनिया में, हैकर्स पासवर्ड और रहस्य चुराने के लिए इन्हीं टुकड़ों का उपयोग करते हैं।

इसे रोकने के लिए, इंजीनियरों ने हार्डवेयर-सॉफ्टवेयर कॉन्ट्रैक्ट्स (Hardware-Software Contracts) बनाए। इन कॉन्ट्रैक्ट्स को शेफ के लिए एक "सरलीकृत नियम पुस्तिका" के रूप में समझें।

  • कॉन्ट्रैक्ट: कहता है, "यदि आप समान सार्वजनिक कदम देखते हैं, तो आपको समान सार्वजनिक टुकड़े दिखने चाहिए।"
  • वास्तविकता: वास्तविक शेफ अव्यवस्थित और जटिल है।

समस्या: हम यह कैसे साबित करें कि वह अव्यवस्थित, वास्तविक शेफ वास्तव में उस सरलीकृत नियम पुस्तिका का पालन करता है? यदि कॉन्ट्रैक्ट कहता है "कोई टुकड़े नहीं", लेकिन वास्तविक शेफ एक टुकड़ा गिरा देता है, तो पूरा सुरक्षा तंत्र विफल हो जाता है।

पुराना तरीका: अनुमान लगाना और जाँच करना

पहले, इसे सिद्ध करना एक जादू के खेल को लाखों बार देखकर यह साबित करने जैसा था कि वह काम करता है (टेस्टिंग) या हर एक गतिविधि को स्प्रेडशीट में सिम्युलेट करने जैसा था (मॉडल चेकिंग)।

  • समस्या: ये तरीके धीमे थे, कंप्यूटर की त्रुटियों के प्रति संवेदनशील थे, या इनके लिए गणित के हजारों पन्ने लिखने पड़ते थे जिन्हें कोई आसानी से जाँच नहीं सकता था। यह एक पुल के सुरक्षित होने को साबित करने के लिए भौतिकी (physics) की गणना करने के बजाय उस पर दस लाख कारें गिराने जैसा है।

नया तरीका: "इंटरएक्टिव डिटेक्टिव" (यह पेपर)

इस पेपर के लेखकों ने एक नया टूल बनाया है जिसे डिडक्टिव सिस्टम (Deductive System) कहा जाता है। इसे एक कंप्यूटर प्रोग्राम (जिसे 'प्रूफ असिस्टेंट' कहते हैं) के भीतर खेले जाने वाले एक सुपर-स्मार्ट, इंटरएक्टिव जासूसी खेल के रूप में समझें।

उत्तर का अनुमान लगाने के बजाय, आप और कंप्यूटर मिलकर एक तार्किक तर्क (logical argument) बनाते हैं, जो कदम-दर-कदम यह गारंटी देता है कि प्रमाण सही है।

मुख्य विचार: "रिलेटिव ट्रेस इक्वैलिटी" (Relative Trace Equality)

उनके तरीके को समझने के लिए, ट्रैक पर दौड़ने वाले दो धावकों की कल्पना करें:

  1. धावक A (कॉन्ट्रैक्ट): एक चिकने, आदर्श ट्रैक पर दौड़ता है।
  2. धावक B (हार्डवेयर): एक ऊबड़-खाबड़, वास्तविक दुनिया के ट्रैक पर दौड़ता है।

लक्ष्य यह सिद्ध करना है: "यदि धावक A और धावक B दूर से एक जैसे दिखते हैं (समान कदम), तो उन्हें करीब से भी एक जैसा दिखना चाहिए (कोई गुप्त गिरावट नहीं)।"

पेपर एक तकनीक पेश करता है जिसे रिलेटिव बाइसिम्यूलेशन (Relative Bisimulation) कहा जाता है।

  • रूपक: कल्पना कीजिए कि आप एक समय में चार धावकों को देखते हुए एक रेफरी हैं:
    • कॉन्ट्रैक्ट ट्रैक पर दो धावक (धावक A1 और A2)।
    • हार्डवेयर ट्रैक पर दो धावक (धावक B1 और B2)।
    • परिदृश्य: आप धावक A1 और A2 को थोड़े अलग गुप्त सामग्रियों के साथ शुरू करते हैं। आप B1 और B2 को समान गुप्त सामग्रियों के साथ शुरू करते हैं।
    • नियम: यदि A1 और A2 अंततः एक जैसे दिखते हैं (समान कदम), तो B1 और B2 को भी अंततः एक जैसा दिखना चाहिए।

"रिलेटिव बाइसिम्यूलेशन" इन चारों धावकों को एक साथ जाँचने का एक तरीका है ताकि यह सुनिश्चित किया जा सके कि वे तालमेल में रहें, भले ही वे अलग-अलग गति से दौड़ रहे हों।

जादुई ट्रिक: "कोइंडक्शन" (Coinduction) और "अप-टू" (Up-To) तकनीकें

इस प्रमाण का सबसे कठिन हिस्सा यह है कि धावक तालमेल से बाहर हो सकते हैं।

  • समस्या: कॉन्ट्रैक्ट वाला धावक एक "शॉर्टकट" ले सकता है (एक ऐसा कदम जो तुरंत होता है), जबकि हार्डवेयर वाला धावक को उसी काम को करने के लिए कीचड़ भरे खेत से होकर गुजरना पड़ सकता है (कई कदम लेने पड़ते हैं)।
  • पुराना तरीका: आपको उन्हें बिल्कुल एक ही समय पर (लॉकस्टेप में) चलने के लिए मजबूर करना पड़ता था, जो असंभव है यदि एक तेज़ है और दूसरा धीमा।
  • नया तरीका (Coinduction): लेखक कोइंडक्शन (Coinduction) नामक तकनीक का उपयोग करते हैं। इसे एक "टाइम-ट्रैवलिंग हाइपोथेसिस" के रूप में समझें।
    • हर कदम को शुरू से अंत तक जाँचने के बजाय, आप कहते हैं: "मैं यह मान लेता हूँ कि यदि हम एक भविष्य की स्थिति में पहुँचते हैं जहाँ धावक अभी भी तालमेल में हैं, तो हम ठीक हैं।"
    • आप एक "सुरक्षा जाल" (इनवेरिएंट) बनाते हैं जो धावकों को अलग होने से पहले ही पकड़ लेता है।
    • अप-टू (Up-To) तकनीकें: यह एक "चीट कोड" रखने जैसा है जो आपको प्रमाण के उबाऊ हिस्सों को छोड़ने की अनुमति देता है। यदि आप जानते हैं कि दो धावक अनिवार्य रूप से एक जैसे हैं (सिमिट्री) या एक रास्ता दूसरे रास्ते की ओर ले जाता है (ट्रांजिटिविटी), तो आप बुनियादी बातों को दोबारा सिद्ध किए बिना आगे बढ़ सकते हैं।

केस स्टडीज: "ऑलवेज-मिसप्रेडिक्ट" ट्रिक को सिद्ध करना

पेपर ने अपने सिस्टम का परीक्षण दो वास्तविक दुनिया की सुरक्षा समस्याओं पर किया:

  1. "ऑलवेज-मिसप्रेडिक्ट" कॉन्ट्रैक्ट:

    • परिदृश्य: आधुनिक CPU समय बचाने के लिए यह अनुमान लगाने की कोशिश करते हैं कि दरवाजा किस तरफ खुलेगा (ब्रांच प्रेडिक्शन)। यदि वे गलत अनुमान लगाते हैं, तो उन्हें काम को "अनडू" (undo) करना पड़ता है, लेकिन कभी-कभी वे पीछे एक "टुकड़ा" (लीक) छोड़ देते हैं।
    • कॉन्ट्रक्ट: नियम पुस्तिका कहती है, "मान लीजिए कि CPU हमेशा गलत अनुमान लगाता है और दोनों दरवाजों को आज़माता है।" यह टुकड़ों का एक अनुमानित पैटर्न बनाता है।
    • प्रमाण: लेखकों ने अपने सिस्टम का उपयोग यह सिद्ध करने के लिए किया कि भले ही वास्तविक CPU कभी-कभी सही अनुमान लगाता है, लेकिन वह "ऑलवेज-रॉन्ग" कॉन्ट्रैक्ट से अधिक जानकारी कभी लीक नहीं करता है। यह एक सतर्क ड्राइवर (कॉन्ट्रक्ट) के मुकाबले एक लापरवाह ड्राइवर (हार्डवेयर) के सुरक्षित होने को सिद्ध करने जैसा है, भले ही लापरवाह ड्राइवर कभी-कभी भाग्यशाली हो।
  2. "सीक्वेंशियल" (Sequential) कॉन्ट्रक्ट:

    • परिदृश्य: वास्तविक CPU तेज़ होने के लिए चीज़ों को क्रम से बाहर (out of order) करते हैं (जैसे पानी उबलने के दौरान सब्जियां काटने वाला शेफ)।
    • कॉन्ट्रक्ट: नियम पुस्तिका कहती है, "मान लीजिए कि CPU सब कुछ सख्त क्रम में, एक-एक करके करता है।"
    • प्रमाण: उन्होंने सिद्ध किया कि भले ही वास्तविक CPU अराजक और तेज़ है, फिर भी यह ऐसी गुप्त जानकारी लीक नहीं करता जो सख्त, धीमे संस्करण द्वारा नहीं की जाती।

यह क्यों महत्वपूर्ण है

  • विश्वास (Trust): पहले, हमें विश्वास करना पड़ता था कि गणित सही है। अब, हमारे पास एक कंप्यूटर-सत्यापित प्रमाण है कि गणित सही है।
  • मॉड्यूलरिटी (Modularity): आप प्रमाण को लेगो ब्लॉक्स (Lego blocks) की तरह बना सकते हैं। यदि आप सिद्ध करते हैं कि एक हिस्सा काम करता है, तो आप उस ब्लॉक को अन्य प्रमाणों के लिए पुन: उपयोग कर सकते हैं।
  • सुरक्षा: यह "मेल्टडाउन" (Meltdown) और "स्पेक्ट्र" (Spectre) जैसी हमलों को रोकने में मदद करता है, जिससे हार्डवेयर डिजाइनरों को चिप बनाने से पहले अपने काम की जांच करने का एक कठोर तरीका मिलता है।

सारांश रूपक

कल्पना कीजिए कि आप यह सिद्ध करने की कोशिश कर रहे हैं कि एक खिलौना कार (कॉन्ट्रक्ट) ईंधन लीक करने के मामले में एक असली रेस कार (हार्डवेयर) के बिल्कुल समान व्यवहार करती है।

  • पुराना तरीका दोनों कारों को 1,000 मील तक चलाना और उम्मीद करना था कि वे लीक नहीं करेंगी।
  • यह पेपर एक जादुई सिमुलेशन रूम बनाता है जहाँ आप समय को रोक सकते हैं, दोनों कारों के इंजन को एक साथ देख सकते हैं, और गणितीय रूप से सिद्ध कर सकते हैं कि यदि खिलौना कार कुछ भी लीक नहीं करती है, तो वास्तविक कार कुछ भी लीक नहीं कर सकती, भले ही वास्तविक कार तेज़ चल रही हो या अलग मोड़ ले रही हो।

यह सिस्टम सुरक्षा प्रमाणों को एक अनुमान लगाने वाले खेल के बजाय एक कठोर, अटूट तार्किक श्रृंखला में बदल देता है।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →