प्रकार सिद्धांत

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

इतिहास
भोले सेट सिद्धांत और औपचारिक तर्क के आधार पर एक गणितीय नींव में एक विरोधाभास से बचने के लिए प्रकार सिद्धांत बनाया गया था।रसेल का विरोधाभास, जिसे बर्ट्रेंड रसेल द्वारा खोजा गया था, अस्तित्व में था क्योंकि एक सेट को सभी संभावित सेटों का उपयोग करके परिभाषित किया जा सकता है, जिसमें स्वयं भी शामिल थे।1902 और 1908 के बीच, बर्ट्रेंड रसेल ने समस्या को ठीक करने के लिए प्रकार के विभिन्न सिद्धांतों का प्रस्ताव दिया।1908 तक रसेल ने एक प्रकार के एक प्रकार के एक स्वयमयता के साथ एक साथ पहुंचे, जिसमें दोनों ने अल्फ्रेड नॉर्थ व्हाइटहेड और बर्ट्रेंड रसेल के प्रिंसिपिया मैथमेटिका में 1910 और 1913 के बीच प्रकाशित किया।प्रत्येक ठोस गणितीय इकाई एक प्रकार के लिए।किसी दिए गए प्रकार की संस्थाओं को विशेष रूप से उस प्रकार के उपप्रकारों के रूप में बनाया गया है, इस प्रकार एक इकाई को खुद का उपयोग करके परिभाषित होने से रोकना।रसेल के प्रकार का सिद्धांत एक सेट की संभावना को खुद का सदस्य होने की संभावना से इनकार कर दिया।

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

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

वाक्यांश प्रकार सिद्धांत अब आम तौर पर लैम्ब्डा कैलकुलस के आसपास आधारित एक टाइप्ड सिस्टम को संदर्भित करता है।एक प्रभावशाली प्रणाली मार्टिन-लोफ के अंतर्ज्ञानवादी प्रकार के सिद्धांत के अनुसार है, जिसे कंस्ट्रक्टिविज्म (गणित) के लिए एक नींव के रूप में प्रस्तावित किया गया था।एक और थिएरी कोक्वांड के निर्माणों की पथरी है, जिसका उपयोग Coq, Lean (प्रूफ असिस्टेंट), और अन्य प्रूफ असिस्टेंट (कम्प्यूटरीकृत प्रूफ राइटिंग प्रोग्राम) द्वारा फाउंडेशन के रूप में किया जाता है।टाइप सिद्धांत सक्रिय अनुसंधान का एक क्षेत्र है, जैसा कि होमोटोपी प्रकार सिद्धांत द्वारा प्रदर्शित किया गया है।

परिचय
कई प्रकार के सिद्धांत हैं, जिससे एक व्यापक वर्गीकरण का उत्पादन करना मुश्किल हो जाता है;यह लेख एक संपूर्ण वर्गीकरण नहीं है।इस प्रकार, प्रकार के सिद्धांत के साथ अपरिचित लोगों के लिए एक परिचय है, कुछ प्रमुख दृष्टिकोणों को कवर करता है।

नियम और प्रकार
प्रकार के सिद्धांत में, प्रत्येक शब्द का एक प्रकार होता है।एक शब्द और इसके प्रकार को अक्सर शब्द के रूप में एक साथ लिखा जाता है: प्रकार।एक प्रकार के सिद्धांत में शामिल करने के लिए एक सामान्य प्रकार प्राकृतिक संख्या है, जिसे अक्सर लिखा जाता है$$\mathbb N$$या नट।एक और बूलियन तर्क वैल्यू है।तो, उनके प्रकारों के साथ कुछ बहुत ही सरल शब्द हैं:


 * 1: नट
 * 42: नट
 * सच: बूल

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


 * 0 0 जोड़ें: नट
 * 2 3 जोड़ें: नट
 * 1 जोड़ें (1 जोड़ें (1 0 जोड़ें)): NAT

अंतिम कार्यकाल में, संचालन के क्रम को इंगित करने के लिए कोष्ठक को जोड़ा गया था।तकनीकी रूप से, अधिकांश प्रकार के सिद्धांतों को कोष्ठक को हर ऑपरेशन के लिए मौजूद होने की आवश्यकता होती है, लेकिन, व्यवहार में, वे नहीं लिखे जाते हैं और लेखक मानते हैं कि पाठक यह जानने के लिए पूर्वता और सहयोगी का उपयोग कर सकते हैं कि वे कहां हैं।इसी तरह की आसानी के लिए, यह लिखना एक सामान्य संकेतन है$$x + y$$जोड़ने के बजाय $$x$$ $$y$$।तो, उपरोक्त शब्दों को फिर से लिखा जा सकता है:


 * 0 + 0: नट
 * 2 + 3: नट
 * 1 + (1 + (1 + 0)): NAT

शर्तों में चर भी हो सकते हैं।चर में हमेशा एक प्रकार होता है।तो, x और y मान लेते हैं कि NAT प्रकार के चर हैं, निम्नलिखित भी वैध शब्द हैं:


 * x: नट
 * x + 2: NAT
 * x + (x + y): NAT

NAT और BOOL से अधिक प्रकार हैं।हमने पहले से ही ऐड शब्द देखा है, जो एक एनएटी नहीं है, लेकिन एक फ़ंक्शन है, जब दो नैट एस पर लागू होता है, एक एनएटी की गणना करता है।ADD का प्रकार बाद में कवर किया जाएगा।सबसे पहले, हमें गणनाओं का वर्णन करने की आवश्यकता है।

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


 * * + 4: नट
 * 3 + 2: नट
 * 0 + 5: नट

लेकिन वे सभी शब्द 5: नट की गणना करते हैं।प्रकार के सिद्धांत में, हम शब्दों में कमी का उपयोग करते हैं और गणना को संदर्भित करने के लिए कम करते हैं।तो, हम कहते हैं कि 0 + 5: NAT 5: NAT तक कम हो जाता है।इसे 0 + 5: NAT लिखा जा सकता है $$\twoheadrightarrow$$ 5: नट।गणना यांत्रिक शब्द के वाक्यविन्यास को फिर से लिखकर पूरा किया जाता है।

जिन शब्दों में चर होते हैं, उन्हें भी कम किया जा सकता है।तो शब्द X + (1 + 4): NAT X + 5: NAT तक कम हो जाता है।(हम एक शब्द के भीतर किसी भी उप-अवधि को कम कर सकते हैं, चर्च-रोसर प्रमेय के लिए धन्यवाद।)

किसी भी चर के बिना एक शब्द जिसे आगे कम नहीं किया जा सकता है, एक विहित शब्द है।उपरोक्त सभी शब्द 5 तक कम हो जाते हैं: NAT, जो एक विहित शब्द है।प्राकृतिक संख्याओं के विहित शब्द हैं:


 * 0: नट
 * 1: नट
 * 2: नट
 * वगैरह।

जाहिर है, एक ही शब्द की गणना करने वाले शब्द समान हैं।तो, X: NAT, शर्तों को X + (1 + 4): NAT और X + (4 + 1): NAT समान हैं क्योंकि वे दोनों X + 5: NAT को कम करते हैं।जब दो शब्द समान होते हैं, तो उन्हें एक दूसरे के लिए प्रतिस्थापित किया जा सकता है।समानता प्रकार के सिद्धांत में एक जटिल विषय है और कई प्रकार के समानता हैं।इस तरह की समानता, जहां दो शब्द एक ही शब्द की गणना करते हैं, को निर्णय समानता कहा जाता है।

कार्य
प्रकार के सिद्धांत में, कार्य शब्द हैं।फ़ंक्शंस या तो लैम्ब्डा की शर्तें हो सकती हैं या नियम द्वारा परिभाषित की जा सकती हैं।

लैम्ब्डा शर्तें
एक लैम्ब्डा शब्द जैसा दिखता है (λ variablename: Type1। शब्द) और टाइप टाइप 1 है $$\to$$ टाइप 2।टाइप टाइप 1 $$\to$$ टाइप 2 इंगित करता है कि लैम्ब्डा शब्द एक फ़ंक्शन है जो टाइप टाइप 1 का एक पैरामीटर लेता है और टाइप टाइप 2 के शब्द की गणना करता है।लैम्ब्डा शब्द के अंदर का शब्द टाइप 2 का एक मान होना चाहिए, यह मानते हुए कि वेरिएबल में टाइप 1 है।

एक लैम्ब्डा शब्द का एक उदाहरण यह कार्य है जो अपने तर्क को दोगुना करता है:


 * (λ x: nat। (x x जोड़ें)): nat $$\to$$ नेट

