क्या आपने आर्थर चारगुएरड की पीएचडी थीसिस, मैकेनाइज्ड प्रोग्राम वेरिफिकेशन के लिए विशेषता सूत्र देखे हैं ?
इंडक्टिव संबंधों के रूप में प्रकार प्रणाली और छोटे-चरण के शब्दार्थ के निर्माण के बजाय, वह कैमल कार्यक्रमों को चारित्रिक स्रोतों में परिवर्तित करने के लिए एक तकनीक देता है। यह मूल रूप से Ocaml के एक बहुत बड़े उपसमूह का समर्थन करने के लिए विधेय ट्रांसफार्मर शब्दार्थ का एक सामान्यीकरण है - विशेष रूप से, जैसे असुरक्षित जातियों सहित Obj.magic
। उनकी थीसिस से उद्धृत करने के लिए:
मैंने ओकेएमएल प्रोग्रामिंग लैन- गुएज के एक सबसेट पर ध्यान केंद्रित किया है, जो एक अनुक्रमिक, कॉल-बाय-वैल्यू, उच्च-स्तरीय प्रोग्रामिंग भाषा है। सीएफएमएल का वर्तमान कार्यान्वयन उच्च-क्रम कार्यों, पुनरावृत्ति, पारस्परिक पुनरावृत्ति और बहुरूपता पुनरावृत्ति सहित कोर λ-पथरी का समर्थन करता है। यह ट्यूपल्स, डेटा कंस्ट्रक्टर्स, पैटर्न मैचिंग, रेफरेंस सेल, रिकॉर्ड और एरेज़ को सपोर्ट करता है। मैं एक अतिरिक्त कैमल लाइब्रेरी प्रदान करता हूं जो अशक्त बिंदुओं और मजबूत अपडेट के लिए समर्थन जोड़ता है।
यदि आप किसी विशेष कैमल प्रोग्राम को सही साबित करना चाहते हैं तो यह बहुत ही आकर्षक तरीका है (कम से कम यदि आप इसकी मेटाथ्री में रुचि रखते हैं, हालांकि)।