लैम्ब्डा क्यूब: Difference between revisions

From Vigyanwiki
(Created page with "{{Cleanup rewrite|article uses pervasively inconsistent, confusing and misleading terminology for basic concepts fundamental to the understanding of the article's subject||dat...")
 
No edit summary
Line 1: Line 1:
{{Cleanup rewrite|article uses pervasively inconsistent, confusing and misleading terminology for basic concepts fundamental to the understanding of the article's subject||date=September 2020}}
[[File:Lambda_Cube_img.svg|alt=|frame|लैम्ब्डा क्यूब. प्रत्येक तीर की दिशा समावेशन की दिशा है।]][[गणितीय तर्क]] और [[प्रकार सिद्धांत]] में, λ-क्यूब (जिसे लैम्ब्डा क्यूब भी लिखा जाता है) [[हेन्क बेरेन्ड्रेट]] द्वारा प्रस्तुत रूपरेखा है।<ref name=":0">{{Cite journal|last=Barendregt|first=Henk|date=1991|title=सामान्यीकृत प्रकार की प्रणालियों का परिचय|journal=Journal of Functional Programming|volume=1|issue=2|pages=125–154|doi=10.1017/s0956796800020025|issn=0956-7968|hdl=2066/17240|s2cid=44757552 |hdl-access=free}}</ref> विभिन्न आयामों की जांच करने के लिए जिसमें [[निर्माणों की गणना]] सरल रूप से टाइप किए गए λ-कैलकुलस का सामान्यीकरण है। घन का प्रत्येक आयाम शब्दों और प्रकारों के बीच नई प्रकार की निर्भरता से मेल खाता है। यहां, निर्भरता से तात्पर्य किसी शब्द या प्रकार की मुक्त चर और किसी शब्द या प्रकार से बंधे चर की क्षमता से है। λ-घन के संबंधित आयाम इसके अनुरूप हैं:
 
[[File:Lambda_Cube_img.svg|alt=|frame|लैम्ब्डा क्यूब. प्रत्येक तीर की दिशा समावेशन की दिशा है।]][[गणितीय तर्क]] और [[प्रकार सिद्धांत]] में, λ-क्यूब (जिसे लैम्ब्डा क्यूब भी लिखा जाता है) [[हेन्क बेरेन्ड्रेट]] द्वारा प्रस्तुत एक रूपरेखा है।<ref name=":0">{{Cite journal|last=Barendregt|first=Henk|date=1991|title=सामान्यीकृत प्रकार की प्रणालियों का परिचय|journal=Journal of Functional Programming|volume=1|issue=2|pages=125–154|doi=10.1017/s0956796800020025|issn=0956-7968|hdl=2066/17240|s2cid=44757552 |hdl-access=free}}</ref> विभिन्न आयामों की जांच करने के लिए जिसमें [[निर्माणों की गणना]] सरल रूप से टाइप किए गए λ-कैलकुलस का सामान्यीकरण है। घन का प्रत्येक आयाम शब्दों और प्रकारों के बीच एक नई प्रकार की निर्भरता से मेल खाता है। यहां, निर्भरता से तात्पर्य किसी शब्द या प्रकार की मुक्त चर और किसी शब्द या प्रकार से बंधे चर की क्षमता से है। λ-घन के संबंधित आयाम इसके अनुरूप हैं:


* एक्स-अक्ष (<math>\rightarrow</math>): ऐसे प्रकार जो [[आश्रित प्रकार]]ों के अनुरूप शब्दों को बांध सकते हैं।
* एक्स-अक्ष (<math>\rightarrow</math>): ऐसे प्रकार जो [[आश्रित प्रकार]]ों के अनुरूप शब्दों को बांध सकते हैं।
Line 7: Line 5:
* z-अक्ष (<math>\nearrow</math>): ऐसे प्रकार जो (बाध्यकारी) प्रकार ऑपरेटरों के अनुरूप प्रकारों को बांध सकते हैं।
* z-अक्ष (<math>\nearrow</math>): ऐसे प्रकार जो (बाध्यकारी) प्रकार ऑपरेटरों के अनुरूप प्रकारों को बांध सकते हैं।


इन तीन आयामों को संयोजित करने के विभिन्न तरीकों से घन के 8 शीर्ष प्राप्त होते हैं, जिनमें से प्रत्येक एक अलग प्रकार की टाइप की गई प्रणाली के अनुरूप होता है। λ-क्यूब को [[शुद्ध प्रकार की प्रणाली]] की अवधारणा में सामान्यीकृत किया जा सकता है।
इन तीन आयामों को संयोजित करने के विभिन्न तरीकों से घन के 8 शीर्ष प्राप्त होते हैं, जिनमें से प्रत्येक अलग प्रकार की टाइप की गई प्रणाली के अनुरूप होता है। λ-क्यूब को [[शुद्ध प्रकार की प्रणाली]] की अवधारणा में सामान्यीकृत किया जा सकता है।


== सिस्टम के उदाहरण ==
== सिस्टम के उदाहरण ==
Line 13: Line 11:
=== (λ→) [[बस लैम्ब्डा कैलकुलस टाइप किया गया]] ===
=== (λ→) [[बस लैम्ब्डा कैलकुलस टाइप किया गया]] ===


λ-क्यूब में पाई जाने वाली सबसे सरल प्रणाली सरल रूप से टाइप किया गया लैम्ब्डा कैलकुलस है, जिसे λ→ भी कहा जाता है। इस प्रणाली में, एक अमूर्तता का निर्माण करने का एकमात्र तरीका [[टाइपिंग नियम]] के साथ, एक शब्द को एक शब्द पर निर्भर बनाना है
λ-क्यूब में पाई जाने वाली सबसे सरल प्रणाली सरल रूप से टाइप किया गया लैम्ब्डा कैलकुलस है, जिसे λ→ भी कहा जाता है। इस प्रणाली में, अमूर्तता का निर्माण करने का एकमात्र तरीका [[टाइपिंग नियम]] के साथ, शब्द को शब्द पर निर्भर बनाना है


<math>\frac{\Gamma, x : \sigma \;\vdash\; t : \tau}{\Gamma \;\vdash\; \lambda x . t : \sigma \to \tau}</math>
<math>\frac{\Gamma, x : \sigma \;\vdash\; t : \tau}{\Gamma \;\vdash\; \lambda x . t : \sigma \to \tau}</math>
Line 19: Line 17:


=== (λ2) [[सिस्टम एफ]] ===
=== (λ2) [[सिस्टम एफ]] ===
सिस्टम एफ में (दूसरे क्रम में टाइप किए गए लैम्ब्डा कैलकुलस के लिए इसे λ2 भी कहा जाता है)<ref>{{cite book |last1=Nederpelt |first1=Rob |last2=Geuvers |first2=Herman |title=प्रकार सिद्धांत और औपचारिक प्रमाण|date=2014 |publisher=Cambridge University Press |isbn=9781107036505 |page=69 |url=https://www.cambridge.org/vi/academic/subjects/computer-science/programming-languages-and-applied-logic/type-theory-and-formal-proof-introduction?format=HB }}</ref> एक अन्य प्रकार का अमूर्तन है, जिसे ए के साथ लिखा जाता है <math>\Lambda</math>, जो निम्नलिखित नियम के साथ शब्दों को प्रकारों पर निर्भर करने की अनुमति देता है:
सिस्टम एफ में (दूसरे क्रम में टाइप किए गए लैम्ब्डा कैलकुलस के लिए इसे λ2 भी कहा जाता है)<ref>{{cite book |last1=Nederpelt |first1=Rob |last2=Geuvers |first2=Herman |title=प्रकार सिद्धांत और औपचारिक प्रमाण|date=2014 |publisher=Cambridge University Press |isbn=9781107036505 |page=69 |url=https://www.cambridge.org/vi/academic/subjects/computer-science/programming-languages-and-applied-logic/type-theory-and-formal-proof-introduction?format=HB }}</ref> अन्य प्रकार का अमूर्तन है, जिसे ए के साथ लिखा जाता है <math>\Lambda</math>, जो निम्नलिखित नियम के साथ शब्दों को प्रकारों पर निर्भर करने की अनुमति देता है:


<math>\frac{\Gamma \;\vdash\; t : \sigma}{\Gamma \;\vdash\; \Lambda \alpha . t : \Pi \alpha . \sigma} \;\text{ if } \alpha\text{ does not occur free in }\Gamma</math>
<math>\frac{\Gamma \;\vdash\; t : \sigma}{\Gamma \;\vdash\; \Lambda \alpha . t : \Pi \alpha . \sigma} \;\text{ if } \alpha\text{ does not occur free in }\Gamma</math>
Line 26: Line 24:
</syntaxhighlight>[[OCaml]] का प्रकार है <syntaxhighlight lang="ocaml">
</syntaxhighlight>[[OCaml]] का प्रकार है <syntaxhighlight lang="ocaml">
'a -> 'a
'a -> 'a
</syntaxhighlight>मतलब यह किसी भी प्रकार का तर्क ले सकता है <code>'a</code> और उस प्रकार का एक तत्व लौटाएँ। यह प्रकार λ2 में प्रकार से मेल खाता है <math>\Pi \alpha . \alpha \to \alpha</math>.
</syntaxhighlight>मतलब यह किसी भी प्रकार का तर्क ले सकता है <code>'a</code> और उस प्रकार का तत्व लौटाएँ। यह प्रकार λ2 में प्रकार से मेल खाता है <math>\Pi \alpha . \alpha \to \alpha</math>.


=== (λ<u>ω</u>) सिस्टम F<u>ω</u> ===
=== (λ<u>ω</u>) सिस्टम F<u>ω</u> ===


सिस्टम एफ में<math>\underline{\omega}</math> एक निर्माण को आपूर्ति प्रकारों के लिए पेश किया जाता है जो अन्य प्रकारों पर निर्भर होते हैं। इसे [[कंस्ट्रक्टर टाइप करें]] कहा जाता है और ''वैल्यू'' प्रकार के साथ फ़ंक्शन बनाने का एक तरीका प्रदान करता है।<ref>{{harvnb|Nederpelt|Geuvers|2014|p=85}}</ref> इस प्रकार के कंस्ट्रक्टर का एक उदाहरण बाइनरी पेड़ों का प्रकार है जिसमें किसी दिए गए प्रकार के डेटा द्वारा लेबल किए गए पत्ते होते हैं <math>A</math>: <math>\mathsf{TREE} := \lambda A : * . \Pi B . (A \to B) \to (B \to B \to B) \to B</math>, कहाँ<math>A:*</math>अनौपचारिक रूप से मतलब है<math>A</math> एक प्रकार है. यह एक फ़ंक्शन है जो एक प्रकार का पैरामीटर लेता है <math>A</math> एक तर्क के रूप में और का प्रकार लौटाता है <math>\mathsf{TREE}</math>प्रकार के मानों का s <math>A</math>. In concrete programming, this feature corresponds to the ability to define type constructors inside the language, rather than considering them as primitives. The previous type constructor roughly corresponds to the following definition of a tree with labeled leaves in OCaml:<syntaxhighlight lang="ocaml">
सिस्टम एफ में<math>\underline{\omega}</math> निर्माण को आपूर्ति प्रकारों के लिए पेश किया जाता है जो अन्य प्रकारों पर निर्भर होते हैं। इसे [[कंस्ट्रक्टर टाइप करें]] कहा जाता है और ''वैल्यू'' प्रकार के साथ फ़ंक्शन बनाने का तरीका प्रदान करता है।<ref>{{harvnb|Nederpelt|Geuvers|2014|p=85}}</ref> इस प्रकार के कंस्ट्रक्टर का उदाहरण बाइनरी पेड़ों का प्रकार है जिसमें किसी दिए गए प्रकार के डेटा द्वारा लेबल किए गए पत्ते होते हैं <math>A</math>: <math>\mathsf{TREE} := \lambda A : * . \Pi B . (A \to B) \to (B \to B \to B) \to B</math>, कहाँ<math>A:*</math>अनौपचारिक रूप से मतलब है<math>A</math> प्रकार है. यह फ़ंक्शन है जो प्रकार का पैरामीटर लेता है <math>A</math> तर्क के रूप में और का प्रकार लौटाता है <math>\mathsf{TREE}</math>प्रकार के मानों का s <math>A</math>. In concrete programming, this feature corresponds to the ability to define type constructors inside the language, rather than considering them as primitives. The previous type constructor roughly corresponds to the following definition of a tree with labeled leaves in OCaml:<syntaxhighlight lang="ocaml">
type 'a tree = | Leaf of 'a | Node of 'a tree * 'a tree
type 'a tree = | Leaf of 'a | Node of 'a tree * 'a tree
</syntaxhighlight>
</syntaxhighlight>
Line 38: Line 36:


=== (λP) लैम्ब्डा-पी ===
=== (λP) लैम्ब्डा-पी ===
ΛΠ-कैलकुलस|λP प्रणाली में, जिसे ΛΠ भी कहा जाता है, और लॉजिकल फ्रेमवर्क#LF से निकटता से संबंधित है, एक तथाकथित [[आश्रित प्रकार]] है। ये ऐसे प्रकार हैं जिन्हें शर्तों पर निर्भर रहने की अनुमति है। सिस्टम का महत्वपूर्ण परिचय नियम है
ΛΠ-कैलकुलस|λP प्रणाली में, जिसे ΛΠ भी कहा जाता है, और लॉजिकल फ्रेमवर्क#LF से निकटता से संबंधित है, तथाकथित [[आश्रित प्रकार]] है। ये ऐसे प्रकार हैं जिन्हें शर्तों पर निर्भर रहने की अनुमति है। सिस्टम का महत्वपूर्ण परिचय नियम है


<math>\frac{\Gamma, x : A \;\vdash\; B : *}{\Gamma \;\vdash\; (\Pi x : A . B) : *}</math>
<math>\frac{\Gamma, x : A \;\vdash\; B : *}{\Gamma \;\vdash\; (\Pi x : A . B) : *}</math>
कहाँ <math>*</math> वैध प्रकार का प्रतिनिधित्व करता है। नए प्रकार का कंस्ट्रक्टर <math>\Pi</math> [[करी हावर्ड समरूपता]] के माध्यम से एक सार्वभौमिक क्वांटिफायर से मेल खाता है, और सिस्टम λP समग्र रूप से केवल संयोजी के रूप में निहितार्थ के साथ [[प्रथम-क्रम तर्क]] से मेल खाता है। ठोस प्रोग्रामिंग में इन आश्रित प्रकारों का एक उदाहरण एक निश्चित लंबाई पर वैक्टर का प्रकार है: लंबाई एक शब्द है, जिस पर प्रकार निर्भर करता है।
कहाँ <math>*</math> वैध प्रकार का प्रतिनिधित्व करता है। नए प्रकार का कंस्ट्रक्टर <math>\Pi</math> [[करी हावर्ड समरूपता]] के माध्यम से सार्वभौमिक क्वांटिफायर से मेल खाता है, और सिस्टम λP समग्र रूप से केवल संयोजी के रूप में निहितार्थ के साथ [[प्रथम-क्रम तर्क]] से मेल खाता है। ठोस प्रोग्रामिंग में इन आश्रित प्रकारों का उदाहरण निश्चित लंबाई पर वैक्टर का प्रकार है: लंबाई शब्द है, जिस पर प्रकार निर्भर करता है।


=== (Fω) सिस्टम Fω ===
=== (Fω) सिस्टम Fω ===
Line 47: Line 45:


=== (λC) निर्माणों की गणना ===
=== (λC) निर्माणों की गणना ===
निर्माणों की गणना में, घन में λC के रूप में या λPω के रूप में दर्शाया गया है,<ref name=:0/>{{rp|130}} ये चार विशेषताएं सहवास करती हैं, जिससे प्रकार और पद दोनों प्रकार और पद पर निर्भर हो सकते हैं। शब्दों और प्रकारों के बीच λ→ में मौजूद स्पष्ट सीमा को कुछ हद तक समाप्त कर दिया गया है, क्योंकि सार्वभौमिक को छोड़कर सभी प्रकार <math>\square</math> स्वयं एक प्रकार के पद हैं।
निर्माणों की गणना में, घन में λC के रूप में या λPω के रूप में दर्शाया गया है,<ref name=:0/>{{rp|130}} ये चार विशेषताएं सहवास करती हैं, जिससे प्रकार और पद दोनों प्रकार और पद पर निर्भर हो सकते हैं। शब्दों और प्रकारों के बीच λ→ में मौजूद स्पष्ट सीमा को कुछ हद तक समाप्त कर दिया गया है, क्योंकि सार्वभौमिक को छोड़कर सभी प्रकार <math>\square</math> स्वयं प्रकार के पद हैं।


== औपचारिक परिभाषा ==
== औपचारिक परिभाषा ==
Line 53: Line 51:
सरल रूप से टाइप किए गए लैम्ब्डा कैलकुलस पर आधारित सभी प्रणालियों के लिए, क्यूब में सभी सिस्टम दो चरणों में दिए गए हैं: पहले, कच्चे शब्द, β-कमी की धारणा के साथ, और फिर टाइपिंग नियम जो उन शब्दों को टाइप करने की अनुमति देते हैं।
सरल रूप से टाइप किए गए लैम्ब्डा कैलकुलस पर आधारित सभी प्रणालियों के लिए, क्यूब में सभी सिस्टम दो चरणों में दिए गए हैं: पहले, कच्चे शब्द, β-कमी की धारणा के साथ, और फिर टाइपिंग नियम जो उन शब्दों को टाइप करने की अनुमति देते हैं।


प्रकार के सेट को इस प्रकार परिभाषित किया गया है <math>S := \{*, \square \}</math>, प्रकार को अक्षर से दर्शाया जाता है <math>s</math>. एक सेट भी है <math>V</math> चरों का, अक्षरों द्वारा दर्शाया गया <math>x,y,\dots</math>. घन की आठ प्रणालियों के मूल शब्द निम्नलिखित वाक्यविन्यास द्वारा दिए गए हैं:
प्रकार के सेट को इस प्रकार परिभाषित किया गया है <math>S := \{*, \square \}</math>, प्रकार को अक्षर से दर्शाया जाता है <math>s</math>. सेट भी है <math>V</math> चरों का, अक्षरों द्वारा दर्शाया गया <math>x,y,\dots</math>. घन की आठ प्रणालियों के मूल शब्द निम्नलिखित वाक्यविन्यास द्वारा दिए गए हैं:


<math>A := x \mid s \mid A~A \mid \lambda x : A . A \mid \Pi x : A . A</math>
<math>A := x \mid s \mid A~A \mid \lambda x : A . A \mid \Pi x : A . A</math>
Line 119: Line 117:
|{{ya}}
|{{ya}}
|}
|}
घन की प्रत्येक दिशा एक जोड़ी (जोड़ी को छोड़कर) से मेल खाती है <math display="inline">(*,*)</math> सभी प्रणालियों द्वारा साझा किया जाता है), और बदले में प्रत्येक जोड़ी शब्दों और प्रकारों के बीच निर्भरता की एक संभावना से मेल खाती है:
घन की प्रत्येक दिशा जोड़ी (जोड़ी को छोड़कर) से मेल खाती है <math display="inline">(*,*)</math> सभी प्रणालियों द्वारा साझा किया जाता है), और बदले में प्रत्येक जोड़ी शब्दों और प्रकारों के बीच निर्भरता की संभावना से मेल खाती है:


* <math display="inline">(*,*)</math> शर्तों को शर्तों पर निर्भर रहने की अनुमति देता है।
* <math display="inline">(*,*)</math> शर्तों को शर्तों पर निर्भर रहने की अनुमति देता है।
Line 137: Line 135:
===λ2===
===λ2===


λ2 में, ऐसे पद प्राप्त किए जा सकते हैं<math display="block">\vdash (\lambda \beta : * . \lambda x : \bot . x \beta) : \Pi \beta : * . \bot \to \beta</math>साथ <math display="inline">\bot = \Pi \alpha : * . \alpha</math>. अगर कोई पढ़ता है <math display="inline">\Pi</math> एक सार्वभौमिक परिमाणीकरण के रूप में, करी-हावर्ड समरूपता के माध्यम से, इसे विस्फोट के सिद्धांत के प्रमाण के रूप में देखा जा सकता है। सामान्य तौर पर, λ2 में [[ असंभाव्यता ]] प्रकार जैसे होने की संभावना जुड़ती है <math display="inline">\bot</math>, यह स्वयं सहित सभी प्रकारों पर मात्रा निर्धारित करने वाला शब्द है।<br />बहुरूपता उन कार्यों के निर्माण की भी अनुमति देती है जो λ→ में निर्माण योग्य नहीं थे। अधिक सटीक रूप से, λ2 में परिभाषित कार्य दूसरे क्रम के [[पीनो अंकगणित]] में सिद्ध रूप से कुल हैं।<ref>{{cite book |first1=Jean-Yves |last1=Girard |first2=Yves |last2=Lafont |first3=Paul |last3=Taylor |title=प्रमाण एवं प्रकार|publisher=Cambridge University Press |year=1989 |isbn=9780521371810 |volume=7 |series=Cambridge Tracts in Theoretical Computer Science }}</ref> विशेष रूप से, सभी आदिम पुनरावर्ती कार्य निश्चित हैं।
λ2 में, ऐसे पद प्राप्त किए जा सकते हैं<math display="block">\vdash (\lambda \beta : * . \lambda x : \bot . x \beta) : \Pi \beta : * . \bot \to \beta</math>साथ <math display="inline">\bot = \Pi \alpha : * . \alpha</math>. अगर कोई पढ़ता है <math display="inline">\Pi</math> सार्वभौमिक परिमाणीकरण के रूप में, करी-हावर्ड समरूपता के माध्यम से, इसे विस्फोट के सिद्धांत के प्रमाण के रूप में देखा जा सकता है। सामान्य तौर पर, λ2 में [[ असंभाव्यता |असंभाव्यता]] प्रकार जैसे होने की संभावना जुड़ती है <math display="inline">\bot</math>, यह स्वयं सहित सभी प्रकारों पर मात्रा निर्धारित करने वाला शब्द है।<br />बहुरूपता उन कार्यों के निर्माण की भी अनुमति देती है जो λ→ में निर्माण योग्य नहीं थे। अधिक सटीक रूप से, λ2 में परिभाषित कार्य दूसरे क्रम के [[पीनो अंकगणित]] में सिद्ध रूप से कुल हैं।<ref>{{cite book |first1=Jean-Yves |last1=Girard |first2=Yves |last2=Lafont |first3=Paul |last3=Taylor |title=प्रमाण एवं प्रकार|publisher=Cambridge University Press |year=1989 |isbn=9780521371810 |volume=7 |series=Cambridge Tracts in Theoretical Computer Science }}</ref> विशेष रूप से, सभी आदिम पुनरावर्ती कार्य निश्चित हैं।


===λP===
===λP===
Line 156: Line 154:


== अन्य प्रणालियों से संबंध ==
== अन्य प्रणालियों से संबंध ==
सिस्टम [[ स्वचालित ]] तार्किक दृष्टिकोण से λ2 के समान है। एमएल (प्रोग्रामिंग भाषा)|एमएल जैसी भाषाएं, टाइपिंग के दृष्टिकोण से, λ→ और λ2 के बीच कहीं स्थित होती हैं, क्योंकि वे एक प्रतिबंधित प्रकार के बहुरूपी प्रकारों को स्वीकार करते हैं, जो कि प्रीनेक्स सामान्य रूप में प्रकार हैं। हालाँकि, क्योंकि उनमें कुछ रिकर्सन ऑपरेटर होते हैं, उनकी कंप्यूटिंग शक्ति λ2 से अधिक होती है।<ref name=":1" />Coq प्रणाली केवल एक अप्राप्य के बजाय ब्रह्मांडों के एक रैखिक पदानुक्रम के साथ λC के विस्तार पर आधारित है <math display="inline">\square</math>, और आगमनात्मक प्रकार के निर्माण की क्षमता।
सिस्टम [[ स्वचालित |स्वचालित]] तार्किक दृष्टिकोण से λ2 के समान है। एमएल (प्रोग्रामिंग भाषा)|एमएल जैसी भाषाएं, टाइपिंग के दृष्टिकोण से, λ→ और λ2 के बीच कहीं स्थित होती हैं, क्योंकि वे प्रतिबंधित प्रकार के बहुरूपी प्रकारों को स्वीकार करते हैं, जो कि प्रीनेक्स सामान्य रूप में प्रकार हैं। हालाँकि, क्योंकि उनमें कुछ रिकर्सन ऑपरेटर होते हैं, उनकी कंप्यूटिंग शक्ति λ2 से अधिक होती है।<ref name=":1" />Coq प्रणाली केवल अप्राप्य के बजाय ब्रह्मांडों के रैखिक पदानुक्रम के साथ λC के विस्तार पर आधारित है <math display="inline">\square</math>, और आगमनात्मक प्रकार के निर्माण की क्षमता।


शुद्ध प्रकार की प्रणालियों को घन के सामान्यीकरण के रूप में देखा जा सकता है, जिसमें प्रकार, स्वयंसिद्ध, उत्पाद और अमूर्त नियमों का एक मनमाना सेट होता है। इसके विपरीत, लैम्ब्डा क्यूब के सिस्टम को दो प्रकार के शुद्ध प्रकार के सिस्टम के रूप में व्यक्त किया जा सकता है <math>\{*, \square\}</math>, एकमात्र स्वयंसिद्ध <math display="inline">\{*,\square\}</math>, और नियमों का एक सेट <math display="inline">R</math> ऐसा है कि <math>\{(*,*,*)\} \subseteq R \subseteq \{(*,*,*), (*,\square, \square), (\square, *, *), (\square, \square, \square) \}</math>.<ref name=":0" />
शुद्ध प्रकार की प्रणालियों को घन के सामान्यीकरण के रूप में देखा जा सकता है, जिसमें प्रकार, स्वयंसिद्ध, उत्पाद और अमूर्त नियमों का मनमाना सेट होता है। इसके विपरीत, लैम्ब्डा क्यूब के सिस्टम को दो प्रकार के शुद्ध प्रकार के सिस्टम के रूप में व्यक्त किया जा सकता है <math>\{*, \square\}</math>, एकमात्र स्वयंसिद्ध <math display="inline">\{*,\square\}</math>, और नियमों का सेट <math display="inline">R</math> ऐसा है कि <math>\{(*,*,*)\} \subseteq R \subseteq \{(*,*,*), (*,\square, \square), (\square, *, *), (\square, \square, \square) \}</math>.<ref name=":0" />


करी-हावर्ड समरूपता के माध्यम से, लैम्ब्डा क्यूब और तार्किक प्रणालियों में सिस्टम के बीच एक-से-एक पत्राचार होता है,<ref name=":0" />अर्थात्:
करी-हावर्ड समरूपता के माध्यम से, लैम्ब्डा क्यूब और तार्किक प्रणालियों में सिस्टम के बीच एक-से-एक पत्राचार होता है,<ref name=":0" />अर्थात्:
Line 189: Line 187:
|[[Calculus of constructions|Calculus of Constructions]]
|[[Calculus of constructions|Calculus of Constructions]]
|}
|}
सभी तर्क एक निहितार्थ हैं (अर्थात केवल संयोजक हैं <math display="inline">\to</math> और <math display="inline">\forall</math>), हालाँकि कोई अन्य संयोजकों को परिभाषित कर सकता है जैसे कि <math>\wedge</math> या <math>\neg</math> दूसरे और उच्च क्रम के तर्कों में एक अव्यवहारिक तरीके से। कमजोर उच्च क्रम तर्कशास्त्र में, उच्च क्रम विधेय के लिए चर होते हैं, लेकिन उन पर कोई परिमाणीकरण नहीं किया जा सकता है।
सभी तर्क निहितार्थ हैं (अर्थात केवल संयोजक हैं <math display="inline">\to</math> और <math display="inline">\forall</math>), हालाँकि कोई अन्य संयोजकों को परिभाषित कर सकता है जैसे कि <math>\wedge</math> या <math>\neg</math> दूसरे और उच्च क्रम के तर्कों में अव्यवहारिक तरीके से। कमजोर उच्च क्रम तर्कशास्त्र में, उच्च क्रम विधेय के लिए चर होते हैं, लेकिन उन पर कोई परिमाणीकरण नहीं किया जा सकता है।