चर नाम x है और चर में NAT प्रकार है।शब्द (X X जोड़ें) में NAT है, X: NAT मानते हुए।इस प्रकार, लैम्ब्डा शब्द का प्रकार NAT है $$\to$$ नट, जिसका अर्थ है कि अगर इसे एक तर्क के रूप में एक NAT दिया जाता है, तो यह एक NAT की गणना करेगा।कमी (a.k.a गणना) को लैम्ब्डा शर्तों के लिए परिभाषित किया गया है।जब फ़ंक्शन लागू किया जाता है (a.k.a. कहा जाता है), तो तर्क पैरामीटर के लिए प्रतिस्थापन (बीजगणित) होता है।

इससे पहले, हमने देखा कि फ़ंक्शन एप्लिकेशन को फ़ंक्शन टर्म के बाद पैरामीटर लगाकर लिखा गया है।इसलिए, यदि हम उपरोक्त फ़ंक्शन को NAT के पैरामीटर 5 के साथ कॉल करना चाहते हैं, तो हम लिखते हैं:


 * (λ x: nat। (x x जोड़ें)) 5: nat

लैम्ब्डा शब्द टाइप नट था $$\to$$ नट, जिसका मतलब था कि एक तर्क को एक तर्क के रूप में दिया गया, यह प्रकार NAT का एक शब्द का उत्पादन करेगा।चूंकि हमने इसे तर्क 5 दिया है, उपरोक्त शब्द में NAT है।कमी शब्द में पैरामीटर x के लिए तर्क 5 को प्रतिस्थापित करके काम करता है (एक्स एक्स जोड़ें), इसलिए शब्द की गणना:


 * (5 5 जोड़ें): नेट

जो स्पष्ट रूप से गणना करता है


 * 10: नट

एक लैम्ब्डा शब्द को अक्सर एक अनाम कार्य कहा जाता है क्योंकि इसका कोई नाम नहीं है।अक्सर, चीजों को पढ़ने में आसान बनाने के लिए, एक नाम एक लैम्ब्डा शब्द को दिया जाता है।यह केवल एक संकेतन है और इसका कोई गणितीय अर्थ नहीं है।कुछ लेखक इसे उल्लेखनीय समानता कहते हैं।नोटेशन का उपयोग करके ऊपर के फ़ंक्शन को एक नाम दिया जा सकता है:


 * डबल: नट $$\to$$ nat :: = (λ x: nat। (x x जोड़ें))

यह ऊपर जैसा ही कार्य है, इसे लिखने का एक अलग तरीका है।तो शब्द


 * डबल 5: नट

अभी भी गणना करता है


 * 10: नट

आश्रित टाइपिंग
आश्रित टाइपिंग तब होती है जब किसी फ़ंक्शन द्वारा लौटा दिया जाता है, वह उसके तर्क के मूल्य पर निर्भर करता है।उदाहरण के लिए, जब एक प्रकार के सिद्धांत में एक नियम होता है जो प्रकार के बूल को परिभाषित करता है, तो यह फ़ंक्शन को भी परिभाषित करता है।फ़ंक्शन यदि 3 तर्क लेते हैं और यदि सही b c B की गणना करता है और यदि FALSE B C C की गणना करता है।लेकिन अगर बी सी का प्रकार है तो क्या है?

यदि B और C का एक ही प्रकार है, तो यह स्पष्ट है: यदि B C का B और C के समान ही है।इस प्रकार, एक: बूल मानते हुए,


 * अगर एक 2 4: नट
 * अगर एक झूठा सच: बूल

लेकिन अगर बी और सी के अलग -अलग प्रकार होते हैं, तो बी सी के मूल्य पर निर्भर करता है।हम प्रतीक & pi का उपयोग करते हैं;एक फ़ंक्शन को इंगित करने के लिए जो एक तर्क लेता है और एक प्रकार देता है।यह मानते हुए कि हमारे पास कुछ प्रकार हैं और सी और ए: बूल, बी: बी और सी: सी, फिर


 * अगर a b c: (& pi; a: बूल। b। $$\to$$ C $$\to$$ अगर ए बी सी)

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

क्योंकि प्रकार में गणना हो सकती है, निर्भर टाइपिंग आश्चर्यजनक रूप से शक्तिशाली है।जब गणितज्ञों का कहना है कि एक संख्या मौजूद है $$x$$ ऐसा है कि $$x$$ प्राइम है या एक नंबर मौजूद है $$x$$ ऐसी संपत्ति $$P(x)$$ होल्ड्स, इसे एक आश्रित प्रकार के रूप में व्यक्त किया जा सकता है।अर्थात्, संपत्ति विशिष्ट के लिए सिद्ध होती है$$x$$और यह परिणाम के प्रकार में दिखाई देता है।

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

ब्रह्मांड
& Pi; -टर्म्स एक प्रकार लौटाते हैं।तो उनके रिटर्न वैल्यू का प्रकार क्या है?खैर, एक प्रकार होना चाहिए जिसमें प्रकार हों।एक प्रकार जिसमें अन्य प्रकार होते हैं, को एक ब्रह्मांड (गणित) कहा जाता है।यह अक्सर प्रतीक के साथ लिखा जाता है $$U$$।कभी -कभी ब्रह्मांड का एक पदानुक्रम होता है, साथ$$U_0$$ : $$U_1$$,$$U_1$$ : $$U_2$$, वगैरह..

यदि एक ब्रह्मांड में स्वयं होता है, तो यह गिरार्ड के विरोधाभास जैसे विरोधाभासों को जन्म दे सकता है। गिरार्ड का विरोधाभास।

उदाहरण के लिए:

"The openendedness of Martin-Löf type theory is particularly manifest in the introduction of so-called universes. Type universes encapsulate the informal notion of reflection whose role may be explained as follows. During the course of developing a particular formalization of type theory, the type theorist may look back over the rules for types, say C, which have been introduced hitherto and perform the step of recognizing that they are valid according to Martin-Löf’s informal semantics of meaning explanation. This act of ‘introspection’ is an attempt to become aware of the conceptions which have governed our constructions in the past. It gives rise to a “reflection principle which roughly speaking says whatever we are used to doing with types can be done inside a universe” (Martin-Löf 1975, 83). On the formal level, this leads to an extension of the existing formalization of type theory in that the type forming capacities of C become enshrined in a type universe UC mirroring C."

नियम नियमों और शर्तों द्वारा सामान्य
प्रकार के सिद्धांतों को उनके नियम के नियम द्वारा परिभाषित किया गया है।एक कार्यात्मक कोर के लिए नियम हैं, जो ऊपर वर्णित हैं, और नियम जो प्रकार और शब्द बनाते हैं।नीचे सामान्य प्रकारों और उनके संबंधित शब्दों की एक गैर-थकाऊ सूची है।

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

खाली प्रकार
खाली प्रकार की कोई शर्तें नहीं हैं।प्रकार आमतौर पर लिखा जाता है$$\bot$$या$$\mathbb 0$$।

इसका उपयोग यह दिखाने के लिए किया जाता है कि कुछ अस्वीकार्य है।यदि एक प्रकार ए के लिए, आप टाइप ए का एक फ़ंक्शन बना सकते हैं $$\to \bot$$, आप जानते हैं कि ए की कोई शर्त नहीं है।टाइप ए के लिए एक उदाहरण हो सकता है एक संख्या मौजूद है $$x$$ ऐसा दोनों $$x$$ यहां तक कि और है $$x$$ अजीब है ।(उदाहरण A का निर्माण कैसे किया जाता है, इसके लिए नीचे उत्पाद प्रकार देखें।) जब किसी प्रकार की कोई शर्तें नहीं हैं, तो हम कहते हैं कि यह निर्जन है।

इकाई प्रकार
यूनिट प्रकार में बिल्कुल 1 विहित शब्द है।प्रकार लिखा है$$\top$$या$$\mathbb 1$$और एकल विहित शब्द लिखा गया है *।

यूनिट प्रकार का उपयोग यह दिखाने के लिए किया जाता है कि कुछ मौजूद है या कम्प्यूटेशनल है।यदि एक प्रकार ए के लिए, आप प्रकार का एक फ़ंक्शन बना सकते हैं$$\top \to$$ ए, आप जानते हैं कि ए में एक या एक से अधिक शब्द हैं।जब किसी प्रकार का कम से कम 1 शब्द होता है, तो हम कहते हैं कि यह बसा हुआ है।

