गैर-नियतात्मक रूप से समाप्ति छोरों के बारे में तर्क


10

यहां "ट्रैक बी" सवाल है अगर कभी एक था। सारांश: जब मैं गैर-नियतात्मक कार्यक्रमों के लिए एक शब्दार्थ देने की कोशिश करता हूं, तो पहली बात यह होती है कि मैं उन शब्दों के बारे में साबित नहीं कर सकता जहां मैं केवल गैर-निर्धारक को समाप्त करता हूं। निश्चित रूप से किसी ने काम किया है कि इस स्थिति में क्या करना है, या कम से कम यह बताया कि यह कठिन है, लेकिन मुझे नहीं पता कि इसे कैसे देखना है (इसलिए "संदर्भ अनुरोध" टैग)।

पृष्ठभूमि

मैं गैर-नियतत्ववाद के साथ एक समय-भाषा को मॉडल करना चाहता हूं। मुझे लगता है कि इस तरह की भाषा को स्माइथ पावरडोमेन के साथ बनाने का यह स्पष्ट (या कम से कम भोला) तरीका है, लेकिन अगर मैं गलत हूं तो मुझे सुधारें। हम इस भाषा में एक कमांड का अर्थ बताएंगे कि एक ऐसा फंक्शन है जिसका डोमेन S का सेट है और जिसका कोडोमैन सेट P(S)={}P(S) , जहां एक कम से कम तत्व है गैर-समाप्ति का प्रतिनिधित्व करना और P(S) राज्यों का अधिकार है।

σ{σ1,σ2,}PQ

  • skipσ={σ}
  • x:=Eσ={σ[(Eσ)/x]}
  • abortσ=
  • if E then P else Qσ=Pσ यदि Eσ=true , अन्यथा Qσ
  • PQσ= अगर Pσ= या Qσ= , अन्यथा PσQσ
  • P;Qσ= अगर कुछ लिए या , अन्यथा मेंPσ=Qτ=τPστPσQτ

वहाँ एक पूर्ण पूर्ण आंशिक आदेश , जहां लिए किसी भी और है, क्योंकि और उचित सेट हैं और , और हम इस कार्य का विस्तार कर सकते से के लिए pointwise: अगर के लिए हर , और वह फ़ंक्शन है जो हर राज्य को मैप करता है ।SSP(S)S1S2S1S2S1S2fSP(S)f1f2f1(σ)f2(σ)σf

एक लूप का अर्थ श्रृंखला सबसे कम ऊपरी सीमा है। , जहां यदि , अन्यथा अगर या कुछ के लिए , अन्यथा । (यह परिभाषा मानती है कि जिस मैंने अभी परिभाषित किया है वह स्कॉट निरंतर है, लेकिन मुझे लगता है कि यह एक तरफ छोड़ना सुरक्षित है।)while E do Pσff(f)f(f(f))f(g)(σ)={σ}E(σ)=falsePσ=g(τ)=τPστPσg(τ)f

सवाल

इस कार्यक्रम पर विचार करें:

x:=0;
b:=true;
while b do
x:=x+2;
b:=falseb:=true

सहज रूप से, यह एक लूप है जो किसी भी सकारात्मक संख्या को वापस कर सकता है या समाप्त नहीं कर सकता है, और जो हम इस लूप के बारे में साबित कर सकते हैं वह सबसे कमजोर उदारता पूर्व शर्त का उपयोग करके साबित कर सकता है (यह दिखाना संभव है कि एक लूप है। अपरिवर्तनीय)। हालाँकि, क्योंकि लूप को समाप्त करने की क्षमता नहीं है (हम उस प्रोग्राम द्वारा गैर-नियतात्मक विकल्प को परिष्कृत कर सकते हैं जो हमेशा दाहिने हाथ की शाखा लेता है), इस प्रोग्राम का अर्थ किसी भी प्रारंभिक अवस्था में दिया गया है । (अनौपचारिक रूप से कम: समारोह है कि किसी भी राज्य है जहां नक्शे ही है और किसी भी राज्य है जहां के लिए गलत है के लिए सच है की एक निश्चित बिंदु है पाश को परिभाषित करने के लिए इस्तेमाल किया।)n.x=2nbbf

इसका मतलब यह है कि मेरे द्वारा प्रस्तावित भोले शब्दार्थ उस तरह से मेल नहीं खाते हैं जिस तरह मैं कार्यक्रमों के बारे में तर्क करने में सक्षम होने की उम्मीद करता हूं। मैं अपने शब्दार्थ को दोष देता हूं, लेकिन उन्हें ठीक करने का तरीका नहीं।