==सामान्य गुण==
==सामान्य गुण==
Line 200: Line 198:
ये सभी सामान्य शुद्ध प्रकार की प्रणालियों पर सिद्ध किए जा सकते हैं।<ref>{{Cite book |last1=Sørensen|first1=Morten Heine|chapter=Pure type systems and the λ-cube|date=2006|title=करी-हावर्ड समरूपता पर व्याख्यान|pages=343–359|publisher=Elsevier|isbn=9780444520777|last2=Urzyczyin|first2=Pawel|doi=10.1016/s0049-237x(06)80015-7}}</ref>
ये सभी सामान्य शुद्ध प्रकार की प्रणालियों पर सिद्ध किए जा सकते हैं।<ref>{{Cite book |last1=Sørensen|first1=Morten Heine|chapter=Pure type systems and the λ-cube|date=2006|title=करी-हावर्ड समरूपता पर व्याख्यान|pages=343–359|publisher=Elsevier|isbn=9780444520777|last2=Urzyczyin|first2=Pawel|doi=10.1016/s0049-237x(06)80015-7}}</ref>
क्यूब की प्रणाली में अच्छी तरह से टाइप किया गया कोई भी शब्द दृढ़ता से सामान्यीकरण कर रहा है,<ref name=":0" />हालाँकि यह गुण सभी शुद्ध प्रकार की प्रणालियों के लिए सामान्य नहीं है। क्यूब में कोई भी सिस्टम ट्यूरिंग पूर्ण नहीं है।<ref name=":1" />
क्यूब की प्रणाली में अच्छी तरह से टाइप किया गया कोई भी शब्द दृढ़ता से सामान्यीकरण कर रहा है,<ref name=":0" />हालाँकि यह गुण सभी शुद्ध प्रकार की प्रणालियों के लिए सामान्य नहीं है। क्यूब में कोई भी सिस्टम ट्यूरिंग पूर्ण नहीं है।<ref name=":1" />
== [[उपप्रकार]] ==
== [[उपप्रकार]] ==
हालाँकि, सबटाइपिंग को क्यूब में प्रदर्शित नहीं किया जाता है, भले ही सिस्टम पसंद करता हो <math>F^\omega_{<:}</math>, जिसे उच्च-क्रम सीमाबद्ध परिमाणीकरण के रूप में जाना जाता है, जो उपप्रकार और बहुरूपता को जोड़ता है, व्यावहारिक रुचि का है, और इसे आगे बंधे हुए प्रकार के ऑपरेटरों के लिए सामान्यीकृत किया जा सकता है। आगे विस्तार <math>F^\omega_{<:}</math> विशुद्ध रूप से कार्यात्मक वस्तुओं की परिभाषा की अनुमति दें; ये सिस्टम आम तौर पर लैम्ब्डा क्यूब पेपर प्रकाशित होने के बाद विकसित किए गए थे।<ref>{{Cite book|title=प्रकार और प्रोग्रामिंग भाषाएँ|last=Pierce|first=Benjamin|date=2002|publisher=MIT Press|isbn=978-0262162098|pages=467–490|oclc=300712077 }}</ref>
हालाँकि, सबटाइपिंग को क्यूब में प्रदर्शित नहीं किया जाता है, भले ही सिस्टम पसंद करता हो <math>F^\omega_{<:}</math>, जिसे उच्च-क्रम सीमाबद्ध परिमाणीकरण के रूप में जाना जाता है, जो उपप्रकार और बहुरूपता को जोड़ता है, व्यावहारिक रुचि का है, और इसे आगे बंधे हुए प्रकार के ऑपरेटरों के लिए सामान्यीकृत किया जा सकता है। आगे विस्तार <math>F^\omega_{<:}</math> विशुद्ध रूप से कार्यात्मक वस्तुओं की परिभाषा की अनुमति दें; ये सिस्टम आम तौर पर लैम्ब्डा क्यूब पेपर प्रकाशित होने के बाद विकसित किए गए थे।<ref>{{Cite book|title=प्रकार और प्रोग्रामिंग भाषाएँ|last=Pierce|first=Benjamin|date=2002|publisher=MIT Press|isbn=978-0262162098|pages=467–490|oclc=300712077 }}</ref>
Line 208: Line 204:
== यह भी देखें ==
== यह भी देखें ==