बूलियन प्रकार
बूलियन प्रकार में ठीक 2 विहित शब्द हैं।प्रकार आमतौर पर बूल लिखा जाता है या$$\mathbb B$$या$$\mathbb 2$$।विहित शब्द आमतौर पर सही और झूठे होते हैं।

बूलियन प्रकार को एक एलिमिनेटर फ़ंक्शन के साथ परिभाषित किया गया है यदि ऐसा है:


 * अगर सच बी सी $$\twoheadrightarrow$$ बी
 * अगर झूठी बी सी $$\twoheadrightarrow$$ सी

उत्पाद प्रकार
उत्पाद प्रकार में ऐसे शब्द होते हैं जिन्हें जोड़ी का आदेश दिया जाता है।प्रकार ए और बी के लिए, उत्पाद प्रकार लिखा जाता है $$\times$$ बी ।कंस्ट्रक्टर फ़ंक्शन जोड़ी द्वारा कैनोनिकल शब्द बनाए जाते हैं।शब्द एक बी हैं, जहां ए टाइप ए का एक शब्द है और बी टाइप बी का एक शब्द है।उत्पाद प्रकार को पहले और दूसरे कार्य के साथ परिभाषित किया गया है जैसे:


 * पहला (जोड़ी ए बी) $$\twoheadrightarrow$$ ए
 * दूसरा (जोड़ी ए बी) $$\twoheadrightarrow$$ बी

ऑर्डर किए गए जोड़े के अलावा, इस प्रकार का उपयोग तार्किक संयोजन के लिए किया जाता है। तार्किक ऑपरेटर और, क्योंकि यह ए और ए बी रखता है।इसका उपयोग चौराहे के लिए भी किया जाता है, क्योंकि यह दोनों प्रकारों में से एक है।

यदि एक प्रकार के सिद्धांत में निर्भर टाइपिंग है, तो इसमें निर्भर प्रकार है।एक आश्रित जोड़ी में, दूसरा प्रकार पहले शब्द के मान पर निर्भर करता है।इस प्रकार, प्रकार लिखा है$$\Sigma$$ A: a।B (a) जहाँ b में टाइप A है $$\to$$ यू।यह उपयोगी है जब संपत्ति बी (ए) के साथ ए की अस्तित्वगत मात्रा का ठहराव दिखाते हैं।

योग प्रकार
योग प्रकार एक टैग किया गया संघ है।अर्थात्, A और B प्रकारों के लिए, टाइप A + B या तो टाइप A या टाइप B का शब्द है और यह जानता है कि यह कौन सा है।प्रकार कंस्ट्रक्टर्स इंजेक्शनलफ्ट और इंजेक्शनराइट के साथ आता है।कॉल इंजेक्शनल ए: ए: ए और टाइप ए + बी का एक विहित शब्द लौटाता है।इसी तरह, इंजेक्शनराइट B B: B: B और टाइप A + B का एक विहित शब्द लौटाता है।टाइप को एक एलिमिनेटर फ़ंक्शन मैच के साथ परिभाषित किया गया है जैसे कि एक प्रकार C और फ़ंक्शंस F: A के लिए $$\to$$ सी और जी: बी $$\to$$ सी :


 * मैच (इंजेक्शनलफ्ट ए) सी एफ जी $$\twoheadrightarrow$$ (च ए)
 * मैच (इंजेक्शनराइट बी) सी एफ जी $$\twoheadrightarrow$$ (जी बी)

योग प्रकार का उपयोग तार्किक या संघ (सेट सिद्धांत) के लिए किया जाता है।

प्राकृतिक संख्या
प्राकृतिक संख्या आमतौर पर मीनो अंकगणित की शैली में लागू की जाती है।एक विहित शब्द है, 0: नट फॉर शून्य।शून्य से बड़ा कैनोनिकल मान कंस्ट्रक्टर फ़ंक्शन का उपयोग करें: NAT $$\to$$ नट।इस प्रकार, s 0 एक है।S (S 0) दो है।S (S 0))) तीन है।आदि दशमलव संख्या केवल उन शर्तों के बराबर है।


 * 1: nat :: = s 0
 * 2: nat :: = s (s 0)
 * 3: nat :: = s (s (s 0))

प्राकृतिक संख्याओं को एक एलिमिनेटर फ़ंक्शन R के साथ परिभाषित किया गया है जो सभी NATs के लिए एक फ़ंक्शन को परिभाषित करने के लिए पुनरावृत्ति का उपयोग करता है।यह एक फ़ंक्शन P: NAT लेता है $$\to$$ यू जो परिभाषित करने के लिए फ़ंक्शन का प्रकार है।यह एक शब्द PZ: P 0 भी लेता है जो शून्य पर मान है और एक फ़ंक्शन PS: P n $$\to$$ P (s n) जो कहता है कि N + 1 पर मान को मान में मान को कैसे बदलना है।इस प्रकार, इसके गणना नियम हैं:


 * R p pz ps 0 $$\twoheadrightarrow$$ पेज
 * R p pz ps (s $$n$$) $$\twoheadrightarrow$$ पीएस (आर पी पीजेड पीएस $$n$$)

फ़ंक्शन ऐड, जिसका उपयोग पहले किया गया था, को आर का उपयोग करके परिभाषित किया जा सकता है।


 * जोड़ें: नट$$\to$$नेट$$\to$$रात :: = आर (λ एन: रात। रात$$\to$$nat) (λ n: nat। n) (λ g: nat$$\to$$नट।(λ एम: नट। एस (जी एम))

पहचान प्रकार
पहचान प्रकार प्रकार के सिद्धांत में समानता की तीसरी अवधारणा है।पहला उल्लेखनीय समानता है, जो 2: nat :: = (s 0)) जैसी परिभाषाओं के लिए है, जिसका कोई गणितीय अर्थ नहीं है, लेकिन पाठकों के लिए उपयोगी है।दूसरा निर्णय समानता है, जो तब होता है जब दो शब्द एक ही शब्द की गणना करते हैं, जैसे कि x + (1 + 4) और x + (4 + 1), जो दोनों x + 5 से गणना करते हैं।लेकिन टाइप थ्योरी को समानता के एक और रूप की आवश्यकता होती है, जिसे पहचान प्रकार या प्रस्ताव समानता के रूप में जाना जाता है।

इसका कारण पहचान प्रकार की आवश्यकता है क्योंकि कुछ समान शब्द एक ही शब्द की गणना नहीं करते हैं।X: NAT, शर्तों को X + 1 और 1 + x एक ही शब्द की गणना नहीं करते हैं।याद रखें कि + फ़ंक्शन ऐड के लिए एक संकेतन है, जो फ़ंक्शन r के लिए एक संकेतन है।हम आर पर तब तक गणना नहीं कर सकते हैं जब तक कि एक्स के लिए मूल्य निर्दिष्ट नहीं किया जाता है और, जब तक कि यह निर्दिष्ट नहीं किया जाता है, आर के लिए दो अलग -अलग कॉल एक ही शब्द की गणना नहीं करेंगे।

एक पहचान प्रकार के लिए एक ही प्रकार के दो शब्दों को और बी की आवश्यकता होती है और इसे ए = बी लिखा जाता है।तो, x + 1 और 1 + x के लिए, प्रकार x + 1 = 1 + x होगा।कंस्ट्रक्टर रिफ्लेक्सिटी के साथ कैनोनिकल शब्द बनाए जाते हैं।कॉल रिफ्लेक्सिटी ए एक शब्द ए लेता है और टाइप ए = ए का एक विहित शब्द लौटाता है।

पहचान प्रकार के साथ गणना एलिमिनेटर फ़ंक्शन j के साथ की जाती है।फ़ंक्शन j एक शब्द को A, B, और टाइप A = B के एक शब्द पर फिर से लिखा जाना देता है ताकि B को A द्वारा प्रतिस्थापित किया जाए।जबकि J एक दिशात्मक है, केवल B के साथ B को स्थानापन्न करने में सक्षम है, यह साबित किया जा सकता है कि पहचान प्रकार रिफ्लेक्सिटिविटी प्रॉपर्टी, सममित संपत्ति और सकर्मक संपत्ति है।

