क्या एक टाइप किया हुआ लैम्ब्डा कैलकुलस है जो लगातार और ट्यूरिंग पूर्ण है?


20

क्या एक टाइप किया हुआ लैम्ब्डा कैलकुलस है जहां करी-हावर्ड पत्राचार के तहत संगत तर्क संगत है, और जहां प्रत्येक कम्प्यूटेशनल फ़ंक्शन के लिए टाइप करने योग्य लैम्ब्डा अभिव्यक्तियाँ हैं?

यह वास्तव में एक स्पष्ट प्रश्न है, जिसमें "टाइप किए गए लैम्ब्डा कैलकुलस" की सटीक परिभाषा का अभाव है। मैं मूल रूप से सोच रहा हूं कि क्या इस क्षेत्र में कुछ के लिए या तो (ए) ज्ञात उदाहरण हैं, या (बी) ज्ञात असंभव प्रमाण हैं।

संपादित करें: @ कॉडी नीचे दिए गए अपने उत्तर में इस प्रश्न का एक सटीक संस्करण देता है: क्या एक तार्किक शुद्ध प्रकार की प्रणाली (एलपीटीएस) है जो सुसंगत और ट्यूरिंग पूर्ण (नीचे परिभाषित अर्थ में) है?


2
कोई पुनरावर्ती स्वयंसिद्ध कैलकुलस (लैम्ब्डा या अन्यथा) नहीं है, जिसके कुल पुनरावर्ती कार्य सभी पुनरावर्ती कार्य हैं, इसलिए आपके कैलकुलस में गैर-समाप्ति शब्द शामिल होंगे।
— एमिल जेकाबेक

2
इस उत्तर में एक प्रमेय है जो कहता है कि आपके पास किसी भी प्रकार का पथरी नहीं हो सकता है जो ट्यूरिंग-पूर्ण और कुल दोनों है ।
— बाउर

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

1
बेशक इस तरह के सवाल का एक क्लासिक जवाब हो सकता है: चौराहे प्रकारों के साथ टाइप किए गए -calculus , क्योंकि यह हर (और केवल उन) शब्दों को टाइप करता है जो दृढ़ता से सामान्य कर रहे हैं। यह पूछने के लिए एक दार्शनिक प्रश्न अधिक है कि कैलकुलस "करी-हावर्ड व्याख्या" को स्वीकार करता है या नहीं। λ
— कोड़ी

2
यहां अधिक सटीक होना कठिन है क्योंकि प्रश्न सटीक नहीं है।
— बाउर

जवाबों:


21

ठीक है, मैं इस पर एक दरार दूंगा: सामान्य रूप से एक दिए गए सिस्टम , निम्नलिखित सत्य है:T

यदि पथरी में सब कुछ ठीक-प्रकार शर्तों सामान्य हैं, तो टी है संगतTT जब एक तर्क के रूप में देखा।

सबूत आम तौर पर यह मानते हुए आगे बढ़ता है द्वारा आप एक शब्द है प्रकार के एफ एक एल एस ईabsurdFalse , विषय कमी का उपयोग कर एक सामान्य रूप पाने के लिए, और उसके बाद इस तरह के एक अवधि की संरचना पर प्रेरण द्वारा आगे बढ़ने से एक विरोधाभास मिलता है।

यह आश्चर्य की बात है कि अगर पकड़, यानी

किसी भी प्रकार की व्यवस्था के लिए , अगर टी हैतार्किक सुसंगतहै, तो में हर अच्छी तरह से टाइप अवधि टी सामान्य है।TTT

इसके साथ समस्या यह है कि "टाइप सिस्टम" की कोई वास्तविक सबसे सामान्य धारणा नहीं है, और यहां तक ​​कि इस तरह के सिस्टम के लिए तार्किक स्थिरता के अर्थ पर कम समझौता भी है। हालाँकि, हम अनुभवजन्य रूप से इसे सत्यापित कर सकते हैं

के लिए सबसे ज्ञात प्रकार प्रणालियों जो एक तार्किक व्याख्या है, बातचीत वास्तव में पकड़ है।