* अनुसंधान को निर्देशित करने की उनकी क्षमता में,<ref>{{harvnb|Ridoux|1998|p=70}}</ref> ओलिवियर रिडौक्स लैम्ब्डा क्यूब का एक कट-आउट टेम्प्लेट देता है और क्यूब का एक ऑक्टाहेड्रोन के रूप में दोहरा प्रतिनिधित्व भी देता है, जहां 8 शीर्षों को चेहरों द्वारा प्रतिस्थापित किया जाता है, साथ ही डोडेकाहेड्रोन के रूप में एक दोहरा प्रतिनिधित्व दिया जाता है, जहां 12 किनारों को बदल दिया जाता है। चेहरे के।
* अनुसंधान को निर्देशित करने की उनकी क्षमता में,<ref>{{harvnb|Ridoux|1998|p=70}}</ref> ओलिवियर रिडौक्स लैम्ब्डा क्यूब का कट-आउट टेम्प्लेट देता है और क्यूब का ऑक्टाहेड्रोन के रूप में दोहरा प्रतिनिधित्व भी देता है, जहां 8 शीर्षों को चेहरों द्वारा प्रतिस्थापित किया जाता है, साथ ही डोडेकाहेड्रोन के रूप में दोहरा प्रतिनिधित्व दिया जाता है, जहां 12 किनारों को बदल दिया जाता है। चेहरे के।
* [[होमोटोपी प्रकार सिद्धांत]] <!-- Not clear what the link between HoTT and the lambda cube is -->
* [[होमोटोपी प्रकार सिद्धांत]]
 
 
== टिप्पणियाँ ==
== टिप्पणियाँ ==
{{reflist}}
{{reflist}}