यदि विहित शब्द हमेशा A = A और X+1 होते हैं, तो 1+x के समान शब्द की गणना नहीं करते हैं, हम x+1 = 1+x का एक शब्द कैसे बनाते हैं?हम आर फ़ंक्शन का उपयोग करते हैं।(ऊपर प्राकृतिक संख्याएं देखें।) R फ़ंक्शन का तर्क P को परिभाषित किया गया है (λ x: nat। X+1 = 1+x)।अन्य तर्क एक इंडक्शन प्रूफ के कुछ हिस्सों की तरह काम करते हैं, जहां PZ: P 0 बेस केस 0+1 = 1+0 और PS: P n बन जाता है $$\to$$ P (s n) आगमनात्मक मामला बन जाता है।अनिवार्य रूप से, यह कहता है कि जब x+1 = 1+x को X को एक विहित मूल्य से बदल दिया जाता है, तो अभिव्यक्ति रिफ्लेक्सिटी (x+1) के समान होगी।फ़ंक्शन R के इस एप्लिकेशन में टाइप X: NAT है $$\to$$ x+1 = 1+x।हम इसका उपयोग कर सकते हैं और फ़ंक्शन j को किसी भी शब्द में x+1 के लिए 1+x प्रतिस्थापित करने के लिए।इस तरह, पहचान प्रकार समानता को पकड़ने में सक्षम है जो निर्णय समानता के साथ संभव नहीं है।

स्पष्ट होने के लिए, टाइप 0 = 1 बनाना संभव है, लेकिन उस प्रकार की शर्तों को बनाने का कोई तरीका नहीं होगा।टाइप 0 = 1 के शब्द के बिना, किसी अन्य शब्द में 1 के लिए 0 के विकल्प के लिए फ़ंक्शन j का उपयोग करना संभव नहीं होगा।

प्रकार के सिद्धांत में समानता की जटिलताएं इसे एक सक्रिय अनुसंधान क्षेत्र बनाती हैं, होमोटॉपी प्रकार सिद्धांत देखें।

आगमनात्मक प्रकार
आगमनात्मक प्रकार बड़े प्रकार के प्रकार बनाने का एक तरीका है।वास्तव में, ऊपर वर्णित सभी प्रकारों को आगमनात्मक प्रकारों के नियमों का उपयोग करके परिभाषित किया जा सकता है।एक बार प्रकार के प्रकार के कंस्ट्रक्टर निर्दिष्ट हो जाने के बाद, एलिमिनेटर फ़ंक्शंस और कम्प्यूटेशन संरचनात्मक पुनरावर्ती द्वारा निर्धारित किया जाता है।

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

(नोट: टाइप थ्योरी में आमतौर पर समावेश शामिल नहीं होता है। वे एक अनंत डेटा प्रकार का प्रतिनिधित्व करते हैं और अधिकांश प्रकार के सिद्धांत खुद को उन कार्यों तक सीमित करते हैं जो रुकने के लिए साबित हो सकते हैं।)

सेट सिद्धांत से अंतर
गणित के लिए पारंपरिक फाउंडेशन को एक तर्क के साथ जोड़ा गया सिद्धांत निर्धारित किया गया है।सबसे आम एक उद्धृत Zermelo -Fraenkel सेट सिद्धांत है, जिसे ZF के रूप में जाना जाता है या, पसंद के स्वयंसिद्ध, ZFC के साथ।टाइप सिद्धांत इस नींव से कई तरीकों से भिन्न होते हैं।


 * सेट सिद्धांत में अनुमान और स्वयंसिद्ध दोनों ही नियम हैं, जबकि प्रकार के सिद्धांतों में केवल नियम हैं।सेट सिद्धांत तर्क के शीर्ष पर बनाए गए हैं।इस प्रकार, ZFC को प्रथम-क्रम लॉजिक और Zermelo-fraenkel_set_stheory#Axioms के दोनों नियमों द्वारा परिभाषित किया गया है।(एक स्वयंसिद्ध एक तार्किक व्युत्पत्ति के बिना सच के रूप में स्वीकार किया जाता है।) टाइप सिद्धांत, सामान्य रूप से, स्वयंसिद्ध नहीं होते हैं और उनके नियमों के नियमों द्वारा परिभाषित होते हैं।
 * सेट थ्योरी और लॉजिक में बाहर किए गए मध्य का नियम है।अर्थात्, हर प्रमेय सच या गलत है।जब एक प्रकार का सिद्धांत और या या के रूप में अवधारणाओं को परिभाषित करता है, तो यह अंतर्ज्ञानवादी तर्क की ओर जाता है, जिसमें बाहर किए गए मध्य का कानून नहीं है।हालांकि, कानून कुछ प्रकार के लिए सिद्ध किया जा सकता है।
 * सेट सिद्धांत में, एक तत्व एक सेट तक सीमित नहीं है।तत्व अन्य सेटों के साथ सबसेट और यूनियनों में दिखाई दे सकता है।प्रकार के सिद्धांत में, शब्द (आम तौर पर) केवल एक प्रकार से संबंधित हैं।जहां एक सबसेट का उपयोग किया जाएगा, टाइप थ्योरी एक विधेय (गणितीय तर्क) का उपयोग कर सकता है या एक निर्भर-टाइप उत्पाद प्रकार का उपयोग कर सकता है, जहां प्रत्येक तत्व $$x$$ एक सबूत के साथ जोड़ा जाता है कि सबसेट की संपत्ति के लिए है $$x$$।जहां एक संघ का उपयोग किया जाएगा, टाइप सिद्धांत योग प्रकार का उपयोग करता है, जिसमें नए विहित शब्द शामिल हैं।
 * टाइप थ्योरी में गणना की एक अंतर्निहित धारणा है।इस प्रकार, 1+1 और 2 प्रकार के सिद्धांत में अलग -अलग शब्द हैं, लेकिन वे एक ही मूल्य की गणना करते हैं।इसके अलावा, कार्यों को कम्प्यूटेशनल रूप से लैम्ब्डा शर्तों के रूप में परिभाषित किया गया है।सेट सिद्धांत में, 1+1 = 2 का अर्थ है कि 1+1 मान 2 को संदर्भित करने का सिर्फ एक और तरीका है।टाइप थ्योरी की गणना में समानता की एक जटिल अवधारणा की आवश्यकता होती है।
 * सेट सिद्धांत आमतौर पर सेट के रूप में संख्याओं को एन्कोड करता है।।कंस्ट्रक्टर्स 0 और एस द्वारा बनाई गई आगमनात्मक प्रकार से बारीकी से मीनो स्वयंसिद्धों से मिलते -जुलते हैं | पीनो के स्वयंसिद्ध।
 * सेट थ्योरी में सेट-बिल्डर नोटेशन है।यह कोई भी सेट बना सकता है जिसे परिभाषित किया जा सकता है।यह इसे बेशुमार सेट बनाने की अनुमति देता है।प्रकार के सिद्धांत वाक्यविन्यास हैं, जो उन्हें एक अनगढ़ अनंत शब्दों में सीमित करता है।इसके अतिरिक्त, अधिकांश प्रकार के सिद्धांतों को हमेशा रुकने और खुद को पुनरावर्ती भाषा के शब्दों में सीमित करने के लिए गणना की आवश्यकता होती है।नतीजतन, अधिकांश प्रकार के सिद्धांत वास्तविक संख्याओं का उपयोग नहीं करते हैं, लेकिन कम्प्यूटेबल नंबर।
 * सेट सिद्धांत में, पसंद का स्वयंसिद्ध एक स्वयंसिद्ध है और विवादास्पद है, खासकर जब बेशुमार सेट पर लागू होता है।प्रकार के सिद्धांत में, समतुल्य कथन एक प्रमेय (प्रकार) है और साबित करने योग्य है (एक शब्द द्वारा बसा हुआ)।
 * प्रकार के सिद्धांत में, प्रमाण गणितीय वस्तुएं हैं।टाइप X+1 = 1+x का उपयोग तब तक नहीं किया जा सकता जब तक कि प्रकार का शब्द न हो।यह शब्द एक प्रमाण का प्रतिनिधित्व करता है कि x+1 = 1+x।इस प्रकार, टाइप थ्योरी गणितीय वस्तुओं के रूप में अध्ययन किए जाने वाले प्रमाणों को खोलता है।

टाइप थ्योरी के समर्थक भी BHK व्याख्या के माध्यम से रचनात्मक गणित के लिए अपने संबंध को इंगित करेंगे, इसके करी -आओ -आइसोमोर्फिज्म द्वारा तर्क से जुड़े, और श्रेणी सिद्धांत से इसके कनेक्शन।

तकनीकी विवरण
एक प्रकार का सिद्धांत एक गणितीय तर्क है।यह अनुमान के नियम का एक संग्रह है जो निर्णय (गणितीय तर्क) में परिणाम करता है।अधिकांश लॉजिक्स में निर्णय शब्द हैं $$x$$ क्या सच है।या शब्द $$x$$ एक अच्छी तरह से गठित सूत्र है। ।एक प्रकार के सिद्धांत में अतिरिक्त निर्णय होते हैं जो प्रकारों और संबंधित शब्दों को प्रकारों तक परिभाषित करते हैं।