4
मुझे लगता है कि किसी प्रोग्राम के अर्थ के कोडोमैन के रूप में का उपयोग करके, आपने प्रभावी रूप से एक प्रोग्राम के बारे में कुछ भी तर्क दिया है जो विचलन कर सकता है। एक भोली सोच के लिए , लेकिन मुझे नहीं पता कि यह एक और समस्या पेश करेगा। {}P(S)P(S{})
त्सुयोशी इतो

हां, आप बिलकुल सही हैं कि सेट यह पहले से ही स्पष्ट है कि आशा हमें खो जाने से पहले ही मिल जाती है। आपके सुझाव ने मुझे भी प्रभावित किया है, लेकिन मुझे लगता है कि आप इस समस्या में एक ही समस्या का अंत करते हैं, जब तक कि संभावित गैर-समाप्ति को नहीं _ द्वारा निर्दिष्ट किया जाता है , और यदि हमने उत्तरार्द्ध को चुना यह सामान्य तरीके से कम से कम निश्चित बिंदु के रूप में लूप को अर्थ देने की हमारी क्षमता के साथ हस्तक्षेप करेगा। {}P(S)S{}{}
रोब सिमंस

क्या आपने डायनामिक लॉजिक को देखा है? शब्दार्थ को राज्यों से राज्यों के संबंधों के संदर्भ में दिया गया है, और आप तर्क का उपयोग आंशिक और कुल शुद्धता के बारे में कारण के लिए कर सकते हैं, जो कहना है, अभिकलन के गुण जो समाप्त होते हैं और यह कि सभी संगणना किसी दिए गए संपत्ति के साथ समाप्त होती है।
डेव क्लार्क

मैंने इस सेटिंग में गतिशील तर्क के बारे में नहीं सोचा है, लेकिन मैं देखता हूं कि यह कैसे प्रासंगिक हो सकता है - मैं देखूंगा कि जब मैं पिट्सबर्ग में वापस आऊंगा तो प्लैटजर और उनके छात्र क्या सोचते हैं।
रोब सिमंस

जवाबों:


10

