Anthropic की Frontier Red Team और औपचारिक सत्यापन में उसके सहयोगी Theorem का कहना है कि Claude ने 123 ओपन-सोर्स लाइब्रेरी के 239 fuzz-test एंट्री पॉइंट्स के लिए मशीन-जाँचे गए प्रमाण तैयार किए। ये प्रमाण संकलित RISC-V प्रोग्रामों के कुछ खास क्रैश और मेमोरी-सुरक्षा गुणों को, तय शर्तों के तहत, कवर करते हैं। इसका मतलब यह नहीं कि वे लाइब्रेरी हर तरह के बग से मुक्त हैं।
9
5
टीम के मुताबिक, यह काम कुछ हफ्तों में पूरा हुआ और इससे Rocq प्रमाण-कोड की करीब 18 करोड़ पंक्तियाँ बनीं। इसकी अहमियत इस संभावना में है कि AI की मदद से वास्तविक सॉफ्टवेयर पर औपचारिक सत्यापन पहले से बड़े पैमाने पर किया जा सके—बशर्ते दावे उन्हीं गुणों और परिस्थितियों तक सीमित रहें जिन्हें सचमुच निर्दिष्ट करके जाँचा गया है।
3
13
प्रमाण वास्तव में क्या बताते हैं?
Anthropic का कहना है कि जिन प्रोग्रामों को जाँचा गया, वे 64 MB से छोटे हर इनपुट के लिए सामान्य रूप से समाप्त होते हैं—यानी न मेमोरी-सुरक्षा संबंधी त्रुटि आती है, न कोई assertion विफल होता है। यह दावा मॉडल किए गए Linux ऑपरेटिंग सिस्टम के जवाबों और मेमोरी लेआउट पर, बताई गई मान्यताओं के अधीन लागू होता है। प्रमाण खास तौर पर संकलित RISC-V प्रोग्रामों के बारे में हैं; वे हर लाइब्रेरी के हर संस्करण या तैनाती की सार्वभौमिक गारंटी नहीं हैं।
9
12
इस प्रक्रिया में Google के OSS-Fuzz प्रोजेक्ट के पहले से मौजूद fuzz-test एंट्री पॉइंट्स को औपचारिक विनिर्देशों की तरह इस्तेमाल किया गया। Fuzzing में सॉफ्टवेयर को अनेक इनपुट देकर उसकी जाँच की जाती है। इसके उलट, Claude ने तय किए गए विनिर्देश के दायरे में आने वाले सभी इनपुट के लिए प्रोग्राम के व्यवहार का प्रमाण तैयार किया।
3
13
Anthropic ने इस परियोजना को उत्पादन में इस्तेमाल होने वाले सॉफ्टवेयर का असेंबली स्तर पर AI की मदद से औपचारिक सत्यापन करने की पहली बड़े पैमाने की कोशिश बताया है। यह परियोजना की नवीनता के बारे में टीम का दावा है, न कि स्वतंत्र रूप से स्थापित ऐतिहासिक सहमति।
7
13
Rocq की जाँच क्यों मायने रखती है?
Claude ने प्रमाण बनाए और Rocq proof kernel ने उनकी जाँच की। इसका अर्थ है कि हर पंक्ति को डेवलपर द्वारा हाथ से परखना ज़रूरी नहीं: प्रमाण की मशीन-जाँच Claude की तर्क-प्रक्रिया पर भरोसा किए बिना की जा सकती है। फिर भी कुछ आधारों पर भरोसा करना पड़ता है—मसलन, प्रमेय वही गुण बताए जिसे डेवलपर साबित करना चाहता है, और औपचारिक मॉडल तथा जाँचने वाला kernel सही हों।
9
5
Anthropic और अन्य विवरणों के अनुसार, इस काम में करीब 18 करोड़ पंक्तियों के Rocq प्रमाण बने—औसतन हर बाइनरी के लिए लगभग छह लाख पंक्तियाँ। यह बड़ी मात्रा परियोजना का पैमाना दिखाती है; केवल पंक्तियों की गिनती से यह साबित नहीं होता कि प्रमाण कितनी व्यापकता से लागू होता है या किसी वास्तविक उत्पादन-परिस्थिति की ज़रूरतों से मेल खाता है।
3
12
परीक्षण क्या चूक सकते हैं—और इस परियोजना ने क्या पाया?
Fuzzing बहुत सारे इनपुट आज़मा सकती है, लेकिन अपने-आप यह साबित नहीं करती कि तय दायरे के हर संभावित इनपुट पर सॉफ्टवेयर सही चलेगा। परियोजना के बारे में प्रकाशित विवरणों का कहना है कि Claude ने सैकड़ों बग खोजे और ठीक किए; इनमें ऐसे दोष भी बताए गए जो ट्रिलियनों fuzzing रन के बाद भी नहीं मिले थे। ये इसी प्रयास के बारे में रिपोर्ट किए गए आँकड़े हैं—इस बात का स्वतंत्र माप नहीं कि दूसरे प्रोजेक्टों में औपचारिक सत्यापन हमेशा परीक्षण से बेहतर होगा।
2
11
व्यावहारिक निष्कर्ष यह नहीं कि परीक्षण बंद कर दिए जाएँ। बल्कि औपचारिक प्रमाण एक अलग तरह का भरोसा दे सकते हैं: निर्दिष्ट गुण और दायरे के लिए वे विनिर्देश में आने वाले सभी इनपुट पर व्यवहार स्थापित कर सकते हैं, जबकि सामान्य परीक्षण उन्हीं मामलों का आकलन करते हैं जिन्हें चलाकर देखा गया हो।
9
2
“सत्यापित” का मतलब “बग-मुक्त” नहीं
ये गारंटी चुनिंदा एंट्री पॉइंट्स और खास संकलित प्रोग्रामों पर लागू होती हैं। इनसे अपने-आप हर लाइब्रेरी फ़ंक्शन, बिल्ड कॉन्फ़िगरेशन, आर्किटेक्चर या उपयोग के तरीके की पुष्टि नहीं होती।
9
5
शर्तें भी अहम हैं। उपलब्ध विवरणों के मुताबिक, प्रमाण single-threaded, static RISC-V बाइनरी और तय मेमोरी सीमा वाले मॉडल किए गए Linux वातावरण के लिए हैं। आम तौर पर इस्तेमाल होने वाले दूसरे आर्किटेक्चर या कॉन्फ़िगरेशन पर चलने वाले बिल्ड के लिए इन्हें गारंटी नहीं समझना चाहिए।
12
27
34
और प्रमाण उसी प्रमेय को स्थापित करता है जो लिखा गया है—हर वह गुण नहीं जिसकी डेवलपर को ज़रूरत हो सकती है। प्रमाण के दायरे से बाहर बग बने रह सकते हैं; औपचारिक मॉडल और जाँच-प्रणाली जिन आधारों पर टिके हैं, उनमें त्रुटि की संभावना भी पूरी तरह समाप्त नहीं होती।
5
31
डेवलपर इस नतीजे से क्या लें?
परियोजना का मुख्य योगदान यह संकेत है कि AI की मदद से वास्तविक सॉफ्टवेयर के असेंबली-स्तर के औपचारिक सत्यापन को बड़े पैमाने पर करना संभव हो सकता है—ऐसा काम जिसमें पहले विशेषज्ञों का बहुत समय लग सकता था। लेकिन इससे यह तय नहीं होता कि हर कोडबेस पर यह तरीका सफल होगा या इसकी लागत कितनी होगी।
7
13
प्रमाणों का एक हिस्सा सार्वजनिक किया गया है। एक विवरण के अनुसार, जारी किए गए सेट में पूरे प्रोजेक्ट के बजाय 25 लाइब्रेरी और 60 एंट्री पॉइंट्स शामिल हैं। Theorem ने ओपन-सोर्स मेंटेनरों के लिए OSS Verify कार्यक्रम की भी घोषणा की है।
32
16
38
डेवलपर के लिए उपयोगी अगला कदम यह है कि प्रमाण को उसके तय दायरे में मिली आश्वस्ति की तरह देखें: उस पर निर्भर होने से पहले संबंधित एंट्री पॉइंट, संकलित प्रोग्राम, मान्यताओं और प्रमाणित गुण की जाँच करें। ये नतीजे परीक्षण के साथ LLM-सहायता प्राप्त औपचारिक सत्यापन को परखने का कारण देते हैं—परीक्षण रोकने या सॉफ्टवेयर को बग-मुक्त मान लेने का नहीं।
9
5