ट्यूरिंग पूर्णता में यह कैसे टाई करता है? ठीक है, एक के लिए, यदि टाइप-चेकिंग निर्णायक है , तो फ़ोरन का तर्क दिखाता है कि निम्नलिखित में से एक होना चाहिए पकड़ना :

  1. सभी अच्छी तरह से टाइप किए गए कार्यक्रमों का सेट ट्यूरिंग कम्प्लीट नहीं है ।
  2. एक नॉन-टर्मिनेटिंग वेल टाइप प्रोग्राम है।

यह सुझाव देता है कि:

प्रकार प्रणालियाँ जिनकी तार्किक व्याख्या होती है और जो सुसंगत होती हैं और पुनरावर्ती होती हैं, वे ट्यूरिंग पूर्ण नहीं होती हैं ।

सुझाव के बजाय एक वास्तविक प्रमेय देने के लिए टाइप सिस्टम और तार्किक व्याख्याओं की धारणा को गणितीय रूप से सटीक बनाने की आवश्यकता है।

अब दो टिप्पणियाँ मन में आती हैं:

  1. एक अनिर्दिष्ट प्रकार की प्रणाली है, चौराहे प्रकार की प्रणाली जिसमें एक तार्किक व्याख्या होती है और हर सामान्य -term का प्रतिनिधित्व कर सकती है । जैसा कि आप टिप्पणी करते हैं, यह ट्यूरिंग कम्प्लीट होने के समान नहीं है, क्योंकि कुल फ़ंक्शन के प्रकार को वांछित तर्क पर लागू करने से पहले अद्यतन (परिष्कृत, वास्तव में) करने की आवश्यकता हो सकती है। पथरी एक "करी शैली" पथरी है और STLC + के बराबर है λ और गामा⊢एम:τ

    Γ⊢M:τΓ⊢M:σΓ⊢M:τ∩σ
    ऐसा नहीं है कि "व्याख्या" स्पष्ट है∩
    Γ⊢M:τ∩σΓ⊢M:τΓ⊢M:τ∩σΓ⊢M:σ
    एक सुसंगत तार्किक व्याख्या करने के लिए होता है।∩=∧
  2. टाइप सिस्टम का एक वर्ग है, प्योर टाइप सिस्टम , जिसमें इस तरह के प्रश्न को सटीक बनाया जा सकता है। हालांकि इस रूपरेखा में, तार्किक व्याख्या कम स्पष्ट है। किसी को यह कहने के लिए लुभाया जा सकता है: "यदि कोई निर्जन प्रकार है तो पीटीएस सुसंगत है"। लेकिन यह काम नहीं करता है, क्योंकि प्रकार अलग-अलग "ब्रह्मांडों" में रह सकते हैं, जहां कुछ संगत हो सकते हैं और कुछ नहीं। Coquand और Herbelin लॉजिकल प्योर टाइप सिस्टम की एक धारणा को परिभाषित करते हैं , जिसमें प्रश्न समझ में आता है, और दिखाता है

    हर असंगत, गैर-निर्भर एलपीटीएस में एक लूपिंग कॉम्बिनेटर होता है (और इसलिए ट्यूरिंग कम्प्लीट होता है)

    जो एक दिशा में प्रश्न का उत्तर देता है (असंगत ⇒ इस मामले टीसी) में । जहाँ तक मुझे पता है, सामान्य एलटीटीएस के लिए सवाल अभी भी खुला है और काफी मुश्किल है।


संपादित करें: Coquand-Herbelin के परिणाम का रूपांतरण उतना आसान नहीं है जितना मैंने सोचा था! यहाँ है क्या मैं अब तक के साथ आया था।

एक तार्किक शुद्ध प्रकार प्रणाली के साथ एक सार्वजनिक टेलीफोन (कम से कम) प्रकार है और टी वाई पी ई , (कम से कम) स्वयंसिद्ध पी आर ओ पी : टी वाई पी ई और (कम से कम) नियम ( पी आर ओ पी , पी आर ओ पी , पी आर ओ पी ) , आगे की आवश्यकता के साथ कि टाइप पी आर ओ पी के प्रकार नहीं हैंPropTypeProp:Type(Prop,Prop,Prop)Prop ।