[डीबी [०] हिचकॉक और पार्क में पुनरावृत्ति के गुणों का विश्लेषण, संबंधों के तथाकथित एग्ली-मिलनर व्याख्या [Egl75, Plo76] के आधार पर एक अर्थ विश्लेषण के अनुरूप साबित होता है, जो कि अनियमित नॉनडेटर्मिनिज़्म को व्यक्त करता है । यह धारणा पकड़ लेती है कि यदि संबंधों में वांछित परिणाम के लिए कम से कम एक अभिकलन उत्पन्न होता है (यहां तक ​​कि एक गैर-गणना अभिकलन की उपस्थिति में भी), तो संबंधों की एक नॉनडेर्मिनिस्टिक यूनियन सही है। यह आप क्या करने की कोशिश कर रहे हैं के अनुरूप प्रतीत होता है।

अगला एक कथन के अर्थ में को एक फ़ंक्शन के रूप में बताता है, जो प्रत्येक प्रारंभिक राज्य को राज्यों के कुछ गैर- मैप कर रहा है, संभवतः युक्त है , जैसे कि इस अर्थ में सख्त है कि । और कथनों के बीच की nondeterministic पसंद को फ़ंक्शन द्वारा वर्णित किया जाता है, जो प्रत्येक प्रारंभिक स्थिति में को अलग-अलग परिणाम मिलन द्वारा वर्णित करता है । इस प्रकार, जब भी याSfSσfSfS()={}S1S2σfS1(σ)fS2(σ)S1S2एक अवांछनीय परिणाम के उत्पादन की संभावना है, तो उनके nondeterministic विकल्प है। जैसा कि अंतिम राज्यों के परिणामी सेट इस विश्लेषण में राज्यों के तथाकथित एग्ली-मिलनर अधिकार प्राप्त करते हैं:

PE--M(S)={ sS | s परिमित और गैर- है, या जिसमें}

इस मॉडल में अनंत उपसमूह को अंतिम राज्यों के संभावित सेट क्यों नहीं माना जाता है? इस धारणा के तहत कि संबंधपरक शर्तों के सभी बुनियादी निर्माण ब्लॉक संभव अंतिम राज्यों के केवल परिमित, गैर-रिक्त सेट का उत्पादन करते हैं, संभावित अंतिम राज्यों का एक अनंत सेट केवल तभी उत्पन्न हो सकता है जब एक अनंत गणना संभव हो। इस प्रकार इसे देखा जा सकता है। किसी दिए गए राज्य में रूट और नोड्स के रूप में एक पेड़ के रूप में शुरू होने वाले सभी संभावित गणनाओं के सेट की संरचना करें । पत्तियों का सेट तो बिल्कुल अंतिम , जो को छोड़कर सेSσ0σ0σ0, जो पत्तियों के बीच गायब हो सकता है, लेकिन इस तथ्य से अंतिम राज्यों के सेट में प्रतिनिधित्व किया जाता है कि पेड़ में एक अनंत मार्ग है। ऊपर की धारणा के अनुसार, और चूंकि केवल परिमित नॉनडेर्मिनिस्टिक विकल्प उपलब्ध है, इसलिए यह वृक्ष सूक्ष्म रूप से शाखा है। इस प्रकार, किसी भी परिमित गहराई पर केवल पत्तियों की एक सीमित संख्या होती है। नतीजतन, संभावित अंतिम राज्यों की एक अनंत संख्या केवल एक अनंत गणना (कोनिग के लेम्मा [कोन 32] के एक आवेदन) की उपस्थिति में उत्पन्न हो सकती है।

(PE--M(S),E--M) लिए एक द्वारा परिभाषित: ,E--Ms,tPE--M(S)

sE--Mt=(ss{}t)(ss=t) .

यहाँ, को एक प्लेसहोल्डर के रूप में देखा जा सकता है जिसके माध्यम से -gकटर सेट को और राज्यों को बदले में डालकर उत्पन्न किया जा सकता है । इसलिए, का सबसे कम तत्व है । इसके अलावा, पोसेट पास lub for -chains होता है। इसी तरह, लेकर तक के कड़े कार्य आंशिक रूप से विस्तार द्वारा आदेशित होते हैं । इसके अलावा, इस तरह के कम से कम समारोह हैE--M{}(PE--M(S),E--M)(PE--M(S),E--M)ωS{}PE--M(S)E--Mλσ.{} और lub's of -chains के ऐसे कार्य मौजूद हैं, भी।ω

[dB80] JW डी बकर। कार्यक्रम सुधार का गणितीय सिद्धांत । अप्रेंटिस हॉल, 1980।

[Egl75] एच एगली। Nondeterministic संगणना के लिए एक गणितीय मॉडल। तकनीकी रिपोर्ट, ईटीएच ज्यूरिख, 1975।

[कोएन 32] डी कोनिग। कैलोरी डेर एंडलिचेन und अनेंड्लिचेन ग्रेफेन। तकनीकी रिपोर्ट, लिपजिग, 1932।

[प्लो G६] जीडी प्लॉटकिन। एक पावरडोमेन निर्माण। कम्प्यूटेशन पर SIAM जर्नल , 5 (3): 452-487, 1976।

अस्वीकरण: यह एक किताब से लगभग मौखिक रूप से लिया जाता है जिसे मैंने एक बार सह-लेखक किया था:

WP de Roever और K Engelhardt। डेटा शोधन: मॉडल-ओरिएंटेड प्रूफ तरीके और उनकी तुलना । कैम्ब्रिज यूनिवर्सिटी प्रेस, 1998।


4
वाक्यांश "यह एक पुस्तक है जिसे मैंने एक बार सह-लेखक के रूप में लगभग शब्दशः लिया है" को शायद "एक्स्ट्रा अवेशनेस:" नहीं "डिस्क्लेमर:": डी के साथ उपसर्ग किया जाना चाहिए। धन्यवाद, यह बहुत मददगार है।
रॉब सिमंस

Nondeterminism को देखने का एक तरीका है (और जिस तरह से मैं इसे देखना चाहता हूं) वह यह है कि यह अंडरस्क्रिमिनेशन का एक रूप है - एक कार्यक्रम जिसमें एक nondeterministic पसंद के साथ कार्यक्रम को परिष्कृत किया जाता है जो हमेशा पहली पसंद लेता है, हमेशा दूसरी पसंद लेता है। या (इस क्षेत्र में McIver और मॉर्गन के व्यापक काम को देखें) कार्यक्रम जो संभावना के साथ एक विकल्प या दूसरे को लेता है ।5 । तो वह लूप जो गैर-नियतांत्रिक रूप से समाप्त नहीं होता है, उस लूप द्वारा परिष्कृत किया जाता है जो कभी समाप्त नहीं होता है, और आपके सिक्का-फ्लिप लूप द्वारा भी समाप्त होता है (संभावना 1 के साथ)
रोब सिमंस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.