शर्तें
एक शब्द (तर्क) को पुनरावर्ती रूप से एक निरंतर प्रतीक, चर या एक फ़ंक्शन एप्लिकेशन के रूप में परिभाषित किया जाता है, जहां एक शब्द दूसरे शब्द पर लागू होता है।कुछ निरंतर प्रतीक प्राकृतिक संख्याओं में से 0 होंगे, बूलियन का सच, और एस और इफ जैसे कार्य।इस प्रकार कुछ शब्द 0, (s 0), (s x)) हैं, और यदि सत्य 0 (s 0) हैं।

निर्णय
अधिकांश प्रकार के सिद्धांतों में 4 निर्णय होते हैं:


 * $$T$$ एक प्रकार है।
 * $$t$$ प्रकार का एक शब्द है $$T$$।
 * प्रकार $$T_1$$ प्रकार के बराबर है $$T_2$$।
 * शर्तें $$t_1$$ और $$t_2$$ दोनों प्रकार के हैं $$T$$ और समान हैं।

निर्णय एक धारणा के तहत किए जा सकते हैं।इस प्रकार, हम कह सकते हैं, मानते हुए $$x$$ 'बूल' प्रकार का एक शब्द है और $$y$$ प्रकार का एक शब्द है, 'नट', (यदि x y y) 'NAT' प्रकार का एक शब्द है।मान्यताओं के लिए गणितीय संकेतन शब्द की एक अल्पविराम-अलग सूची है: टाइप करें जो टर्नस्टाइल (प्रतीक) से पहले है '$$\vdash$$'।इस प्रकार, उदाहरण कथन औपचारिक रूप से लिखा गया है:


 * x: बूल, y: nat $$\vdash$$ (यदि x y y): nat

यदि कोई धारणा नहीं है, तो टर्नस्टाइल के बाईं ओर कुछ भी नहीं होगा:


 * $$\vdash$$ S: NAT $$\to$$ नेट

मान्यताओं की सूची को संदर्भ कहा जाता है।प्रतीक को देखना बहुत आम है '$$\Gamma$$'कुछ या सभी मान्यताओं का प्रतिनिधित्व करने के लिए उपयोग किया जाता है।इस प्रकार, 4 अलग -अलग निर्णयों के लिए औपचारिक संकेतन आमतौर पर है:

(नोट: शब्दों की समानता का निर्णय वह है जहां वाक्यांश निर्णय समानता से आता है।)

निर्णय यह लागू करते हैं कि हर शब्द का एक प्रकार होता है।प्रकार प्रतिबंधित करेगा कि कौन से नियम एक शब्द पर लागू किए जा सकते हैं।

नियम
एक प्रकार के सिद्धांत के नियम का कहना है कि अन्य निर्णयों के अस्तित्व के आधार पर क्या निर्णय लिया जा सकता है।नियमों को एक क्षैतिज रेखा का उपयोग करके व्यक्त किया जाता है, लाइन के ऊपर आवश्यक इनपुट निर्णय और लाइन के नीचे परिणामी निर्णय के साथ।लैम्ब्डा शब्द बनाने का नियम है: $$ \begin{array}{c} \Gamma, a:A \vdash b : B \\ \hline \Gamma \vdash ( \lambda a:A . b ) : A \to B \\ \end{array} $$ लैम्ब्डा शब्द बनाने के लिए आवश्यक निर्णय लाइन से ऊपर जाते हैं।इस मामले में, केवल एक निर्णय की आवश्यकता है।यह है कि कुछ प्रकार बी का कुछ शब्द बी है, यह मानते हुए कि कुछ प्रकार ए और कुछ अन्य मान्यताओं का कुछ शब्द है$$\Gamma$$।(टिप्पणी:$$\Gamma$$ए, ए, बी, और बी नियम में सभी मेटावेरियस हैं।) परिणामस्वरूप निर्णय लाइन से नीचे चला जाता है।इस नियम के परिणामस्वरूप निर्णय में कहा गया है कि नए लैम्ब्डा शब्द में टाइप ए है $$\to$$ B अन्य मान्यताओं के तहत $$\Gamma$$।

नियम वाक्यात्मक हैं और पुनर्लेखन द्वारा काम करते हैं।इस प्रकार, metavariables की तरह$$\Gamma$$, ए, ए, आदि वास्तव में उन जटिल शब्दों से युक्त हो सकते हैं जिनमें कई फ़ंक्शन एप्लिकेशन होते हैं, न कि केवल एकल प्रतीकों को।