अब मैं ट्यूरिंग पूर्णता की एक विशेष बयान ग्रहण करने के लिए जा रहा हूँ: एक LPTS ठीक और जाने ΓLΓ संदर्भ होना

Γ=nat:Prop, 0:nat, S:nat→nat

हैपूरा ट्यूरिंगहर कुल गणनीय समारोह के लिए iff च : एन → एन एक शब्द है टी च ऐसी है कि गामा ⊢ टी च : n एक टी → n एक टी और हर के लिए n ∈ एन टी च ( एस एन 0 ) → * β एस एफ ( एन ) 0Lf:N→Ntf

Γ⊢tf:nat→nat
n∈N
tf (Sn 0)→β∗Sf(n) 0

अब Andrej के विकर्णन तर्क से पता चलता है वहाँ गैर-सांत हैं कि प्रकार के n एक टी ।tnat

अब ऐसा लगता है कि हम वहाँ आधे रास्ते में हैं! एक गैर समाप्त अवधि को देखते हुए , हम की घटनाओं को बदलना चाहते हैं n एक टी कुछ सामान्य प्रकार के आधार पर एक और से छुटकारा पाने के 0 और एस में Γ , और हम अपने विसंगति होगा ( एक का निवास है संदर्भ में A : P r o p )!Γ⊢loop:natnatA0SΓAA:Prop

दुर्भाग्य से यह वह जगह है जहां मैं फंस जाता हूं, क्योंकि पहचान द्वारा को बदलना आसान है , लेकिन 0 से छुटकारा पाना बहुत कठिन है। आदर्श रूप से हम कुछ क्लेइन रिकर्सन प्रमेय का उपयोग करना चाहेंगे, लेकिन मुझे अभी तक इसका पता नहीं चला है।S0


ठीक है, इसलिए आपकी टिप्पणी के बारे में पहले दो स्पष्टीकरण (1)। आपका क्या मतलब है जब आप कहते हैं कि चौराहे के प्रकार की यह प्रणाली पुनरावृत्ति करने योग्य नहीं है? निश्चित रूप से सिस्टम के प्रमेयों का सेट फिर से है, क्योंकि आपने इसे एक सीधा अनुक्रम पथरी के रूप में दिया है। साथ ही, आपके द्वारा लिंक किए गए पेपर में जो परिणाम मुझे दिखाई दे रहा है, वह यह है कि सिस्टम में टाइप की जाने वाली शर्तें बिल्कुल दृढ़ता से सामान्य होने वाली शर्तें हैं; लेकिन यह कहने से अलग नहीं है कि यह कुल कम्प्यूटेशनल कार्यों को टाइप कर सकता है? जैसे, नहीं है । एक्स एक्स दृढ़ता से सामान्य कर रहा है, लेकिन कुल नहीं? λx.xx
— मॉर्गन थॉमस

अब आपकी टिप्पणी के बारे में एक प्रश्न (2)। यह मुझे लगता है कि आप जिस प्रमेय को उद्धृत करते हैं वह ऐसा नहीं है जिसमें हम रुचि रखते हैं। यह कहता है कि प्रत्येक गैर-निर्भर एलपीटीएस के लिए, यदि यह असंगत है तो यह ट्यूरिंग पूर्ण है। लेकिन हम जानना चाहते हैं कि क्या हर एलपीटीएस के लिए, अगर यह पूरा हो रहा है तो यह असंगत है। क्या मैं यहाँ कुछ गलत समझ रहा हूँ?
— मॉर्गन थॉमस

@MorganThomas: आह, आप पहली बार बिंदु के बारे में सही कर रहे हैं: क्या मैं कहना का मतलब है कि प्रकार प्रणाली नहीं किया जा सकता है डिसाइडेबल , है कि, यह देखते हुए , बयान Γ ⊢ टी : एक अनिर्णनीय है। मैं इसे पोस्ट में सही करूँगा। Γ,t,AΓ⊢t:A
— कोड़ी