== अग्रिम पठन ==
== अग्रिम पठन ==


* {{cite web |first1=Simon |last1=Peyton Jones |first2=Erik |last2=Meijer |year=1997 |url=https://www.microsoft.com/en-us/research/wp-content/uploads/1997/01/henk.pdf |title=Henk: A Typed Intermediate Language |website=[[Microsoft]] |quote='''Henk''' ''is based directly on the lambda cube'', an expressive family of typed lambda calculi. }}
* {{cite web |first1=Simon |last1=Peyton Jones |first2=Erik |last2=Meijer |year=1997 |url=https://www.microsoft.com/en-us/research/wp-content/uploads/1997/01/henk.pdf |title=Henk: A Typed Intermediate Language |website=[[Microsoft]] |quote='''Henk''' ''is based directly on the lambda cube'', an expressive family of typed lambda calculi. }}
== बाहरी संबंध ==
== बाहरी संबंध ==



Revision as of 16:35, 16 July 2023

लैम्ब्डा क्यूब. प्रत्येक तीर की दिशा समावेशन की दिशा है।

गणितीय तर्क और प्रकार सिद्धांत में, λ-क्यूब (जिसे लैम्ब्डा क्यूब भी लिखा जाता है) हेन्क बेरेन्ड्रेट द्वारा प्रस्तुत रूपरेखा है।[1] विभिन्न आयामों की जांच करने के लिए जिसमें निर्माणों की गणना सरल रूप से टाइप किए गए λ-कैलकुलस का सामान्यीकरण है। घन का प्रत्येक आयाम शब्दों और प्रकारों के बीच नई प्रकार की निर्भरता से मेल खाता है। यहां, निर्भरता से तात्पर्य किसी शब्द या प्रकार की मुक्त चर और किसी शब्द या प्रकार से बंधे चर की क्षमता से है। λ-घन के संबंधित आयाम इसके अनुरूप हैं:

  • एक्स-अक्ष (): ऐसे प्रकार जो आश्रित प्रकारों के अनुरूप शब्दों को बांध सकते हैं।
  • y-अक्ष (): वे शब्द जो पैरामीट्रिक बहुरूपता के अनुरूप प्रकारों को बांध सकते हैं।
  • z-अक्ष (): ऐसे प्रकार जो (बाध्यकारी) प्रकार ऑपरेटरों के अनुरूप प्रकारों को बांध सकते हैं।

इन तीन आयामों को संयोजित करने के विभिन्न तरीकों से घन के 8 शीर्ष प्राप्त होते हैं, जिनमें से प्रत्येक अलग प्रकार की टाइप की गई प्रणाली के अनुरूप होता है। λ-क्यूब को शुद्ध प्रकार की प्रणाली की अवधारणा में सामान्यीकृत किया जा सकता है।

सिस्टम के उदाहरण

(λ→) बस लैम्ब्डा कैलकुलस टाइप किया गया

λ-क्यूब में पाई जाने वाली सबसे सरल प्रणाली सरल रूप से टाइप किया गया लैम्ब्डा कैलकुलस है, जिसे λ→ भी कहा जाता है। इस प्रणाली में, अमूर्तता का निर्माण करने का एकमात्र तरीका टाइपिंग नियम के साथ, शब्द को शब्द पर निर्भर बनाना है


(λ2) सिस्टम एफ

सिस्टम एफ में (दूसरे क्रम में टाइप किए गए लैम्ब्डा कैलकुलस के लिए इसे λ2 भी कहा जाता है)[2] अन्य प्रकार का अमूर्तन है, जिसे ए के साथ लिखा जाता है , जो निम्नलिखित नियम के साथ शब्दों को प्रकारों पर निर्भर करने की अनुमति देता है:

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

fun x -> x

OCaml का प्रकार है

'a -> 'a

मतलब यह किसी भी प्रकार का तर्क ले सकता है 'a और उस प्रकार का तत्व लौटाएँ। यह प्रकार λ2 में प्रकार से मेल खाता है .

ω) सिस्टम Fω

सिस्टम एफ में निर्माण को आपूर्ति प्रकारों के लिए पेश किया जाता है जो अन्य प्रकारों पर निर्भर होते हैं। इसे कंस्ट्रक्टर टाइप करें कहा जाता है और वैल्यू प्रकार के साथ फ़ंक्शन बनाने का तरीका प्रदान करता है।[3] इस प्रकार के कंस्ट्रक्टर का उदाहरण बाइनरी पेड़ों का प्रकार है जिसमें किसी दिए गए प्रकार के डेटा द्वारा लेबल किए गए पत्ते होते हैं : , कहाँअनौपचारिक रूप से मतलब है प्रकार है. यह फ़ंक्शन है जो प्रकार का पैरामीटर लेता है तर्क के रूप में और का प्रकार लौटाता है प्रकार के मानों का s . In concrete programming, this feature corresponds to the ability to define type constructors inside the language, rather than considering them as primitives. The previous type constructor roughly corresponds to the following definition of a tree with labeled leaves in OCaml:

type 'a tree = | Leaf of 'a | Node of 'a tree * 'a tree

नए प्रकार प्राप्त करने के लिए इस प्रकार के कंस्ट्रक्टर को अन्य प्रकारों पर लागू किया जा सकता है। उदाहरण के लिए, पूर्णांकों के वृक्षों के प्रकार प्राप्त करने के लिए:

type int_tree = int tree

सिस्टम एफ आम तौर पर इसका उपयोग अपने आप नहीं किया जाता है, लेकिन यह टाइप कंस्ट्रक्टर की स्वतंत्र सुविधा को अलग करने के लिए उपयोगी है।[4]


(λP) लैम्ब्डा-पी

ΛΠ-कैलकुलस|λP प्रणाली में, जिसे ΛΠ भी कहा जाता है, और लॉजिकल फ्रेमवर्क#LF से निकटता से संबंधित है, तथाकथित आश्रित प्रकार है। ये ऐसे प्रकार हैं जिन्हें शर्तों पर निर्भर रहने की अनुमति है। सिस्टम का महत्वपूर्ण परिचय नियम है

कहाँ वैध प्रकार का प्रतिनिधित्व करता है। नए प्रकार का कंस्ट्रक्टर करी हावर्ड समरूपता के माध्यम से सार्वभौमिक क्वांटिफायर से मेल खाता है, और सिस्टम λP समग्र रूप से केवल संयोजी के रूप में निहितार्थ के साथ प्रथम-क्रम तर्क से मेल खाता है। ठोस प्रोग्रामिंग में इन आश्रित प्रकारों का उदाहरण निश्चित लंबाई पर वैक्टर का प्रकार है: लंबाई शब्द है, जिस पर प्रकार निर्भर करता है।

(Fω) सिस्टम Fω

सिस्टम एफ-ओमेगा|सिस्टम एफω दोनों को जोड़ता है सिस्टम F का कंस्ट्रक्टर और सिस्टम F से टाइप कंस्ट्रक्टर. इस प्रकार सिस्टम Fω दोनों शब्द प्रदान करता है जो प्रकारों पर निर्भर करते हैं और प्रकार जो प्रकारों पर निर्भर करते हैं।

(λC) निर्माणों की गणना

निर्माणों की गणना में, घन में λC के रूप में या λPω के रूप में दर्शाया गया है,[1]: 130  ये चार विशेषताएं सहवास करती हैं, जिससे प्रकार और पद दोनों प्रकार और पद पर निर्भर हो सकते हैं। शब्दों और प्रकारों के बीच λ→ में मौजूद स्पष्ट सीमा को कुछ हद तक समाप्त कर दिया गया है, क्योंकि सार्वभौमिक को छोड़कर सभी प्रकार स्वयं प्रकार के पद हैं।

औपचारिक परिभाषा

सरल रूप से टाइप किए गए लैम्ब्डा कैलकुलस पर आधारित सभी प्रणालियों के लिए, क्यूब में सभी सिस्टम दो चरणों में दिए गए हैं: पहले, कच्चे शब्द, β-कमी की धारणा के साथ, और फिर टाइपिंग नियम जो उन शब्दों को टाइप करने की अनुमति देते हैं।

प्रकार के सेट को इस प्रकार परिभाषित किया गया है , प्रकार को अक्षर से दर्शाया जाता है . सेट भी है चरों का, अक्षरों द्वारा दर्शाया गया . घन की आठ प्रणालियों के मूल शब्द निम्नलिखित वाक्यविन्यास द्वारा दिए गए हैं:

और दर्शाने कब में मुक्त नहीं होता है .

पर्यावरण, जैसा कि आमतौर पर टाइप की गई प्रणालियों में होता है, द्वारा दिया जाता है क्यूब में सभी प्रणालियों के लिए β-कमी की धारणा आम है। यह लिखा है और नियमानुसार दिया गया है

इसका रिफ्लेक्सिव ट्रांजिटिव क्लोजर|रिफ्लेक्सिव, ट्रांजिटिव क्लोजर लिखा है .

निम्नलिखित टाइपिंग नियम भी क्यूब की सभी प्रणालियों के लिए सामान्य हैं:

प्रणालियों के बीच अंतर प्रकार के जोड़े में है निम्नलिखित दो टाइपिंग नियमों में इसकी अनुमति है:
सिस्टम और जोड़ियों के बीच पत्राचार नियमों में निम्नलिखित की अनुमति है:

λ→ Yes No No No
λP Yes Yes No No
λ2 Yes No Yes No
λω Yes No No Yes
λP2 Yes Yes Yes No
λPω Yes Yes No Yes
λω Yes No Yes Yes
λC Yes Yes Yes Yes

घन की प्रत्येक दिशा जोड़ी (जोड़ी को छोड़कर) से मेल खाती है सभी प्रणालियों द्वारा साझा किया जाता है), और बदले में प्रत्येक जोड़ी शब्दों और प्रकारों के बीच निर्भरता की संभावना से मेल खाती है:

  • शर्तों को शर्तों पर निर्भर रहने की अनुमति देता है।
  • प्रकारों को शर्तों पर निर्भर करने की अनुमति देता है।
  • शर्तों को प्रकारों पर निर्भर करने की अनुमति देता है।
  • प्रकारों को प्रकारों पर निर्भर रहने की अनुमति देता है।

प्रणालियों के बीच तुलना

λ→

एक विशिष्ट व्युत्पत्ति जो प्राप्त की जा सकती है वह है

या तीर शॉर्टकट के साथ
पहचान से काफी मिलता-जुलता (प्रकार का)। ) सामान्य λ→ का। ध्यान दें कि उपयोग किए गए सभी प्रकार संदर्भ में दिखाई देने चाहिए, क्योंकि एकमात्र व्युत्पत्ति जो खाली संदर्भ में की जा सकती है .

कंप्यूटिंग शक्ति काफी कमजोर है, यह विस्तारित बहुपद (एक सशर्त ऑपरेटर के साथ बहुपद) से मेल खाती है।[5]


λ2

λ2 में, ऐसे पद प्राप्त किए जा सकते हैं

साथ . अगर कोई पढ़ता है सार्वभौमिक परिमाणीकरण के रूप में, करी-हावर्ड समरूपता के माध्यम से, इसे विस्फोट के सिद्धांत के प्रमाण के रूप में देखा जा सकता है। सामान्य तौर पर, λ2 में असंभाव्यता प्रकार जैसे होने की संभावना जुड़ती है , यह स्वयं सहित सभी प्रकारों पर मात्रा निर्धारित करने वाला शब्द है।
बहुरूपता उन कार्यों के निर्माण की भी अनुमति देती है जो λ→ में निर्माण योग्य नहीं थे। अधिक सटीक रूप से, λ2 में परिभाषित कार्य दूसरे क्रम के पीनो अंकगणित में सिद्ध रूप से कुल हैं।[6] विशेष रूप से, सभी आदिम पुनरावर्ती कार्य निश्चित हैं।

λP

λP में, शब्दों के आधार पर प्रकार रखने की क्षमता का मतलब है कि कोई तार्किक विधेय व्यक्त कर सकता है। उदाहरण के लिए, निम्नलिखित व्युत्पन्न है:

जो, करी-हावर्ड समरूपता के माध्यम से, के प्रमाण से मेल खाता है .
कम्प्यूटेशनल दृष्टिकोण से, हालांकि, आश्रित प्रकार होने से कम्प्यूटेशनल शक्ति में वृद्धि नहीं होती है, केवल अधिक सटीक प्रकार के गुणों को व्यक्त करने की संभावना होती है।[7] आश्रित प्रकारों से निपटने के दौरान रूपांतरण नियम की अत्यधिक आवश्यकता होती है, क्योंकि यह प्रकार की शर्तों पर गणना करने की अनुमति देता है। उदाहरण के लिए, यदि आपके पास है और , प्राप्त करने के लिए आपको रूपांतरण नियम लागू करना होगा टाइप करने में सक्षम होने के लिए .

एल

एलō में, निम्नलिखित ऑपरेटर

निश्चित है, अर्थात् . व्युत्पत्ति
पहले से ही λ2 में प्राप्त किया जा सकता है, हालाँकि बहुरूपी केवल तभी परिभाषित किया जा सकता है जब नियम भी मौजूद है.

कंप्यूटिंग के दृष्टिकोण से, λω बेहद मजबूत है, और इसे प्रोग्रामिंग भाषाओं के लिए आधार माना गया है।[8]


λC

निर्माणों की गणना में λP की विधेय अभिव्यंजना और λω की कम्प्यूटेशनल शक्ति दोनों हैं, इसलिए λC को λPω भी कहा जाता है,[1]: 130  इसलिए यह तार्किक पक्ष और कम्प्यूटेशनल पक्ष दोनों पर बहुत शक्तिशाली है।

अन्य प्रणालियों से संबंध

सिस्टम स्वचालित तार्किक दृष्टिकोण से λ2 के समान है। एमएल (प्रोग्रामिंग भाषा)|एमएल जैसी भाषाएं, टाइपिंग के दृष्टिकोण से, λ→ और λ2 के बीच कहीं स्थित होती हैं, क्योंकि वे प्रतिबंधित प्रकार के बहुरूपी प्रकारों को स्वीकार करते हैं, जो कि प्रीनेक्स सामान्य रूप में प्रकार हैं। हालाँकि, क्योंकि उनमें कुछ रिकर्सन ऑपरेटर होते हैं, उनकी कंप्यूटिंग शक्ति λ2 से अधिक होती है।[7]Coq प्रणाली केवल अप्राप्य के बजाय ब्रह्मांडों के रैखिक पदानुक्रम के साथ λC के विस्तार पर आधारित है , और आगमनात्मक प्रकार के निर्माण की क्षमता।

शुद्ध प्रकार की प्रणालियों को घन के सामान्यीकरण के रूप में देखा जा सकता है, जिसमें प्रकार, स्वयंसिद्ध, उत्पाद और अमूर्त नियमों का मनमाना सेट होता है। इसके विपरीत, लैम्ब्डा क्यूब के सिस्टम को दो प्रकार के शुद्ध प्रकार के सिस्टम के रूप में व्यक्त किया जा सकता है , एकमात्र स्वयंसिद्ध , और नियमों का सेट ऐसा है कि .[1]

करी-हावर्ड समरूपता के माध्यम से, लैम्ब्डा क्यूब और तार्किक प्रणालियों में सिस्टम के बीच एक-से-एक पत्राचार होता है,[1]अर्थात्:

System of the cube Logical System
λ→ (First-order) Propositional Calculus
λ2 Second-order Propositional Calculus
λω Weakly Higher Order Propositional Calculus
λω Higher Order Propositional Calculus
λP (First order) Predicate Logic
λP2 Second-order Predicate Calculus
λPω Weak Higher Order Predicate Calculus
λC Calculus of Constructions

सभी तर्क निहितार्थ हैं (अर्थात केवल संयोजक हैं और ), हालाँकि कोई अन्य संयोजकों को परिभाषित कर सकता है जैसे कि या दूसरे और उच्च क्रम के तर्कों में अव्यवहारिक तरीके से। कमजोर उच्च क्रम तर्कशास्त्र में, उच्च क्रम विधेय के लिए चर होते हैं, लेकिन उन पर कोई परिमाणीकरण नहीं किया जा सकता है।

सामान्य गुण

क्यूब के सभी सिस्टम आनंद लेते हैं

  • चर्च-रोसेर संपत्ति: यदि और तो वहाँ अस्तित्व है ऐसा है कि और ;
  • विषय में कमी: यदि और तब ;
  • प्रकारों की विशिष्टता: यदि और तब .

ये सभी सामान्य शुद्ध प्रकार की प्रणालियों पर सिद्ध किए जा सकते हैं।[9] क्यूब की प्रणाली में अच्छी तरह से टाइप किया गया कोई भी शब्द दृढ़ता से सामान्यीकरण कर रहा है,[1]हालाँकि यह गुण सभी शुद्ध प्रकार की प्रणालियों के लिए सामान्य नहीं है। क्यूब में कोई भी सिस्टम ट्यूरिंग पूर्ण नहीं है।[7]

उपप्रकार

हालाँकि, सबटाइपिंग को क्यूब में प्रदर्शित नहीं किया जाता है, भले ही सिस्टम पसंद करता हो , जिसे उच्च-क्रम सीमाबद्ध परिमाणीकरण के रूप में जाना जाता है, जो उपप्रकार और बहुरूपता को जोड़ता है, व्यावहारिक रुचि का है, और इसे आगे बंधे हुए प्रकार के ऑपरेटरों के लिए सामान्यीकृत किया जा सकता है। आगे विस्तार विशुद्ध रूप से कार्यात्मक वस्तुओं की परिभाषा की अनुमति दें; ये सिस्टम आम तौर पर लैम्ब्डा क्यूब पेपर प्रकाशित होने के बाद विकसित किए गए थे।[10] क्यूब का विचार गणितज्ञ हेन्क बेरेन्ड्रेट (1991) की देन है। शुद्ध प्रकार की प्रणालियों का ढांचा लैम्ब्डा क्यूब को इस अर्थ में सामान्यीकृत करता है कि क्यूब के सभी कोनों, साथ ही कई अन्य प्रणालियों को इस सामान्य ढांचे के उदाहरण के रूप में दर्शाया जा सकता है।[11] यह ढांचा लैम्ब्डा क्यूब से कुछ साल पहले का है। अपने 1991 के पेपर में, बेरेन्ड्रेट ने इस ढांचे में घन के कोनों को भी परिभाषित किया है।

यह भी देखें

  • अनुसंधान को निर्देशित करने की उनकी क्षमता में,[12] ओलिवियर रिडौक्स लैम्ब्डा क्यूब का कट-आउट टेम्प्लेट देता है और क्यूब का ऑक्टाहेड्रोन के रूप में दोहरा प्रतिनिधित्व भी देता है, जहां 8 शीर्षों को चेहरों द्वारा प्रतिस्थापित किया जाता है, साथ ही डोडेकाहेड्रोन के रूप में दोहरा प्रतिनिधित्व दिया जाता है, जहां 12 किनारों को बदल दिया जाता है। चेहरे के।
  • होमोटोपी प्रकार सिद्धांत

टिप्पणियाँ

  1. 1.0 1.1 1.2 1.3 1.4 1.5 Barendregt, Henk (1991). "सामान्यीकृत प्रकार की प्रणालियों का परिचय". Journal of Functional Programming. 1 (2): 125–154. doi:10.1017/s0956796800020025. hdl:2066/17240. ISSN 0956-7968. S2CID 44757552.
  2. Nederpelt, Rob; Geuvers, Herman (2014). प्रकार सिद्धांत और औपचारिक प्रमाण. Cambridge University Press. p. 69. ISBN 9781107036505.
  3. Nederpelt & Geuvers 2014, p. 85
  4. Nederpelt & Geuvers 2014, p. 100
  5. Schwichtenberg, Helmut (1975). "Definierbare Funktionen imλ-Kalkül mit Typen". Archiv für Mathematische Logik und Grundlagenforschung (in Deutsch). 17 (3–4): 113–114. doi:10.1007/bf02276799. ISSN 0933-5846. S2CID 11598130.
  6. Girard, Jean-Yves; Lafont, Yves; Taylor, Paul (1989). प्रमाण एवं प्रकार. Cambridge Tracts in Theoretical Computer Science. Vol. 7. Cambridge University Press. ISBN 9780521371810.
  7. 7.0 7.1 7.2 Ridoux, Olivier (1998). Lambda-Prolog de A à Z ... ou presque (PDF). [s.n.] OCLC 494473554.
  8. Pierce, Benjamin; Dietzen, Scott; Michaylov, Spiro (1989). उच्च-क्रम टाइप किए गए लैम्ब्डा-कैलकुली में प्रोग्रामिंग. Computer Science Department, Carnegie Mellon University. OCLC 20442222. CMU-CS-89-111 ERGO-89-075.
  9. Sørensen, Morten Heine; Urzyczyin, Pawel (2006). "Pure type systems and the λ-cube". करी-हावर्ड समरूपता पर व्याख्यान. Elsevier. pp. 343–359. doi:10.1016/s0049-237x(06)80015-7. ISBN 9780444520777.
  10. Pierce, Benjamin (2002). प्रकार और प्रोग्रामिंग भाषाएँ. MIT Press. pp. 467–490. ISBN 978-0262162098. OCLC 300712077.
  11. Pierce 2002, p. 466
  12. Ridoux 1998, p. 70

अग्रिम पठन

बाहरी संबंध