प्रकार के सिद्धांत में एक विशेष निर्णय उत्पन्न करने के लिए, इसे उत्पन्न करने के लिए एक नियम होना चाहिए।फिर, उस नियम के सभी आवश्यक इनपुट उत्पन्न करने के लिए नियम होने चाहिए।और फिर उन नियमों के लिए सभी इनपुट के लिए नियम।लागू नियम एक प्रूफ ट्री बनाते हैं।यह आमतौर पर gentzen- शैली तैयार की जाती है, जहां लक्ष्य निर्णय (रूट) सबसे नीचे है और नियमों को शीर्ष पर किसी भी इनपुट (पत्तियों) की आवश्यकता नहीं है (प्राकृतिक कटौती#proops_and_type_theory) देखें।एक नियम का एक उदाहरण जिसमें किसी भी इनपुट की आवश्यकता नहीं होती है, वह है जो बताता है कि NAT का एक शब्द 0 है:

$$ \begin{array}{c} \hline \vdash 0 : nat \\ \end{array} $$ एक प्रकार के सिद्धांत में आमतौर पर कई नियम होते हैं, जिनमें शामिल हैं:


 * एक संदर्भ बनाएं
 * संदर्भ में एक धारणा जोड़ें (कमजोर)
 * संरचनात्मक नियम
 * एक चर बनाने के लिए एक धारणा का उपयोग करें
 * निर्णय समानता के लिए रिफ्लेक्सिटी, समरूपता और संक्रमण को परिभाषित करें
 * लैम्ब्डा शर्तों के आवेदन के लिए प्रतिस्थापन को परिभाषित करें
 * समानता, प्रतिस्थापन, आदि की सभी बातचीत
 * ब्रह्मांडों को परिभाषित करें

इसके अलावा, नियम के प्रकार के लिए, 4 अलग -अलग प्रकार के नियम हैं


 * प्रकार के गठन नियम कहते हैं कि प्रकार कैसे बनाएं
 * टर्म परिचय नियम जोड़ी और एस की तरह विहित शब्दों और कंस्ट्रक्टर कार्यों को परिभाषित करते हैं।
 * शब्द उन्मूलन नियम पहले, दूसरे और आर जैसे अन्य कार्यों को परिभाषित करते हैं।
 * कम्प्यूटेशन नियम निर्दिष्ट करें कि प्रकार-विशिष्ट कार्यों के साथ गणना कैसे की जाती है।

नियमों के उदाहरण:


 * नियम मार्टिन-लफ़ के अंतर्ज्ञानवादी प्रकार सिद्धांत
 * परिशिष्ट A.2 of homotopy प्रकार सिद्धांत पुस्तक

टाइप सिद्धांतों के गुण
शब्द आमतौर पर एक प्रकार के होते हैं।हालांकि, ऐसे सिद्धांत हैं जो उपप्रकार को परिभाषित करते हैं।

गणना नियमों के बार -बार आवेदन द्वारा होती है।कई प्रकार के सिद्धांत दृढ़ता से सामान्य हो रहे हैं, जिसका अर्थ है कि नियमों को लागू करने का कोई भी आदेश हमेशा एक ही परिणाम में समाप्त हो जाएगा।हालांकि, कुछ नहीं हैं।एक सामान्य प्रकार के सिद्धांत में, एक-दिशात्मक संगणना नियमों को कमी नियम कहा जाता है और नियमों को लागू करने से शब्द को कम करता है।यदि कोई नियम एक-दिशात्मक नहीं है, तो इसे रूपांतरण नियम कहा जाता है।

प्रकारों के कुछ संयोजन प्रकार के अन्य संयोजनों के बराबर हैं।जब कार्यों को घातांक माना जाता है, तो प्रकारों के संयोजन को बीजगणितीय पहचान के समान लिखा जा सकता है। इस प्रकार, $${\mathbb 0} + A \cong A$$, $${\mathbb 1} \times A \cong A$$, $${\mathbb 1} + {\mathbb 1} \cong {\mathbb 2}$$, $$A^{B+C} \cong A^B \times A^C$$, $$A^{B\times C} \cong (A^B)^C$$।

Axioms
अधिकांश प्रकार के सिद्धांतों में स्वयंसिद्ध नहीं होता है।ऐसा इसलिए है क्योंकि एक प्रकार के सिद्धांत को इसके नियमों के नियमों द्वारा परिभाषित किया गया है।(ऊपर #rules देखें)।यह सेट सिद्धांत से परिचित लोगों के लिए भ्रम का एक स्रोत है, जहां एक सिद्धांत को एक तर्क के लिए अनुमान के नियमों (जैसे प्रथम-क्रम तर्क) और सेट के बारे में स्वयंसिद्ध दोनों द्वारा परिभाषित किया जाता है।

कभी -कभी, एक प्रकार का सिद्धांत कुछ स्वयंसिद्ध जोड़ देगा।एक स्वयंसिद्ध एक निर्णय है जिसे निष्कर्ष के नियमों का उपयोग करके व्युत्पत्ति के बिना स्वीकार किया जाता है।उन्हें अक्सर उन गुणों को सुनिश्चित करने के लिए जोड़ा जाता है जिन्हें नियमों के माध्यम से साफ -सुथरा नहीं जोड़ा जा सकता है।

यदि वे उन शर्तों पर गणना करने के तरीके के बिना शर्तों का परिचय देते हैं, तो Axioms समस्याओं का कारण बन सकते हैं।अर्थात्, स्वयंसिद्ध प्रकार के सिद्धांत के सामान्य रूप (अमूर्त पुनर्लेखन) के साथ हस्तक्षेप कर सकते हैं। कुछ आमतौर पर सामना किए गए स्वयंसिद्ध हैं:
 * Axiom k पहचान प्रमाणों की विशिष्टता सुनिश्चित करता है।यही है, कि पहचान प्रकार का प्रत्येक शब्द रिफ्लेक्सिटी के बराबर है।
 * एकतरफा स्वयंसिद्ध मानता है कि प्रकारों की तुल्यता प्रकारों की समानता है।इस संपत्ति में अनुसंधान ने क्यूबिकल टाइप थ्योरी का नेतृत्व किया, जहां संपत्ति एक स्वयंसिद्ध की आवश्यकता के बिना रखती है।
 * बाहर किए गए मध्य का कानून अक्सर उन उपयोगकर्ताओं को संतुष्ट करने के लिए जोड़ा जाता है जो अंतर्ज्ञानवादी तर्क के बजाय शास्त्रीय तर्क चाहते हैं।

पसंद के स्वयंसिद्ध को टाइप थ्योरी में जोड़े जाने की आवश्यकता नहीं है, क्योंकि अधिकांश प्रकार के सिद्धांतों में इसे अनुमान के नियमों से प्राप्त किया जा सकता है।यह टाइप थ्योरी के रचनात्मक गणित प्रकृति के कारण है, जहां यह साबित करना कि एक मूल्य मौजूद है, मूल्य की गणना करने के लिए एक विधि की आवश्यकता होती है।पसंद का स्वयंसिद्ध अधिकांश निर्धारित सिद्धांतों की तुलना में टाइप थ्योरी में कम शक्तिशाली है, क्योंकि टाइप थ्योरी के फ़ंक्शंस कम्प्यूटेशनल होने चाहिए और सिंटैक्स-चालित होने के कारण, एक प्रकार में शब्दों की संख्या गिनती करने योग्य होनी चाहिए।(देखना ।)

निर्णय समस्याएं
एक प्रकार का सिद्धांत स्वाभाविक रूप से टाइप निवास की निर्णय समस्या से जुड़ा हुआ है।

टाइप निवास
टाइप निवास की निर्णय समस्या (द्वारा संक्षिप्त) $$\exists e.\Gamma \vdash e : \tau?$$) है:
 * एक प्रकार का वातावरण दिया $$\Gamma$$ और एक प्रकार $$\tau$$, तय करें कि क्या कोई शब्द मौजूद है $$e$$ जिसे प्रकार सौंपा जा सकता है $$\tau$$ प्रकार के वातावरण में $$\Gamma$$।

सिस्टम यू#गिरार्ड का विरोधाभास | गिरार्ड के विरोधाभास से पता चलता है कि टाइप निवास दृढ़ता से करी -आओ -पत्राचार के साथ एक प्रकार की प्रणाली की स्थिरता से संबंधित है।ध्वनि होने के लिए, इस तरह की प्रणाली में निर्जन प्रकार होने चाहिए।

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

टाइप इन्फ्रेंस
कई कार्यक्रम जो टाइप थ्योरी (जैसे, इंटरैक्टिव प्रमेय प्रोवर्स) के साथ काम करते हैं, वे भी टाइप इन्फ्रेंसिंग करते हैं।यह उन्हें उन नियमों का चयन करने देता है जो उपयोगकर्ता उपयोगकर्ता द्वारा कम कार्यों के साथ, उपयोगकर्ता का इरादा रखते हैं।

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

व्याख्या
टाइप थ्योरी में गणित के अन्य क्षेत्रों से संबंध है।एक नींव के रूप में प्रकार के सिद्धांत के समर्थकों ने अक्सर इन कनेक्शनों का उल्लेख इसके उपयोग के औचित्य के रूप में किया है।

प्रकार प्रस्ताव हैं;शर्तें प्रमाण हैं
जब एक नींव के रूप में उपयोग किया जाता है, तो कुछ प्रकारों की व्याख्या प्रस्तावों के रूप में की जाती है (बयान जो सिद्ध हो सकते हैं) और प्रकार का एक शब्द उस प्रस्ताव का एक प्रमाण है।इस प्रकार, प्रकार & pi;x: nat।x+1 = 1+x यह दर्शाता है कि, किसी भी x के लिए NAT, x+1 और 1+x समान हैं।और उस प्रकार का एक शब्द इसके प्रमाण का प्रतिनिधित्व करता है।

करी-हावर्ड पत्राचार
करी -होवर पत्राचार लॉजिक्स और प्रोग्रामिंग भाषाओं के बीच मनाया समानता है।तर्क में निहितार्थ, ए $$\to$$ B टाइप A से टाइप B तक फ़ंक्शन जैसा दिखता है।विभिन्न प्रकार के लॉजिक्स के लिए, नियम एक प्रोग्रामिंग भाषा के प्रकारों में अभिव्यक्ति के समान हैं।समानता आगे बढ़ती है, क्योंकि नियमों के अनुप्रयोग प्रोग्रामिंग भाषाओं में कार्यक्रमों से मिलते जुलते हैं।इस प्रकार, पत्राचार को अक्सर कार्यक्रमों के रूप में प्रमाण के रूप में संक्षेपित किया जाता है।

लॉजिक ऑपरेटर्स सार्वभौमिक परिमाणीकरण और अस्तित्वगत मात्रा का ठहराव प्रति मार्टिन-लोफ ने आश्रित प्रकार के सिद्धांत का आविष्कार करने के लिए नेतृत्व किया।

अंतर्ज्ञानवादी तर्क
जब कुछ प्रकारों की व्याख्या प्रस्तावों के रूप में की जाती है, तो सामान्य प्रकारों का एक सेट होता है जिसका उपयोग उन्हें प्रकार से बाहर तर्क देने के लिए कनेक्ट करने के लिए किया जा सकता है।हालाँकि, यह तर्क शास्त्रीय तर्क नहीं बल्कि अंतर्ज्ञानवादी तर्क है।यही है, इसमें न तो बाहर किए गए मध्य और न ही दोहराव का कानून है।

तार्किक प्रस्तावों के लिए प्रकारों का एक प्राकृतिक संबंध है।यदि एक प्रस्ताव का प्रतिनिधित्व करने वाला एक प्रकार है, तो प्रकार का एक फ़ंक्शन बनाने में सक्षम है$$\top \to $$ ए इंगित करता है कि ए में एक प्रमाण है और फ़ंक्शन ए बनाने में सक्षम है $$\to \bot$$इंगित करता है कि A में कोई प्रमाण नहीं है।अर्थात्, निवास योग्य प्रकार सिद्ध होते हैं और निर्जन प्रकार अस्वीकृत होते हैं।

चेतावनी: इस व्याख्या से बहुत भ्रम हो सकता है।एक प्रकार के सिद्धांत में टाइप बूल की शर्तों को सही और गलत हो सकता है, जो एक बूलियन तर्क की तरह काम करता है, और एक ही समय में प्रकार होते हैं $$\top$$ और $$\bot$$ प्रस्ताव के लिए एक अंतर्ज्ञानवादी तर्क के हिस्से के रूप में, सच्चे (साबित) और झूठे (असुरक्षित) का प्रतिनिधित्व करने के लिए।

इस अंतर्ज्ञानवादी व्याख्या के तहत, ऐसे सामान्य प्रकार हैं जो तार्किक ऑपरेटरों के रूप में कार्य करते हैं: लेकिन इस व्याख्या के तहत, बीच में बहिष्कृत कोई कानून नहीं है।अर्थात्, प्रकार का कोई शब्द नहीं है & pi;ए ।ए + (ए) $$\to \bot$$)।