दूसरा बिंदु: आप यह भी सही हैं कि एक गैर-कुल फ़ंक्शन हो सकता है जो अच्छी तरह से टाइप किया गया हो (हालांकि कोई आवश्यक रूप से इसे किसी दिए गए तर्क पर लागू नहीं कर सकता है)। मैं जवाब में संशोधन करूंगा।
— कोड़ी

1
तीसरा बिंदु। आप फिर से सही हैं! हालाँकि, रूपांतरण (एलपीटीएस के विशेष मामले में) बल्कि तुच्छ है। मैं तर्क को रेखांकित करूंगा।
— कोड़ी

11

यहाँ मेरे प्रश्न के @ कोडी के पूर्वकरण के एक संस्करण का उत्तर दिया गया है। वहाँ एक सुसंगत LPTS जो मोटे तौर पर में पूरा ट्यूरिंग है @ कोड़ी की भावना, अगर हमें अतिरिक्त सूक्तियों के और परिचय के लिए अनुमति देते है -Reduction नियम। इस प्रकार सख्ती से बोलना प्रणाली नहीं हैβ एलपीटीएस ; यह केवल एक की तरह कुछ है।

निर्माणों की पथरी (या अपने पसंदीदा सदस्य पर विचार करें -cube)। यह एक एलटीटीएस है, लेकिन हम अतिरिक्त सामान जोड़ने जा रहे हैं जो इसे एलपीटीएस नहीं बनाता है। निरंतर प्रतीक nat , 0 , S चुनें , और स्वयंसिद्ध जोड़ें:λnat,0,S

⊢ 0 : नेट ⊢ एस : नेट → नेट

⊢nat:∗
⊢0:nat
⊢S:nat→nat

सूचकांक प्राकृतिक संख्या द्वारा ट्यूरिंग मशीन कार्यक्रम, और प्रत्येक प्राकृतिक संख्या , एक निरंतर प्रतीक चुनें च ई स्वयंसिद्ध जोड़ने के लिए, च ई : नेट → नेट , और सभी के लिए ई , एक्स ∈ एन , जोड़ने β -Reduction नियमefefe:nat→nate,x∈Nβ

fe(x)→βΦe(x),

जहां के रूप में हमेशा की तरह के उत्पादन में है ई वें पर ट्यूरिंग मशीन कार्यक्रम एक्स । यदि Φ ई ( एक्स ) diverges तो इस नियम में कुछ भी नहीं है। ध्यान दें कि इन सूक्तियों और नियम प्रणाली के प्रमेयों रिकर्सिवली इन्युमरेबल बने हुए हैं, हालांकि के अपने सेट जोड़कर β -Reduction नियम नहीं रह गया है डिसाइडेबल है, लेकिन केवल रिकर्सिवली इन्युमरेबल। मेरा मानना ​​है कि हम आसानी से β का सेट रख सकते थेΦe(x)exΦe(x)ββ प्रणाली के वाक्य रचना और नियमों में गणना के एक मॉडल का विवरण स्पष्ट रूप से वर्तनी कटौती नियमों ।

अब, यह सिद्धांत स्पष्ट रूप से @ कोड़ी के अर्थ में पूरी तरह से ट्यूरिंग है, बस ब्रूट बल द्वारा; लेकिन दावा है कि यह भी सुसंगत है। चलो इसका एक मॉडल बनाते हैं।

चलो तीन सेट, ऐसा है कि हो सकता है:U1∈U2∈U3

  • (जहां एस उत्तराधिकारी समारोह है)।∅,N,0,S∈U1S
  • प्रत्येक सेट सकर्मक है; यदि , तो एक ∈ यू मैं ।a∈b∈Uia∈Ui
  • प्रत्येक सेट फ़ंक्शन रिक्त स्थान के गठन के तहत बंद है; यानी, अगर , तो बी एक ∈ यू मैंA,B∈UiBA∈Ui ।
  • प्रत्येक सेट आश्रित उत्पादों के निर्माण के तहत बंद है; यानी, अगर और च : एक → यू मैं , तो Π एक ∈ एक च ( एक ) ∈ यू मैं ।A∈Uif:A→Ui∏a∈Af(a)∈Ui

इस तरह के सेटों का अस्तित्व निम्नानुसार है, ZFC प्लस अक्षतंतु से जो कि प्रत्येक कार्डिनल एक दुर्गम कार्डिनल से घिरा होता है; हम प्रत्येक सेट U i ले सकते हैंUi एक Grothendieck ब्रह्मांड होने के लिए ।

हम एक "व्याख्या" को यू 2 के तत्वों के लिए चर नामों के सेट से मैपिंग परिभाषित करते हैं । एक व्याख्या यह देखते हुए वी , हम एक व्याख्या परिभाषित कर सकते हैं मैं वी स्पष्ट तरह से प्रणाली के मामले की:vU2vIv

  • , x के लिए एक चर नाम।Iv(x)=v(x)x
  • ।Iv(∗)=U1,Iv(◻)=U2
  • ।Iv(nat)=N,Iv(0)=0,Iv(S)=S
  • , यानी, समारोह एन → एन द्वारा परिभाषित ई वें ट्यूरिंग कार्यक्रम।Iv(fe)=ΦeN→Ne
  • , अगर I v ( A ) अपने डोमेन में I v ( B ) के साथ एक फ़ंक्शन है, या I v ( A B ) = 0 अन्यथा ( ए ) बस एक मनमाना विकल्प)।Iv(AB)=Iv(A)(Iv(B))Iv(A)Iv(B)Iv(AB)=0
  • समारोह जो एक तत्व नक्शे है एकIv(λx:A.B) के लिए मैं वी [ एक्स : = एक ] ( बी ) ।a∈Iv(A)Iv[x:=a](B)
  • ।Iv(Πx:A.B)=∏a∈Iv(A)Iv[x:=a](B)

हम है कि सभी शर्तों के लिए , मैं वी ( ए ) ∈ यू 3 । अब हम कहते हैं कि एक व्याख्या वी संतुष्ट एक : बी , लिखा वी ⊨ एक : बी , अगर मैं वी ( ए ) ∈ मैं वी ( बी ) । हम कहते हैं कि गामा ⊨ एक : बी अगर सब व्याख्याओं के लिए v , अगर वी ⊨ एक्स : सी सभी के लिए (AIv(A)∈U3vA:Bv⊨A:BIv(A)∈Iv(B)Γ⊨A:Bvv⊨x:C , तो वी ⊨ एक : बी(x:C)∈Γv⊨A:B ।

यह जांच करने के लिए सरल है कि अगर , तो गामा ⊨ एक : बी , इसलिए इस प्रणाली का एक मॉडल है। लेकिन, किसी भी चर के लिए x , y , है ना मामला यह है कि y : * ⊨ एक्स : y , क्योंकि हम व्याख्या कर सकते हैं y द्वारा ∅Γ⊢A:BΓ⊨A:Bx,yy:∗⊨x:yy∅ है, ताकि सिस्टम संगत है।

β


2
Afe(x)→Φe(x)ιββfe(x)ιβ

मुझे लगता है कि आप सही हैं। यह मेरा क्षेत्र नहीं है, इसलिए मैं कुछ अनाड़ी हूं। :-) मुझे लगता है कि आपका प्रमाण काम करता है, और एक दिलचस्प परिणाम, अगर मैं सही हूं, तो यह है कि इस सिद्धांत में बहुत अधिक स्थिरता नहीं है। यह संभावित रूप से बहुत शक्तिशाली सिद्धांत जैसा दिखता है, क्योंकि इसमें प्रकार और प्राकृतिक संख्याएं हैं, जो आपको सेट सिद्धांत की व्याख्या करने देना चाहिए; लेकिन स्पष्ट रूप से आप नहीं कर सकते, क्योंकि आप इसे शक्तिशाली सेट सिद्धांत का उपयोग किए बिना लगातार साबित कर सकते हैं!
— मॉर्गन थॉमस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.