इसी तरह, कोई दोहराव नहीं है।प्रकार का कोई शब्द नहीं है & pi;ए ।((ए $$\to \bot$$) $$\to \bot$$) $$\to $$ ए (नोट: अंतर्ज्ञानवादी तर्क अनुमति देता है $$\lnot \lnot \lnot A \to \lnot A$$ और प्रकार का एक शब्द है ((ए) $$\to \bot$$) $$\to \bot$$) $$\to \bot$$) $$\to $$ (ए $$\to \bot$$)।)

इस प्रकार, तर्क-के-प्रकार एक अंतर्ज्ञानवादी तर्क है।टाइप थ्योरी को अक्सर ब्रूवर -हाइकिंग -कोलमोगोरोव व्याख्या के कार्यान्वयन के रूप में उद्धृत किया जाता है।

नियम या धारणा द्वारा एक प्रकार के सिद्धांत में बहिष्कृत मध्य और दोहरे नकारात्मकता के कानून को शामिल करना संभव है।हालांकि, शब्द विहित शब्दों की गणना नहीं कर सकते हैं और यह यह निर्धारित करने की क्षमता में हस्तक्षेप करेगा कि क्या दो शब्द एक दूसरे के बराबर हैं।

रचनात्मक गणित
मार्टिन-लोफ ने रचनात्मक गणित के लिए एक नींव के रूप में अपने अंतर्ज्ञानवादी प्रकार के सिद्धांत का प्रस्ताव रखा।रचनात्मक गणित की आवश्यकता होती है जब साबित होता है कि वहाँ मौजूद है $$x$$ संपत्ति के साथ पी ($$x$$), एक विशेष होना चाहिए $$x$$ और एक प्रमाण है कि यह संपत्ति पी है।प्रकार के सिद्धांत में, अस्तित्व को आश्रित उत्पाद प्रकार का उपयोग करके पूरा किया जाता है और, इसके प्रमाण को उस प्रकार के शब्द की आवश्यकता होती है।इस कार्यकाल के लिए $$t$$, पहला $$t$$उत्पादन करेंगे $$x$$ और दूसरा $$t$$P का प्रमाण तैयार करेगा ($$x$$)।

एक गैर-कंस्ट्रक्टिव सबूत का एक उदाहरण विरोधाभास द्वारा एक प्रमाण है।पहला कदम यह मान रहा है कि $$x$$ विरोधाभास से मौजूद नहीं है और इसका खंडन करता है।उस कदम से निष्कर्ष यह है कि ऐसा नहीं है $$x$$ मौजूद नहीं होना ।अंतिम चरण, दोहरे नकारात्मकता द्वारा, निष्कर्ष निकाला है $$x$$ मौजूद।स्पष्ट होने के लिए, रचनात्मक गणित अभी भी विरोधाभास द्वारा खंडन करने की अनुमति देता है।यह साबित कर सकता है कि यह मामला नहीं है $$x$$ मौजूद नहीं होना ।लेकिन रचनात्मक गणित यह निष्कर्ष निकालने के लिए दोहरे नकारात्मकता को हटाने के अंतिम चरण की अनुमति नहीं देता है $$x$$ मौजूद। रचनात्मक गणित ने अक्सर इंट्यूस्टिस्टिक लॉजिक का उपयोग किया है, जैसा कि ब्रूवर -हाइंग -कोलमोगोरोव व्याख्या द्वारा स्पष्ट किया गया है।

नींव के रूप में प्रस्तावित अधिकांश प्रकार के सिद्धांत रचनात्मक हैं।इसमें प्रूफ असिस्टेंट द्वारा उपयोग किए जाने वाले अधिकांश शामिल हैं।

नियम या धारणा द्वारा, एक प्रकार के सिद्धांत में गैर-कंस्ट्रक्टिव सुविधाओं को जोड़ना संभव है।इनमें गैर-कंस्ट्रक्टिव लॉजिक के संबंध में कॉल/सीसी#जैसे निरंतरता पर ऑपरेटर शामिल हैं।हालांकि, ये ऑपरेटर वांछनीय गुणों जैसे कि कैनोनिकिटी (टाइप थ्योरी) और पैरमिकलिटी को तोड़ते हैं।

श्रेणी सिद्धांत
यद्यपि श्रेणी सिद्धांत के लिए प्रारंभिक प्रेरणा को संस्थागतवाद से दूर कर दिया गया था, लेकिन दो क्षेत्रों में गहरे संबंध थे।जैसा कि जॉन लेन बेल लिखते हैं: वास्तव में श्रेणियों को स्वयं एक निश्चित प्रकार के प्रकार के सिद्धांतों के रूप में देखा जा सकता है;यह तथ्य अकेले इंगित करता है कि प्रकार सिद्धांत श्रेणी सिद्धांत से बहुत अधिक निकटता से संबंधित है, क्योंकि यह सिद्धांत को सेट करना है।संक्षेप में, एक श्रेणी को प्रकार (या प्रकार) के रूप में अपनी वस्तुओं के बारे में एक प्रकार के सिद्धांत के रूप में देखा जा सकता है, यानी मोटे तौर पर बोलते हुए, एक श्रेणी को इसके सिंटैक्स के एक प्रकार के सिद्धांत के रूप में सोचा जा सकता है।कई महत्वपूर्ण परिणाम इस तरह से पालन करते हैं:
 * कार्टेशियन बंद श्रेणी टाइप किए गए λ-Calculus (Lambek, 1970) के अनुरूप है;
 * सी-मोनोइड्स (उत्पादों और घातांक के साथ श्रेणियां और एक गैर-टर्मिनल ऑब्जेक्ट) अनटिप्ड λ-Calculus (1980 के आसपास लैम्बेक और दाना स्कॉट द्वारा स्वतंत्र रूप से मनाया गया) के अनुरूप;
 * स्थानीय रूप से कार्टेशियन बंद श्रेणी मार्टिन-लोफ टाइप थ्योरी के अनुरूप है। मार्टिन-लोफ टाइप थ्योरीज़ (सेली, 1984)।

इंटरप्ले, जिसे श्रेणीबद्ध तर्क के रूप में जाना जाता है, तब से सक्रिय अनुसंधान का विषय रहा है;उदाहरण के लिए जैकब्स (1999) का मोनोग्राफ देखें।

होमोटोपी टाइप थ्योरी टाइप थ्योरी और श्रेणी सिद्धांत को संयोजित करने का प्रयास करता है।यह समानता पर केंद्रित है, विशेष रूप से प्रकारों के बीच समानताएं।

मेजर

 * बस टाइप किया गया लैम्ब्डा कैलकुलस जो एक उच्च-क्रम तर्क है
 * अंतर्ज्ञानवादी प्रकार सिद्धांत
 * सिस्टम एफ
 * तार्किक ढांचे का उपयोग अक्सर अन्य प्रकार के सिद्धांतों को परिभाषित करने के लिए किया जाता है
 * निर्माणों और उसके डेरिवेटिव की पथरी

माइनर

 * स्वचालित
 * सेंट टाइप थ्योरी
 * UTT (LUO का एकीकृत सिद्धांत पर निर्भर प्रकार)
 * संयोजक तर्क के कुछ रूप
 * अन्य लोग लैम्ब्डा क्यूब में परिभाषित किए गए (जिसे शुद्ध प्रकार के सिस्टम के रूप में भी जाना जाता है)
 * अन्य नाम के तहत लैम्ब्डा कैलकुलस टाइप किया गया

सक्रिय अनुसंधान

 * होमोटोपी प्रकार सिद्धांत प्रकारों की समानता की खोज करता है
 * NLAB: क्यूबिकल+टाइप+थ्योरी होमोटोपी टाइप थ्योरी का कार्यान्वयन है

गणितीय नींव
पहला कंप्यूटर प्रूफ असिस्टेंट, जिसे ऑटोमैथ कहा जाता है, एक कंप्यूटर पर गणित को एनकोड करने के लिए टाइप थ्योरी का इस्तेमाल किया।मार्टिन-लोफ ने विशेष रूप से गणित के लिए एक नई नींव के रूप में काम करने के लिए सभी गणित को एनकोड करने के लिए विशेष रूप से अंतर्ज्ञानवादी प्रकार के सिद्धांत को विकसित किया।होमोटोपी प्रकार के सिद्धांत का उपयोग करके गणितीय नींव में अनुसंधान चल रहा है।

श्रेणी सिद्धांत में काम करने वाले गणितज्ञों को पहले से ही Zermelo -Fraenkel सेट सिद्धांत की व्यापक रूप से स्वीकृत नींव के साथ काम करने में कठिनाई हुई।इसने सेट की श्रेणी (ईटीसी) के लावेवे के प्राथमिक सिद्धांत जैसे प्रस्तावों को जन्म दिया। टाइप थ्योरी का उपयोग करके इस लाइन में होमोटोपी टाइप थ्योरी जारी है।शोधकर्ता आश्रित प्रकारों (विशेष रूप से पहचान प्रकार) और बीजगणितीय टोपोलॉजी (विशेष रूप से होमोटॉपी) के बीच संबंध खोज रहे हैं।

प्रूफ असिस्टेंट
टाइप थ्योरी में वर्तमान शोध में से अधिकांश स्वचालित प्रूफ चेकिंग, इंटरैक्टिव प्रूफ असिस्टेंट और स्वचालित प्रमेय साबित होने से प्रेरित है।इनमें से अधिकांश सिस्टम एन्कोडिंग प्रूफ के लिए गणितीय नींव के रूप में एक प्रकार के सिद्धांत का उपयोग करते हैं, जो आश्चर्यजनक नहीं है, प्रकार के सिद्धांत और प्रोग्रामिंग भाषाओं के बीच घनिष्ठ संबंध को देखते हुए:
 * लॉजिकल फ्रेमवर्क का उपयोग ट्वेल द्वारा किया जाता है, अक्सर अन्य प्रकार के सिद्धांतों को परिभाषित करने के लिए;
 * कई प्रकार के सिद्धांत जो उच्च-क्रम के तर्क के अंतर्गत आते हैं, का उपयोग HOL (प्रूफ असिस्टेंट) और प्रोटोटाइप सत्यापन तंत्र द्वारा किया जाता है;
 * कम्प्यूटेशनल प्रकार सिद्धांत का उपयोग NUPRL द्वारा किया जाता है;
 * कंस्ट्रक्शन्स और इसके डेरिवेटिव्स के कैलकुलस का उपयोग Coq, Matita, और Lean (प्रूफ असिस्टेंट) द्वारा किया जाता है;
 * UTT (LUO'S INIFIED THEED THERY OF DEPINTENTY TYPES) का उपयोग AGDA (प्रोग्रामिंग लैंग्वेज) द्वारा किया जाता है जो अगदा (प्राग्रामिंग भाषा) और प्रूफ असिस्टेंट दोनों है

कई प्रकार के सिद्धांत लेगो (प्रूफ असिस्टेंट) और इसाबेल (प्रूफ असिस्टेंट) द्वारा समर्थित हैं।इसाबेल भी प्रकार के सिद्धांतों के अलावा नींव का समर्थन करता है, जैसे कि ज़रमेलो -फ्रेनकेल सेट सिद्धांत।MIZAR सिस्टम एक प्रूफ सिस्टम का एक उदाहरण है जो केवल SET सिद्धांत का समर्थन करता है।

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

प्रोग्रामिंग लैंग्वेज एमएल (प्रोग्रामिंग भाषा) को प्रकार के सिद्धांतों में हेरफेर करने के लिए विकसित किया गया था (कम्प्यूटेबल फ़ंक्शंस के लिए लॉजिक देखें) और इसकी अपनी प्रकार की प्रणाली उनसे बहुत प्रभावित थी।

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

सबसे आम निर्माण बुनियादी प्रकार लेता है $$e$$ और $$t$$ व्यक्तियों और सत्य-मूल्यों के लिए, क्रमशः, और प्रकारों के सेट को पुनरावर्ती रूप से परिभाषित करता है:
 * अगर $$a$$ और $$b$$ प्रकार हैं, तो तो है $$\langle a,b\rangle$$;
 * मूल प्रकारों के अलावा कुछ भी नहीं, और पिछले क्लॉज के माध्यम से उनसे क्या निर्माण किया जा सकता है।

एक जटिल प्रकार $$\langle a,b\rangle$$ प्रकार की संस्थाओं से फ़ंक्शन (गणित) का प्रकार है $$a$$ प्रकार की संस्थाओं को $$b$$।इस प्रकार एक प्रकार की तरह है $$\langle e,t\rangle$$ जो संस्थाओं से सत्य-मूल्यों तक कार्यों के सेट के तत्वों के रूप में व्याख्या की जाती है, अर्थात् संस्थाओं के सेट के संकेतक कार्य।प्रकार की एक अभिव्यक्ति $$\langle\langle e,t\rangle,t\rangle$$ संस्थाओं के सेट से सत्य-मूल्यों तक एक फ़ंक्शन है, अर्थात् सेट के सेट के सेट (ए का संकेतक फ़ंक्शन)।इस बाद के प्रकार को मानक रूप से सामान्यीकृत क्वांटिफायर का प्रकार माना जाता है, जैसे कि हर कोई या कोई भी (रिचर्ड मोंटेग 1973, जॉन बारवाइज़ और कूपर 1981)।

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

यह भी देखें

 * गणित की नींव

अग्रिम पठन

 * Covers type theory in depth, including polymorphic and dependent type extensions. Gives categorical semantics.
 * Provides a historical survey of the developments of the theory of types with a focus on the decline of the theory as a foundation of mathematics over the four decades following the publication of the second edition of 'Principia Mathematica'.
 * Intended as a type theory counterpart of Paul Halmos's (1960) Naïve Set Theory
 * A good introduction to simple type theory for computer scientists; the system described is not exactly Church's STT though. Book review
 * Provides a historical survey of the developments of the theory of types with a focus on the decline of the theory as a foundation of mathematics over the four decades following the publication of the second edition of 'Principia Mathematica'.
 * Intended as a type theory counterpart of Paul Halmos's (1960) Naïve Set Theory
 * A good introduction to simple type theory for computer scientists; the system described is not exactly Church's STT though. Book review
 * A good introduction to simple type theory for computer scientists; the system described is not exactly Church's STT though. Book review
 * A good introduction to simple type theory for computer scientists; the system described is not exactly Church's STT though. Book review

परिचयात्मक सामग्री

 * प्रकार सिद्धांत NLAB पर, जिसमें कई विषयों पर लेख हैं।
 * intuitionistic प्रकार सिद्धांत दर्शन के स्टैनफोर्ड एनसाइक्लोपीडिया में लेख
 * लैम्ब्डा कैलकुलस टाइप्स के साथ हेंक Barendregt द्वारा बुक
 * [https://hbr.github.io/lambda-calculus/cc-tex Calluss of Construstions/Typed Lambda Callus.
 * intuitionistic प्रकार सिद्धांत प्रति मार्टिन-löf द्वारा नोट्स
 * मार्टिन-Löf के प्रकार सिद्धांत में प्रोग्रामिंग बुक
 * homotopy प्रकार सिद्धांत पुस्तक, जिसने एक गणितीय नींव के रूप में होमोटोपी प्रकार सिद्धांत को प्रस्तावित किया।

उन्नत सामग्री

 * प्रकार फोरम & mdash;मॉडरेट ई-मेल फोरम कंप्यूटर साइंस में टाइप थ्योरी पर ध्यान केंद्रित करते हुए, 1987 के बाद से काम कर रहा है।
 * nuprl पुस्तक।]
 * प्रकार प्रोजेक्ट लेक्चर नोट्स समर स्कूलों 2005-2008 का
 * 2005 समर स्कूल में परिचयात्मक व्याख्यान हैं
 * ओरेगन प्रोग्रामिंग लैंग्वेजेस समर स्कूल, कई व्याख्यान और कुछ नोट्स।
 * समर 2013 लेक्चर] पर
 * समर 2015 प्रकार, तर्क, शब्दार्थ और सत्यापन
 * आंद्रेज बाउर का ब्लॉग
 * आंद्रेज बाउर का ब्लॉग

श्रेणी: प्रकार सिद्धांत श्रेणी: औपचारिक तर्क प्रणाली श्रेणी: पदानुक्रम