Intuicionista Típuselmélet

Tartalomjegyzék:

Intuicionista Típuselmélet
Intuicionista Típuselmélet

Videó: Intuicionista Típuselmélet

Videó: Intuicionista Típuselmélet
Videó: 4 Интуиционизм 2024, Március
Anonim

Belépés navigáció

  • Nevezés tartalma
  • Bibliográfia
  • Tudományos eszközök
  • Barátok PDF előnézete
  • Szerző és idéző információ
  • Vissza a tetejére

Intuicionista típuselmélet

Elsőként publikálták 2016. február 12-én; érdemi felülvizsgálat, 2020. június 8., hétfő

Az intuíciós típusú elmélet (szintén konstruktív típuselmélet vagy Martin-Löf típusú elmélet) egy formális logikai rendszer és filozófiai alapja az építő matematikának. Ez egy teljes körű rendszer, amelynek célja, hogy hasonló szerepet játsszon az építő matematikában, mint a Zermelo-Fraenkel Set Theory a klasszikus matematikában. A javaslat-mint-típus elvre épül, és tisztázza az intuitív logika Brouwer-Heyting-Kolmogorov-értelmezését. Ezt az értelmezést kiterjeszti az intuitív típusú elmélet általánosabb meghatározására, és így általános elképzelést ad nemcsak arról, hogy mi az építő bizonyíték, hanem arról is, hogy mi az építő matematikai objektum. A fő gondolat az, hogy a matematikai fogalmakat, például az elemeket, halmazokat és függvényeket a programozásból származó fogalmakkal magyarázzák, mint például az adatstruktúrák,adattípusok és programok. Ez a cikk az intuitív típusú elmélet formális rendszerét és annak szemantikai alapjait írja le.

Ebben a bejegyzésben először áttekintést adunk az intuitív típusú elmélet legfontosabb aspektusairól - egyfajta „kiterjesztett absztraktról”. Az olvasó számára készült, aki már kissé ismeri az elméletet. A 2. szakasz viszont az olvasó számára szól, aki még nem ismeri az intuitív típusú elméletet, de ismeri a hagyományos logikát, ideértve az alkotási és predikátum logikát, a számtani és az elméletet. Itt informálisan bemutatunk néhány szempontot, amely megkülönbözteti az intuitív típusú elméletet a hagyományos elméletektől. A 3. részben bemutatjuk az elmélet alapvető változatát, közel Martin-Löf 1972-ben közzétett első verziójához. Az olvasó, akit a 2. szakasz informalitása érdekel, most részletesen látni fogja, hogyan épül fel az elmélet. Ezután a 4. szakasz bemutatja az alapvető elmélet számos fontos kiterjesztését. Különösen,hangsúlyozza az induktív (és induktív-rekurzív) meghatározások központi szerepét. Az 5. szakasz bemutatja az alapjául szolgáló filozófiai ötleteket, ideértve a jelentés-elméletet, amelyet Martin-Löf fejlesztett ki. Míg az 5. szakasz a filozófiáról és az alapokról szól, a 6. szakasz áttekintést nyújt az elmélet matematikai modelljeiről. Végül a 7. fejezetben leírjuk a Martin-Löf „intenzív” elméletének a 3. és 4. szakaszban ismertetett alapvető változatát.leírjuk a 3. és 4. szakaszban leírt Martin-Löf „intenzív” elmélet lényeges variációit.leírjuk a 3. és 4. szakaszban leírt Martin-Löf „intenzív” elmélet lényeges variációit.

  • 1. Áttekintés
  • 2. Javaslatok mint típusok

    • 2.1 Intuicionista típuselmélet: a logika újszerű nézőpontja?
    • 2.2 A Curry-Howard levelezés
    • 2.3 Bizonyítási objektumok halmaza
    • 2.4 Függő típusok
    • 2.5 Javaslatok mint típusok az intuíciós típusú elméletben
  • 3. Alapvető intuíciós típusú elmélet

    • 3.1. Ítéletek
    • 3.2. Ítélőlapok
    • 3.3 Következtetési szabályok
    • 3.4 Intuicionista prediktív logika
    • 3.5 Természetes számok
    • 3.6 A kis típusok univerzuma
    • 3.7 Propozicionális identitás
    • 3.8 A választás axióma tétele
  • 4. Bővítmények

    • 4.1 A logikai keret
    • 4.2 Általános személyazonosság-típus
    • 4.3 Jól megalapozott fák
    • 4.4 Iteratív halmazok és CZF
    • 4.5 Induktív meghatározások
    • 4.6 Induktív-rekurzív meghatározások
  • 5. Jelentés magyarázatok

    • 5.1 Számítás kanonikus formába
    • 5.2 A kategorikus ítéletek jelentése
    • 5.3 A hipotetikus ítéletek jelentése
  • 6. Matematikai modellek

    • 6.1 Kategória modellek
    • 6.2 Set-elméleti modell
    • 6.3 Megvalósíthatósági modellek
    • 6.4 A normál űrlapok és a típusellenőrzés modellje
  • 7. Az elmélet változatai

    • 7.1. Bővítési típuselmélet
    • 7.2 Univalens alapok és homotopia típusú elmélet
    • 7.3 Részleges és nem standard típusú elmélet
    • 7.4 Kifejezetlen típuselmélet
    • 7.5 Bizonyítási asszisztensek
  • Bibliográfia
  • Tudományos eszközök
  • Egyéb internetes források
  • Kapcsolódó bejegyzések

1. Áttekintés

Az intuitionista típuselmélet néhány fontos szempontjának madártávlatból indulunk. Azok az olvasók, akik nem ismeri az elméletet, inkább kihagyják azt az első olvasat során.

Az intuitív típusú elmélet eredete Brouwer intuíciója és Russell típuselmélete. Mint az Church klasszikus egyszerű elmélete, a lambda calculuson alapszik, de különbözik tőle abban, hogy az állítások típusként elvén alapul, amelyet Curry (1958) fedezett fel a javaslati logikára, és kiterjesztette a logika prediktálására. Howard (1980) és de Bruijn (1970). Ezt a kiterjesztést az indexált típusú (függő típusú) családok bevezetése tette lehetővé, hogy képviseljék a predikátum logika predikátumait. Ilyen módon az összes logikai összekötő elem és mennyiségi meghatározó típusformátorok értelmezhető. Az intuitív típusú elmélet további tipusokkal egészül ki, mint például a természetes számok, a kis típusok (a világegyetem) és a megalapozott fák típusai. Az így kapott elmélet intuíciós számelméletet (Heyting aritmetika) és még sok másat tartalmaz.

Az elmélet természetes dedukcióban van megfogalmazva, ahol az egyes típusok szabályait besorolási, bevezetési, kiküszöbölési és egyenlőségi szabályokként osztályozzuk. Ezek a szabályok bizonyos szimmetriákat mutatnak a bevezetési és kiküszöbölési szabályok között, a Gentzen és Prawitz által a természetes dedukció kezelése után, amint azt a bizonyításelméleti szemantika bejegyzésében kifejtik.

A javaslatok elemeit, ha típusként értelmezzük, bizonyítási objektumoknak nevezzük. Amikor a természetes levonási kalkulushoz bizonyítékokat adnak, akkor tipikus lambda kalkulusgá válik függő típusokkal, amely meghosszabbítja az egyház eredeti gépelt lambda kalkulusát. Az egyenlőségi szabályok számítási szabályok a kalkulus feltételeire. Az elméletben meghatározható minden funkció teljes és kiszámítható. Az intuitív típusú elmélet tehát egy tipizált funkcionális programozási nyelv, azzal a szokatlan tulajdonsággal, hogy az összes program véget ér.

Az intuíciós típusú elmélet nem csupán formális logikai rendszer, hanem átfogó filozófiai keretet is nyújt az intuíciózáshoz. Értelmezett nyelv, ahol alapvető szerepet játszik az ítélet bemutatása és az állítás igazolása közötti különbségtétel (Sundholm 2012). A keret tisztázza az intuitív logika Brouwer-Heyting-Kolmogorov-értelmezését, és kiterjeszti az intuitív típusú elmélet általánosabb beállítására. Ennek során általános elképzelést ad nemcsak arról, hogy mi az építő bizonyíték, hanem arról is, hogy mi az építő matematikai objektum. Az intuitív típuselmélet ítéleteinek jelentését a típusok és a kifejezések kanonikus formáinak kiszámításával magyarázzuk. Ezek az informális,az intuitív jelentések magyarázata „matematikai előtti”, és ellentétben kell lenni azokkal a formális matematikai modellekkel, amelyeket egy szabványos matematikai keretben, például a halmazelméletben fejlesztettek ki.

Ez a jelentéselmélet indokolja a különféle induktív, rekurzív és induktív-rekurzív definíciókat is. Noha a bizonyíthatóan elméletileg erős fogalmak igazolhatók, például egyes nagy bíborosok analógjai, a rendszert prediktívnek tekintik. A magasabb rendű logikában, az intuitionista halmazelméletben és a toposz-elméletben található ilyen jellegzetes meghatározások nem képezik részét az elméletnek. Markov alapelve sem, ezért az elmélet különbözik az orosz konstruktivizmustól.

A prediktív konstruktív matematika alternatív formális logikai rendszere a Myhill és Aczel konstruktív Zermelo-Fraenkel halmazelmélete (CZF). Ez az intuitív elsőrendű predikátum logikán alapuló elmélet, amely gyengíti a klasszikus Zermelo-Fraenkel halmazelmélet egyes axiómáit, természetes értelmezést mutat az intuitív típusú elméletben. Martin-Löf jelentéseinek magyarázata tehát közvetetten is a CZF alapját képezi.

Az intuitív típusú elmélet változatai számos széles körben alkalmazott bizonyítási asszisztens alapját képezik, köztük a NuPRL, a Coq és az Agda. Ezek az igazolási asszisztensek számítógépes rendszerek, amelyeket a matematikai tételek nagy és összetett igazolásainak formalizálására használtak, mint például a négyszín-tétel a gráfelméletben és a Feit-Thompson-tétel a véges csoportelméletben. Ezeket a reális C-fordító (Leroy 2009) és más számítógépes szoftverek helyességének bizonyítására is felhasználták.

Filozófiai és gyakorlati szempontból az intuíciós típusú elmélet alapvető keret, ahol az építő matematika és a számítógépes programozás mély értelemben ugyanaz. Ezt a pontot hangsúlyozta (Gonthier 2008) a cikkben, amelyben bemutatja a négy szín tétel bizonyítékát:

Ennek a bizonyításnak a sikeresnek bizonyult megközelítése az volt, hogy szinte minden matematikai fogalmat adatstruktúrává vagy programmá alakít a Coq rendszerben, ezáltal az egész vállalkozást átalakítva a program ellenőrzésének egyikévé.

2. Javaslatok mint típusok

2.1 Intuicionista típuselmélet: a logika újszerű nézőpontja?

Az intuitív típusú elmélet új módszert kínál a logika elemzésére, főleg explicit bizonyító objektumok bevezetése révén. Ez biztosítja a logika közvetlen számítási értelmezését, mivel vannak bizonyítási objektumok számítási szabályai. A kifejező erő szempontjából az intuitív típusú elmélet az elsőrendű logika kiterjesztéseként tekinthető, ugyanúgy, mint a magasabbrendű logika, de prediktív.

2.1.1 Típuselmélet

Russell kifejlesztette a típuselméletet a naiv halmazelmélet paradoxonjának felfedezésére válaszul. A megerősített típuselméletben a matematikai tárgyakat típusuk szerint osztályozzák: a javaslatok típusai, az objektumok típusai, az objektumok tulajdonságainak típusai, stb. Amikor az egyház típusának egyszerű elméletét az Church egy tippelt változata alapján fejlesztette ki. lambda calculus hozzátette azt a szabályt, hogy az elmélet bármely két típusa között létezik egyfajta függvény. Az intuíciós típusú elmélet tovább bővíti az egyszerűen gépelt lambda kalkulust függő típusokkal, azaz indexelt típusú családokkal. Példa erre a (n) - gombokatípusok családja, amelyet (n) indexel.

A típusokat sokáig széles körben használják a programozásban. A korai magas szintű programozási nyelvek bevezettek egész számok és lebegőpontos számok típusait. A modern programozási nyelvek gyakran gazdag típusú rendszereket tartalmaznak, sok konstrukcióval új típusok kialakítására. Az intuitív típuselmélet egy funkcionális programozási nyelv, ahol a típusrendszer annyira gazdag, hogy egy program gyakorlatilag minden elképzelhető tulajdonsága kifejezhető típusként. A típusok tehát felhasználhatók a program feladatának meghatározására.

2.1.2 Intuitív logika bizonyító tárgyakkal

Brouwer logikájának elemzése olyan intuíciós logikához vezetett, amely elutasítja a kirekesztett középső törvényt és a kettős tagadás törvényét. Ezek a törvények az intuitív típusú elméletben nem érvényesek. Így nem tartalmaz klasszikus (Peano) számtani, hanem csak intuitív (Heyting) számtani. (Más kérdés, hogy a Peano aritmetika a Heyting aritmetikában a kettős tagadás értelmezésével értelmezhető, lásd az intuitív logika bejegyzését.)

Fontoljuk meg az intuitív számtani tétel tételét, például a megosztási tételt

) forall m, n. m> 0 / supset / létezik q, r. mq + r = n / ék m> r)

Ennek a tételnek a hivatalos bizonyítéka (a szokásos értelemben) egy képlet-sorozat (vagy -fa), ahol az utolsó (gyökér) formula a tétel, és a sorozatban szereplő minden képlet vagy axióma (levél), vagy a következtetési szabály alkalmazása néhány korábbi (magasabb) képletre.

Amikor az osztási tétel bizonyul az intuitív típusú elméletben, akkor nemcsak a szokásos értelemben vett formális bizonyítékot építünk, hanem egy olyan konstrukciót (vagy bizonyítási objektumot) is építünk, amely a tétel valóságát tanúja. Mi írunk

) divi: / forall m, n {:} N. \, m> 0 / supset / létezik q, r {:} N. \, mq + r = n / ék m> r)

annak kifejezése, hogy (divi) a megosztási tétel bizonyítéka, azaz a megosztási tételt reprezentáló típusú elem. Ha az állításokat típusként ábrázoljuk, akkor a (forall) - mennyiségi azonosítót a függő függvénytér előzőjével (vagy általános kartéziai termékkel) azonosítják (Pi), a (létezik) - számszerűsítőt a függő párokkal típus korábbi (vagy általános diszjunkt összeg) (Sigma), összekapcsolódás (ék) kartéziai termékkel (idő), az identitási kapcsolat = a korábbi típusú (I) bizonyíték-objektumokkal az identitások és a nagyobb, mint a (>) kapcsolat a korábbi (GT) típussal nagyobb, mint a mondatok bizonyítékobjektumai. Így a „típusjelöléssel” írunk

) divi: / Pi m, n {:} N. \, / GT (m, 0) jobbra nyíl / Sigma q, r {:} N. \, / I (N, mq + r, n) idő / GT (m, r))

kifejezni, hogy a „(divi)” bizonyítóobjektum egy olyan függvény, amely két számot leképez (m) és (n), valamint egy bizonyítóobjektumot (p), amely ezt látja (m> 0) egy négyszeresére ((q, (r, (s, t))))), ahol (q) hányados, és (r) a fennmaradó rész, amelyet (n) elosztásakor a (m). A harmadik komponens (s) egy bizonyíték-objektum, amely azt a tényt tanúsítja, hogy (mq + r = n), és a negyedik (t) komponens egy bizonyító objektum, amely szemtanúja a (m> r) -nak.

Lényeges, hogy a (divi) nemcsak a klasszikus értelemben vett függvény; ez az intuitív értelemben vett függvény is, azaz egy olyan program, amely kiszámítja a kimenetet ((q, (r, (s, t)))), ha megadja (m), (n), (p) bemenetekként. Ez a program kifejezés egy lambda kalkulusban, speciális állandókkal, vagyis egy program funkcionális programozási nyelven.

2.1.3 Az elsőrendű predikatív logika kiterjesztése

Az intuíciós típusú elmélet az elsőrendű logika kiterjesztéseként tekinthető, mivel a magasabb rendű logika az elsőrendű logika kiterjesztése. Magasabb rendű logikában találunk néhány olyan domaint, amelyeket bármilyen tetszőleges halmazként értelmezhetünk. Ha vannak relációs állandók az aláírásban, akkor ezeket úgy lehet értelmezni, mintha az egyes tartományokat értelmező halmazok között fennálló bármilyen kapcsolat lenne. Ezenkívül mennyiségileg meghatározhatjuk a kapcsolatok, a kapcsolatok viszonyát stb. Is. A magasabb rendű logikára mint elsőrendű logikára gondolhatunk, amely új számszerűsítési tartományok bevezetésének módszerével van felszerelve: if (S_1, / ldots, S_n) a mennyiségi meghatározás tartományai, akkor ((S_1, / ldots, S_n)) egy új mennyiségi meghatározási tartomány, amely a (S_1, / ldots, S_n) tartományok közötti összes n-számú relációból áll. A magasabb rendű logikának egyértelmű set-theoretikus értelmezése van, ahol a ((S_1, / ldots, S_n)) hatalomkészletként értelmeződik (P (A_1 / times / cdots / A_n)) ahol (A_i) a (S_i) értelmezése (i = 1, / ldots, n) számára. Ez az a magasabb rendű logika vagy egyszerű típusú elmélet, amelyet Ramsey, az Egyház és mások bevezettek.

Az intuíciós típusú elmélet hasonló módon tekinthető meg, csak itt gazdagabbak a mennyiségi meghatározási tartományok bevezetésének lehetőségei, (Sigma, / Pi, +, / I) felhasználható új régi építésére. (3.1. Szakasz; Martin-Löf 1998 [1972]). Az intuíciós típusú elméletnek egyértelmű set-theoretikus értelmezése is van, ahol a (Sigma), (Pi) stb. A megfelelő set-theoretikus konstrukciókként értelmezendők; lásd lejjebb. Az intuitív típusú elmélethez hozzáadhatunk meghatározatlan egyedi területeket, akárcsak a HOL-hoz. Ezeket halmazokként értelmezzük, mint a HOL esetében. Most különbséget mutatunk a HOL-hoz képest: az intuitív típusú elméletben meghatározhatatlan családi szimbólumokat vezethetünk be. Bemutathatjuk a (T) mint típuscsaládot az egyéni tartományon belül (S):

[T (X); { rm type}; (x {:} S).)

Ha a (S) értelmezése (A), akkor a (T) bármilyen halmazcsaládként értelmezhető, amelyet (A) indexel. Nem matematikai példaként az alábbiak szerint adhatjuk meg az emberek egyéni tartományának tagjai közötti bináris kapcsolat szeretetét. Mutassa be a Szerelem bináris családot a People domain alatt

[{ rm szeret} (x, y); { rm type}; (x {:} { rm People}, y {:} { rm People}).)

Az értelmezés bármely halmazcsalád lehet (B_ {x, y}) ((x {:} A \, (y {:} A)). Hogyan fedezi ez a kapcsolat általános fogalmát? Tegyük fel, hogy van (R) bináris relációnk (A) -on a megszokott halmazelméleti értelemben. Készíthetünk ennek megfelelő bináris családot az alábbiak szerint

[B_ {x, y} = / kezdődik {esetek} {0 } & / szöveg {if} R (x, y) szöveg {tart} / \ lakk nélküli & / szöveg {if} R (x, y) szöveg {hamis.} vége {esetek})

Most egyértelműen, hogy (B_ {x, y}) nem üres, ha és csak akkor, ha (R (x, y)) rendelkezik. (A valós teoretikus univerzumból bármilyen más elemet választhattunk volna, mint a 0, az igazság jelzésére.) Így bármilyen kapcsolatból felépíthetünk egy családot, amelynek (x, y) igazsága egyenértékű a (B_ {x, y}) nem üres. Vegye figyelembe, hogy ezt az értelmezést nem érdekli, mi a (R (x, y)) bizonyítéka, csak hogy megtartja. Emlékezzünk arra, hogy az intuitív típuselmélet az állításokat típusként értelmezi, tehát (p {:} { rm szereti} ({rm John}, {rm Mary})) azt jelenti, hogy ({ rm szereti} ({ rm John}, {Mary Mary})) igaz.

A kapcsolatok családként értelmezése lehetővé teszi azon bizonyítékok vagy bizonyítékok nyomon követését, amelyek (R (x, y)) rendelkeznek, de dönthetünk úgy is, hogy figyelmen kívül hagyjuk.

A montague szemantika magasabb rendű logikát használ a természetes nyelv szemantikájának megadására (és a fenti példákra). Ranta (1994) bevezette azt az elgondolást, hogy inkább az intuitív típusú elméletet alkalmazza, hogy jobban megragadja a mondat szerkezetét a függő típusok segítségével.

Ezzel szemben hogyan lehetne kezelni a természetes számok matematikai viszonyát (>) az intuitív típusú elméletben? Mindenekelőtt szükség van egy típusú számra (N). Elvileg bevezethetünk egy meghatározatlan egyedi domént (N), majd hozzáadhatunk axiómákat, ugyanúgy, mint az elsőrendű logikában, amikor a Peano aritmetika axiómájának rendszerét állítjuk be. Ez azonban nem adná a kívánt számítási értelmezést. Az alábbiakban kifejtettek szerint bevezetési szabályokat állapítunk meg az új természetes számok konstruálására (N) -ben, és kiküszöbölési és számítási szabályokat a (N) függvények meghatározására (rekurzióval). A normál rendelési relációnak (>) meg kell felelnie

) mbox {(x> y), ha létezik (z {:} N) olyan, hogy (y + z + 1 = x)}.)

A jobb kezét (Sigma z {:} N. \, / I (N, y + z + 1, x)) néven rendezzük meg az intuitív típusú elméletben, és ezt viszony definíciójának tekintjük (>). ((+) rekurzív egyenletek definiálják, (I) az identitás típusa.) A (>) összes tulajdonságát a (N) említett bevezetési, kiküszöbölési és számítási szabályok határozzák meg.

2.1.4 Logika többféle döntési formával

Az intuitív típuselmélet típusrendszere nagyon kifejező. Következésképpen a típus megfelelő formációja már nem egyszerű elemzés, hanem bizonyítható. A típus jól formált formája az intuíciós típusú elmélet megítélésének egyik formája. Egy másik kifejezés az, hogy egy kifejezés egy típushoz viszonyítva jól tipizálódik. Ezen felül vannak egyenlőségi ítéletek a típusok és kifejezések vonatkozásában. Ez egy újabb módszer, amellyel az intuitív típusú elmélet különbözik a szokásos elsőrendű logikától, azzal a középpontban, hogy az állítás valóságát kifejező egyetlen ítéletre összpontosít.

2.1.5 Szemantika

Míg az elsőrendű logika szabványos bemutatása Tarskit követi a modell fogalmának meghatározásakor, az intuitív típusú elmélet Heyting és Kolmogorov által továbbfejlesztett brouweriai jelentéselmélet hagyományát követi, a logika úgynevezett BHK-értelmezését. A lényeg az, hogy az implikáció bizonyítása (A / supset B) olyan módszer, amely a (A) bizonyítékát a (B) bizonyítékká alakítja. Az intuitív típusú elméletben ezt a módszert formálisan a (f {:} A / supset B) vagy (f {:} A / jobbra mutató nyíl B) képviseli: az implikáció igazolásának típusa (A / supset B) az a függvénytípus, amely a (A) igazolásait (B) igazolásává teszi.

Ráadásul, míg a Tarski szemantikáját általában meta-matematikailag mutatják be, és feltételezi a set-elméletet, Martin-Löf intuíciós típusú elméletének jelentése elméletét közvetlenül és „pre-matematikai” módon kell érteni, vagyis anélkül, hogy feltételeznénk egy meta-nyelvet, például a set elméletet..

2.1.6 Funkcionális programozási nyelv

A lambda kalkulus és a funkcionális programozás hátterével rendelkező olvasók alternatív első megközelítést kaphatnak az intuitionista típuselméletből, ha úgy gondolják, hogy Haskell stílusú vagy funkcionális programozási nyelv, vagy az ML egyik nyelvjárása. Ez azonban két kritikus szempontból különbözik tőlük: (i) függő típusai vannak (lásd alább) és ii) az összes írható program befejeződik. (Vegye figyelembe, hogy az intuitív típusú elmélet befolyásolta a Haskell legutóbbi kiterjesztéseit általánosított algebrai adattípusokkal, amelyek néha hasonló szerepet játszhatnak, mint az induktív módon meghatározott függő típusok.)

2.2 A Curry-Howard levelezés

Mint már említettük, az az elv, hogy

egy állítás a bizonyítás típusa.

alapvető fontosságú az intuitionista típusú elméletben. Ezt az elvet Curry-Howard levelezésnek vagy Curry-Howard izomorfizmusnak is nevezik. Curry fedezetet talált az intuitív logika implicitív töredéke és az egyszerűen beírt lambda-calculus között. Howard kiterjesztette ezt a levelezést az elsőrendű predikatív logikára. Az intuitív típusú elméletben ez a megfelelés a javaslat és a típusok azonosításává válik, amelyet kibővítettek, hogy magában foglalja a magasabb típusok és más mennyiségi meghatározását is.

2.3 Bizonyítási objektumok halmaza

Tehát milyenek ezek a bizonyító tárgyak? Ezeket nem logikai származtatásoknak, hanem inkább valamilyen (strukturált) szimbolikus bizonyítéknak kell tekinteni, hogy valami igaz. Az ilyen bizonyítékok másik kifejezése az „igazság-készítő”.

Utasító jellegű, mint kissé durva első megközelítés, ha a típust rendes halmazokkal helyettesítjük ebben a levelezésben. Adjon meg egy halmazot (E_ {m, n}) (m, n / a {{ mathbb N}}) függvényében:

) E_ {m, n} = / balra { kezd {tömb} {ll} {0 } & / mbox {if (m = n)} / \ nem lakkolható & / mbox {if (m / ne n).} vége {tömb} jobbra.)

Akkor (E_ {m, n}) pontosan nem üres, amikor (m = n). A halmaz (E_ {m, n}) megfelel (m = n) állításnak, és a (0) szám egy bizonyíték-objektum (igazság-készítő), amely a halmazokat éli (E_ {m, m}).

Tekintsük azt az állítást, hogy (m) páros szám, a képletben kifejezve (létezik n / a {{ mathbb N}} -ben. M = 2n). Az általános halmazelméleti összegű művelet segítségével felépíthetjük a képletnek megfelelő bizonyítási objektumok halmazát. Tegyük fel, hogy (A_n) ((n / a {{ mathbb N}})) halmazok családja. Akkor az elválasztott összeget a párok halmaza adja meg

[(Sigma n / a {{ mathbb N}} -ben) A_n = {(n, a): n / a {{ mathbb N}} -ben, a / A_n } -ben.)

Ha ezt a konstrukciót alkalmazzuk a (A_n = / E_ {m, 2n}) családra, látjuk, hogy ((Sigma n / a {{ mathbb N}} -ben) E_ {m, 2n}) pontosan akkor, ha van (n / a {{ mathbb N}}) -ben (m = 2n). Az általános halmazelméleti termékművelettel (((Pi n / a {{ mathbb N}}) A_n) hasonló módon nyerhetünk egy halmazt, amely megfelel egy általánosan számszerűsített állításnak.

2.4 Függő típusok

Az intuitív típusú elméletben vannak primitív típusú alakítók: (Sigma) és (Pi) az általános összegekhez és termékekhez, és (I) az identitás típusokhoz, hasonlóak a fentebb leírt halmazelméleti konstrukciókhoz. A halmaznak megfelelő (I (N, m, n)) azonosítótípus (E_ {m, n}) egy példa egy függő típusra, mivel az (m) és (n). Indexelt típuscsaládnak is nevezik, mivel ez egy olyan típusú család, amelyet (m) és (n) indexel. Hasonló módon az ilyen típusú család általános diszjunkt összege ((Sigma x {:} A. \, B) és az általános kartéziai termék (Pi x {:} A., B) is kialakítható. (B) indexelve: (x {:} A), amely megfelel a fenti elméleti összegnek és a fenti termékműveleteknek.

A függő típusokat primitív rekurzióval is meghatározhatjuk. Példa erre az (n) - összetevők (A ^ n) típusú elemekre, amelyek az (A) típusú és az (n {:} N) által indexált elemek, amelyeket az egyenletek határoznak meg

) kezdődik {igazítás *} A ^ 0 & = 1 \\ A ^ {n + 1} & = A / alkalommal A ^ n / vége {igazítás *})

ahol (1) egy elemtípus és (times) kétféle kartéziai terméket jelöl. Megjegyezzük, hogy a függő típusok bevezetik a számításokat típusokban: a fenti meghatározó szabályok számítási szabályok. Például a (A ^ 3) kiszámításának eredménye (A / idő (A / idő (A / idő 1))).

2.5 Javaslatok mint típusok az intuíciós típusú elméletben

Ha a javaslatok típusaként vannak, akkor a predikátumok függõ típusúakká válnak. Például a (mathrm {Prime} (x)) predikátum válik annak a bizonyítéknak a típusává, hogy (x) elsődleges. Ez a típus a (x) -tól függ. Hasonlóképpen, (x <y) az a bizonyíték, amely (x) kisebb, mint (y).

Az állítások típusként értelmezett Curry-Howard értelmezése szerint a logikai állandók típusalakítókként értelmezendők:

) kezdődik {igazítás *} bot & = / varnothing \\ / top & = 1 \\ A / vee B & = A + B \\ A / ék B & = A / alkalommal B \\ A / supset B & = A / jobbra mutató nyíl B \\ / létezik x {:} A. \, B & = / Sigma x {:} A. \, B \\ / forall x {:} A. \, B & = / Pi x {:} A. \, B / end {igazítás *})

ahol (Sigma x {:} A. \, B) a (A) - indexált típuscsalád (B) és (Pi x {:} A.) diszjunkt összege. B) annak derékszögű terméke. A (Sigma x {:} A. \, B) kanonikus elemei párok ((a, b)) olyanok, hogy (a {:} A) és (b {:} B [x: = a]) (az a típus, amelyet úgy kapunk, hogy a (x) összes szabad előfordulását (B) helyettesíti (a)). A (Pi x {:} A. \, B) elemei (kiszámítható) függvények (f) olyanok, hogy (f \, a {:} B [x: = a]), bármikor (a {:} A).

Például vegye figyelembe a javaslatot

) kezdődik {egyenlet} forall m {:} N. \, / létezik n {:} N. \, m / lt n / wedge / mathrm {Prime} (n) tag {1} label {prop1} end {egyenlet})

kifejezve, hogy vannak önkényesen nagy prímok. A Curry-Howard értelmezés szerint ez lesz a (Pi m {:} N. \, / Sigma n {:} N. \, m / lt n / times / mathrm {Prime} (n)) típusé. azon függvények száma, amelyek egy számot (m) hármasra ((n, (p, q)))) jelölnek, ahol (n) egy szám, (p) egy bizonyíték arra, hogy (m / lt n) és (q) annak igazolása, hogy (n) elsődleges. Ez a bizonyítás mint program elv: az önkényesen nagy primok létezésének konstruktív bizonyítéka olyan programmá válik, amely bármely számmal nagyobb számot hoz létre, valamint annak igazolását, hogy valóban nagyobb és valóban prím.

Ne feledje, hogy a bizonyítás, amely ellentmondást eredményez annak feltételezéséből, hogy a legnagyobb prím van, nem konstruktív, mivel kifejezetten nem ad lehetőséget egy még nagyobb prím kiszámítására. Ahhoz, hogy ezt a bizonyítékot építő jellegűvé tegyük, kifejezetten meg kell mutatnunk, hogyan kell felépíteni a nagyobb prímt. (Mivel a fenti állítás (ref {prop1}) egy (Pi ^ 0_2) - képlet, akkor például Friedman A-fordítását használhatjuk, hogy egy ilyen igazolást a klasszikus aritmetikában az intuitív aritmetika bizonyítékává tegyünk, és így egy bizonyíték az intuitív típusú elméletben.)

3. Alapvető intuíciós típusú elmélet

Bemutatjuk az intuitív típusú elmélet alapvető változatát, amely szorosan kapcsolódik az elméletnek az első változatához, amelyet Martin-Löf 1972-ben mutatott be (Martin-Löf 1998 [1972]). A tipizált intuitív predikátum logika Curry-Howard értelmezéséhez a fent felsorolt típusmeghatározók mellett kétféle típus van: a természetes számok (N) típusa és a kis típusú (U) típus.

A kapott elmélet bizonyítható, hogy tartalmazza az intuitív számelméletet (HA) (Heyting aritmetika), a Gödel magasabb típusú primitív rekurzív függvények rendszerét (T) és a ((HA) omega) elméletet magasabb típusú Heyting aritmetika.

Ez az alapvető intuitív jellegű elmélet nem csak az eredeti, hanem talán a minimális változat is, amely az elmélet alapvető jellemzőit mutatja be. Későbbi kiterjesztések primitív identitástípusokkal, megalapozott fatípusokkal, univerzum-hierarchiákkal, valamint az induktív és induktív-rekurzív definíciók általános elképzeléseivel növelték az elmélet bizonyításelméleti erejét, és még kényelmesebbé tették a matematika programozására és formalizálására. Például jól megalapozott fák hozzáadásával értelmezhetjük Aczel (1978 [1977]) konstruktív Zermelo-Fraenkel halmazelméletét ((CZF)). Azonban a következő szakaszig várunk, hogy leírjuk ezeket a kiterjesztéseket.

3.1. Ítéletek

Martin-Löf (1996) általános logikai filozófiát mutat be, amelyben az ítélet hagyományos fogalmát kibővítik és központi pozícióba helyezik. Az ítélet nem csupán egy állítás megerősítése vagy tagadása, hanem egy általános tudás cselekedete. A matematikai érvelés során megítéljük a matematikai objektumokat. Az ítélet egyik formája annak kijelentése, hogy valamely matematikai állítás igaz. Az ítélet másik formája annak megállapítása, hogy valami matematikai objektum, például halmaz. A logikai szabályok módszereket adnak a korábbi ítéletekből származó helyes ítéletek előállításához. Az ilyen szabályokkal kapott ítéletek fa formában is bemutathatók

) infer [r_4] {J_8} { infer [r_1] {J_3} {J_1 & J_2} & / infer [r_3] {J_7} { infer [r_5] {J_5} {J_4} & J_6}}]

vagy egymást követő formában

  • (1) (J_1 / quad / text {axiom})
  • (2) (J_2 / quad / text {axiom})
  • (3) (J_3 / quad / szöveg {szabály szerint (r_1) az (1) és (2) részből})
  • (4) (J_4 / quad / text {axiom})
  • (5) (J_5 / quad / szöveg {szabály szerint (r_2) a (4) -től})
  • (6) (J_6 / quad / text {axiom})
  • (7) (J_7 / quad / text {szabály szerint (r_3) az (5) és (6) részből})
  • (8) (J_8 / quad / szöveg {szabály szerint (r_4) a (3) és (7) részből})

Ez utóbbi forma általános a matematikai érvekben. Az ilyen axiómákból logikai szabályok által létrehozott szekvencia vagy fa egy ítélet származtatása vagy demonstrálása.

Az elsőrendű indokolást egyetlen típusú ítélet alapján lehet bemutatni:

a (B) állítás igaz azon hipotézis alapján, hogy a (A_1, / ldots, A_n) állítások igazak.

Ezt a hipotetikus ítéletet úgynevezett Gentzen-sorozatként írjuk

[A_1, / pontok, A_n { vdash} B.)

Vegye figyelembe, hogy ez egy egyetlen ítélet, amelyet nem szabad összekeverni az ítélet ({ vdash} B) ítéletekből való kiszámításával ({ vdash} A_1, / ldots, { vdash} A_n). Ha (n = 0), akkor a kategorikus ítélet ({ vdash} B) kijelenti, hogy (B) feltételezések nélkül igaz. Szekvenciális jelöléssel a konjunktív bevezetés ismert szabályává válik

) következtetni [(I. terület)] {A_1, / ldotok, A_n { vdash} B / Föld C} {A_1, / ldotok, A_n { vdash} B & A_1, / ldotok, A_n { vdash} C}.)

3.2. Ítélőlapok

A Martin-Löf típusú elméletnek az ítéletek négy alapformája van, és lényegesen bonyolultabb rendszer, mint az elsőrendű logika. Ennek egyik oka az, hogy a javaslatok és típusok azonosítása miatt a derivációkban több információ található. Egy másik ok az, hogy a szintaxis jobban szerepel. Például a jól kialakított képleteket (típusokat) a bizonyíthatóan igaz képletekkel (lakott típusok) egyidejűleg kell generálni.

A kategorikus ítélet négy formája

  • (vdash A \; { rm type}), ami azt jelenti, hogy (A) jól kialakított típus,
  • (vdash a {:} A), ami azt jelenti, hogy (a) típusa (A),
  • (vdash A = A '), ami azt jelenti, hogy (A) és (A') azonos típusúak,
  • (vdash a = a '{:} A), vagyis (a) és (a') azonos típusú elemek (A (A)).

Általában véve egy ítélet hipotetikus, vagyis kontextusban, (Gamma), azaz a ((x_1 {:} A_1, / ldots, x_n {:} A_n) változók listája, amely előfordulhatnak szabadon az ítéletben, a típusukkal együtt. Vegye figyelembe, hogy a kontextusban lévő típusok a korábbi típusok változóitól függhetnek. Például: (A_n) függhet a (x_1 {:} A_1, / pontok, x_ {n-1} {:} A_ {n-1}) függvényeitől. A hipotetikus ítéletek négy formája

  • (Gamma / vdash A \; { rm type}), ami azt jelenti, hogy (A) a környezetben jól kialakított típus (Gamma),
  • (Gamma / vdash a {:} A), ami azt jelenti, hogy (a) típusa (A) a kontextusban (Gamma),
  • (Gamma / vdash A = A '), ami azt jelenti, hogy (A) és (A') azonos típusúak a kontextusban (Gamma),
  • (Gamma / vdash a = a '{:} A), ami azt jelenti, hogy (a) és (a') azonos típusú elemek (A) a kontextusban (Gamma).

A javaslat mint típus értelmezés

) tag {2} label {analytic} vdash a {:} A)

értelmezhető úgy az ítéletként, hogy (a) bizonyíték-objektum a (A) javaslathoz. Amikor ezt az objektumot elnyomjuk, akkor egy olyan ítéletet kapunk, amely megfelel a szokásos elsőrendű logikának (lásd fent):

) tag {3} label {szintetikus} vdash A \; {igaz r}.)

3.1. Megjegyzés Martin-Löf (1994) szerint Kant a priori analitikus megítélése és a priori szintetikus megítélése a logika birodalmában például ([analitikus]) és ([szintetikus]) lehet. Az analitikus ítéletben ([analitikus]) minden, ami az ítélet nyilvánvalóvá tételéhez szükséges, kifejezett. Szintetikus változatához ([szintetikus]) valószínűleg bonyolult konstrukciót kell biztosítani (a) annak nyilvánvalóvá tétele érdekében. Az analitikus és szintetikus megértésnek meglepő következménye van, hogy „a logikai törvények szokásos megfogalmazásukban szintetikusak”. Martin-Löf (1994: 95). Elemzése tovább adja:

„[…] Az analitikus ítéletek logikája, azaz a két elemzési forma megítélésének logikája teljes és eldönthető, míg a szintetikus ítéletek logikája hiányos és nem dönthető, amint azt Gödel megmutatta.” Martin-Löf (1994: 97).

A két elemző ítélet ((vdash a:: A) és (vdash a = b {:} A) dönthetősége a típuselmélet metamatematikai tulajdonságain alapszik: erős normalizálás és eldönthető típusellenőrzés.

Időnként a következő formákat is kifejezetten az elmélet ítéleteinek tekintik:

  • (Gamma \; { rm kontextus}), ami azt jelenti, hogy (Gamma) jól kialakított kontextus.
  • (Gamma = / Gamma '), ami azt jelenti, hogy (Gamma) és (Gamma') azonos összefüggések.

Az alábbiakban röviden röviden rövidítjük a ((Gamma / vdash A \; { rm type}) ítéletet (Gamma / vdash A) és (Gamma \; { rm kontextus}) mint (Gamma / vdash.)

3.3 Következtetési szabályok

A szabályok meghatározásakor a (Gamma) betűt használjuk mint kontextusokat átfogó metaváltozót, (A, B, / ldots) mint típustól függő metaváltozókat, és (a, b, c, d, e, f, / ldots) meta-változókként kifejezések között.

A következtetési szabályok első csoportja az általános szabályok, beleértve a feltételezés, a helyettesítés és a kontextus kialakításának szabályait. Vannak olyan szabályok is, amelyek kifejezik, hogy az egyenlőség ekvivalencia-viszony. Számos ilyen szabály létezik, és csak a típus egyenlőség rendkívül fontos szabályát mutatjuk be, amely kulcsfontosságú a típusok számításához:

) frac { Gamma / vdash a {:} A / hspace {2em} Gamma / vdash A = B} { Gamma / vdash a {:} B})

A fennmaradó szabályok a típusalakítókra vonatkoznak. Ezeket a formálási, bevezetési, megszüntetési és egyenlőségi szabályoknak kell besorolni.

3.4 Intuicionista prediktív logika

Csak a (z) (Pi) szabályokat adjuk meg. Hasonló szabályok vannak a más típusú formázókra is, amelyek megfelelnek a tipizált predikátum logika logikai állandóinak.

Az alábbiakban (B [x: = a]) azt a kifejezést jelenti, amelyet úgy szerezünk, hogy helyettesítjük a (a) kifejezést a (x) változó minden szabad előfordulása esetén a (B) -ban (elkerülve a változó rögzítését).

(Pi) - képződését.) frac { Gamma / vdash A / hspace {2em} Gamma, x {:} A / vdash B} { Gamma / vdash / Pi x {:} A. B}) (Pi) -bevezetés.) frac { Gamma, x {:} A / vdash b {:} B} { Gamma / vdash / lambda x. b {:} Pi x {:} A. B}) (Pi) - megszüntetés.) frac { Gamma / vdash f {:} Pi x {:} AB / hspace {2em} Gamma / vdash a {:} A} { Gamma / vdash f \, a {:} B [x: = a]}) (Pi) - egyenlőség.) frac { Gamma, x {:} A / vdash b {:} B / hspace {2em} Gamma / vdash a {:} A} { Gamma / vdash (lambda xb), a = b [x: = a] {:} B [x: = a]}) Ez a (beta) átalakítás szabálya. Hozzáadhatjuk a (eta) - átalakítás szabályát:) frac { Gamma / vdash f {:} Pi x {:} A. B} { Gamma / vdash / lambda x. f \, x = f {:} Pi x {:} A. B}.)

Ezenkívül vannak kongruenciaszabályok, amelyek kifejezik, hogy az alapítási, bevezetési és megszüntetési szabályok által bevezetett műveletek megőrzik az egyenlőséget. Például a ((Pi)) kongruenciaszabálya

) frac { Gamma / vdash A = A '\ hspace {2em} Gamma, x {:} A / vdash B = B'} { Gamma / vdash / Pi x {:} A. B = / Pi x {:} A '. B '}.)

3.5 Természetes számok

Mint a Peano aritmetikában, a természetes számokat 0 és az azt követő művelet (s) generálja. A kiküszöbölési szabály kimondja, hogy csak így lehetséges a természetes szám előállítása.

A függvényre (f (c) = / R (c, d, xy.e)) írunk, amelyet a természetes szám primitív rekurziója határoz meg (c) bázissal (d) és lépés függvény (xy.e) (vagy alternatíva szerint (lambda xy.e)), amely leképezi az előző szám (y) értékét (x {:} N) a (s (x)). Vegye figyelembe, hogy a (R) új változó-kötő operátor: a (x) és a (y) változók kötve lesznek a (e) mezőben.

(N) - képződését.) Gamma / vdash / N) (N) - bevezetés.) Gamma / vdash 0 {:} N / hspace {2em} frac { Gamma / vdash a {:} N} { Gamma / vdash s (a) {:} N}) (n) - megszüntetése.) frac { Gamma, x {:} N / vdash C / hspace {1em} Gamma / vdash c {:} N / hspace {1em} Gamma / vdash d {:} C [x: = 0] hspace {1em} gamma, y {:} N, z {:} C [x: = y] vdash e {:} C [x: = s (y)]} { Gamma / vdash / R (c, d, yz.e) {:} C [x: = c]}) (N) - egyenlőség (megfelelő helyiségekben).) kezdődik {igazítás *} R (0, d, yz.e) & = d {:} C [x: = 0] / \ R (s (a), d, yz.e) & = e [y: = a, z: = / R (a, d, yz.e)] {:} C [x: = s (a)] vége {igazítás *})

Az (N) - kiküszöbölés szabálya egyidejűleg kifejezi egy primitív rekurzióval definiált függvénytípust, és a Curry-Howard értelmezés szerint a matematikai indukció szabályát: bizonyítjuk a természetes szám (C) tulajdonságát (x) indukcióval (x).

A Gödel Rendszere (T) alapvetően intuitív típusú elmélet, csak a formátumokat (N) és (A / jobbra mutató B) (a függvény típusa (A) - (B), amely a ((Pi x {:} A) B) különleges esete, ahol (B) nem függ a (x {:} A) -tól. Mivel a System (T) rendszerben nincsenek függő típusok, a szabályok egyszerűsíthetők.

3.6 A kis típusok univerzuma

A Martin-Löf típuselmélet első változatának (Martin-Löf 1971a) axiómája szerint minden típus létezik. Ezt bizonytalannak bizonyította Girard, aki úgy találta, hogy a Burali-Forti paradoxon kódolható ebben az elméletben.

Ennek a kóros implikativitásnak a leküzdése érdekében, de az expresszivitás egy részének megőrzése érdekében, Martin-Löf 1972-ben bevezette a kis típusok univerzumát ((U)), amely az elmélet minden típusú formája alatt zárva volt, azzal a különbséggel, hogy nem tartalmazza magát (Martin- Löf 1998 [1972]). A szabályok a következők:

(U) - képződését.) Gamma / vdash / U) (U) - bevezetés.) Gamma / vdash / nem változtat {:} U / hspace {3em} Gamma / vdash 1 {:} U)) frac { Gamma / vdash A {:} U / hspace {2em} Gamma / vdash B {:} U} { Gamma / vdash A + B {:} U} hspace {3em} frac { Gamma / vdash A {:} U / hspace {2em} Gamma / vdash B {:} U} { Gamma / vdash A / B-szer: {:} U})) frac { Gamma / vdash A {:} U / hspace {2em} Gamma / vdash B {:} U} { Gamma / vdash A / jobbra mutató nyíl B {:} U})) frac { Gamma / vdash A {:} U / hspace {2em} Gamma, x {:} A / vdash B {:} U} { Gamma / vdash / Sigma x {:} A., B {:} U} hspace {3em} frac { Gamma / vdash A {:} U / hspace {2em} Gamma, x {:} A / vdash B {:} U} { Gamma / vdash / Pi x {:} A., B {:} U})) Gamma / vdash / N {:} U) (U) - megszüntetés.) frac { Gamma / vdash A {:} U} { Gamma / vdash A})

Mivel a (U) egy típus, az (N) - elimination segítségével felhasználhatjuk a kis típusok primitív rekurzióval történő meghatározását. Például, ha (A: / U), akkor a következőképpen definiálhatjuk az (n) - elemek csoportjainak típusát a (A) elemben:

[A ^ n = / R (n, 1, xy. A / y-szor) {:} U)

Ez a típuselméleti univerzum (U) analóg egy Grothendieck-univerzummal a halmazelméletben, amely egy halmazkészlet, amely minden módon bezáródik, és a halmazok Zermelo-Fraenkel halmazelméletben minden módon felépíthetők. A Grothendieck-univerzum létezését a Zermelo-Fraenkel-készlet elmélet szokásos axiómái nem igazolják, hanem új axiómára van szükség.

Martin-Löf (1975) szerint az univerzum a világegyetemek számítható hierarchiájára terjed ki

) U_0: / U_1: / U_2: / cdots.)

Ilyen módon minden típusnak van típusa, nem csak minden egyes kis típusnak.

3.7 Propozicionális identitás

Fent bemutattuk az egyenlőségről szóló ítéletet

) tag {4} label {defeq} Gamma / vdash a = a '{:} A.)

Ezt általában „meghatározási egyenlőségnek” nevezik, mert úgy határozhat, hogy normalizálja a (a) és a (a) kifejezéseket, és ellenőrzi, hogy a normál formák azonosak-e. Ez az egyenlőség azonban ítélet, és nem állítás (típus), így az ilyen ítéleti egyenlőségeket indukcióval nem tudjuk bizonyítani. Ezért be kell vezetnünk az állítólagos identitástípusokat. Például a természetes számok azonosító típusát (I (N, m, n)) a ((U)) által értékelt primitív rekurzió határozhatja meg. Ezután kifejezhetjük és igazolhatjuk a Peano-axiómákat. Ezenkívül az ufnciók kiterjesztő egyenlősége a következővel határozható meg:

) I (N / jobbra nyíl / N, f, f ') = / Pi x {:} N. / I (n, f \, x, f '\, X).)

3.8 A választás axióma tétele

A választott axióma következő formája az intuitív kvantifikátorok BHK-értelmezésének közvetlen következménye, és az intuitív típusú elméletben könnyen bebizonyítható:

[(Pi x {:} A. / Sigma y {:} B. C) jobbra mutató / Sigma f {:} (Pi x {:} A. B). C [y: = f \, x])

Ennek oka az, hogy (Pi x {:} A. / Sigma y {:} B. C) az a függvénytípus, amely leképezi az elemeket (x {:} A) párokba ((y, z)) (y {:} B) és (z {:} C) gombbal. A (f) választási függvényt a pár első (y {:} B) összetevőjének visszaadásával kapjuk.

Talán meglepő, hogy az intuitív típusú elmélet közvetlenül validálja a választott axiómát, mivel ezt az axiómát gyakran építőipari szempontból problematikusnak tekintik. Ennek a helyzetnek az egyik lehetséges magyarázata, hogy a fentiek a típusok által választott axióma, és hogy a típusok általában nem a klasszikus értelemben vett halmazok konstruktív közelítései. Például, a valós számot Cauchy-sorozatként reprezentálhatjuk az intuitív típusú elméletben, de a valós számok halmaza nem a Cauchy-szekvenciák típusa, hanem a Cauchy-szekvenciák típusa, az egyenlőtlenségig. Általánosabban fogalmazva, a Bishop konstruktív matematikájában a halmazt egy típus (általában „preset” -nek nevezzük) képviseli, egyenértékűségi relációval együtt.

Ha (A) és (B) ekvivalencia-viszonyokkal vannak ellátva, akkor természetesen nincs garancia arra, hogy a fenti (f) választási függvény extenzív abban az értelemben, hogy ekvivalens elemeket azonosít egyenértékű elemekkel. Ez a választott kiterjesztésű axióma kudarca, elemzéshez lásd Martin-Löf (2009).

4. Bővítmények

4.1 A logikai keret

A fentiek kiegészítik az intuitív típusú elmélet alapvető verziójának leírását, amely közel áll a Martin-Löf 1998 [1972] -hez.

Martin-Löf 1986-ban javasolta az intuitív típusú elmélet újrafogalmazását; lásd kiállítási anyagot Nordström, Peterson és Smith (1990). A cél egy kompaktabb megfogalmazás volt, ahol a (lambda) és (Pi) az egyetlen változó kötési művelet. Manapság ez az elmélet fő változata. Ez az Agda bizonyíték asszisztens alapja. Az 1986-os elmélet két részből áll:

  • a típuselmélet (a logikai keret);
  • a halmazok elmélete (kis típusok).

4.1. Megjegyzés Vegye figyelembe, hogy a logikai keretben a „set” szó nem esik egybe azzal, ahogyan azt Bishop konstruktív matematikájában használják. A zavar elkerülése érdekében a típusokat és az ekvivalencia-kapcsolatokat rendszerint „setoidoknak” vagy „kiterjesztési halmazoknak” hívják az intuitív típuselméletben.

A logikai keretnek csak két típusa van: (Pi x {:} A. B) (általában ((x {:} A) B) vagy ((x {:} A) jobbra mutató nyíl B) a logikai keret formulációjában) és (U) (általában (Set) néven). A (Pi x {:} A. B) ((((x {:} A) jobbra mutató B)) szabályai megegyeznek a fentebb megadottakkal (ideértve a (eta) - átalakítást). A (U) ((Set)) szabályai szintén megegyeznek, azzal a különbséggel, hogy a logikai keret csak a ((Pi)) típusú formáció alatt zárást ír elő.

A többi kicsi típusú formázót („set formators”) bevezetik a készlet elméletébe. A logikai keretmegfogalmazásban az egyes kialakulási, bevezetési és kiküszöbölési szabályok kifejezhetők egy új állandó megadásával. Például a természetes számokra vonatkozó szabályok válnak

) kezdődik {igazítás *} N &: / Beállítás, \\ 0 &: / N, \\ / s &: / N / jobbra nyíl / N, \\ / R &: (C {:} N / jobbra nyíl / Set) jobbra nyíl C \, 0 / jobbra nyíl ((x {:} N) jobbra nyíl C \, x / jobbra nyíl C \, (s \, x)) jobbra nyíl (c {:} N) jobbra mutató nyíl C \, c. / End {align *})

ahol kihagytuk a közös kontextust (Gamma), mivel ezeknek az állandóknak a típusai zárva vannak. Vegye figyelembe, hogy a (R) rekurziós operátornak van egy első argumentuma (C {:} N / jobbra nyíl / Set), az eredeti megfogalmazással ellentétben.

Ezenkívül az egyenlőség szabályai egyenletek formájában is kifejezhetők

) kezdődik {igazítás *} R \, C \, d \, e \, 0 & = d {:} C \, 0 \\ / R \, C \, d \, e \, (s \, a) & = e \, a \, (R \, C \, d \, e \, a) {:} C \, (s \, a) vége {igazítás *})

megfelelő feltételezések mellett.

A folytatásban a típuselmélet több kiterjesztését mutatjuk be. A megjelenítés egységességének biztosítása érdekében azonban nem a típuselmélet logikus keretmegjelenítését fogjuk használni, hanem ugyanazt a jelölést fogjuk használni, mint a 2. szakaszban.

4.2 Általános személyazonosság-típus

Mint fentebb említettük, a természetes számok azonosságát primitív rekurzióval lehet meghatározni. Más típusú személyazonossági viszonyok meghatározhatók az intuitionista típuselmélet 2. változatban bemutatott alapváltozatában is.

Martin-Löf (1975) mindazonáltal kiterjesztette az intuitív típusú elméletet minden típusú egységes primitív identitástípussal. A (I) szabályai kifejezik, hogy az identitásviszony induktív módon generálódik a reflexivitás bizonyításával, egy kanonikus állandóval, melynek neve (r). (Ne feledje, hogy a (r) a bizonyíték-objektumok bevezető bemutatásakor a 2.3-as számmal lett kódolva. Az azonosító típus eliminációs szabálya az identitás kiküszöbölésének általánosítása a predikátum logikában, és bevezet egy eliminációs állandót (J). Itt a Paulin-Mohring (1993) megfogalmazását mutatjuk be, a Martin-Löf (1975) eredeti megfogalmazása helyett. A következtetési szabályok a következők.

(I) - kialakulását.) frac { Gamma / vdash A / hspace {1em} Gamma / vdash a {:} A / hspace {1em} Gamma / vdash a '{:} A} { Gamma / vdash / I (A, a, a ')})

(I. Bevezetés.) frac { Gamma / vdash A / hspace {1em} Gamma / vdash a {:} A} { Gamma / vdash / r {:} I (A, a, a)})

(I) - megszüntetése.

) frac { Gamma, x {:} A, y {:} I (A, a, x) vdash C / hspace {1em} Gamma / vdash b {:} A / hspace {1em} Gamma / vdash c {:} I (A, a, b) hspace {1em} Gamma / vdash d {:} C [x: = a, y: = r]} { Gamma / vdash / J (c, d) {:} C [x: = b, y: = c]})

(I) - egyenlőség (megfelelő feltevések mellett).

) kezdődik {igazítás *} J (r, d) & = d / vége {igazítás *})

Vegye figyelembe, hogy ha (C) csak (x: A) -tól és nem a bizonyítéktól (y: / I (A, a, x)) (és a bizonyítási objektumokat is elnyomjuk) függ a (I) - kiküszöbölés Az előző logikában visszanyerjük az identitás kiküszöbölésének szabályát.

Hofmann és Streicher (1998) a típuselmélet olyan modelljének megalkotásával, ahol a típusokat csoportoidokként értelmezik (kategóriák, ahol minden nyíl izomorfizmus), Hofmann és Streicher (1998) kimutatták, hogy az intuitív típusú elméletben nem bizonyítható, hogy (I (A, a, b) minden bizonyítéka)) azonosak. Ez az elmélet hiányosságának tűnhet, és Streicher új axiómát javasolt (K), amelyből következik, hogy (I (A, a, b)) minden bizonyítéka megegyezik a (r).

Az (I) -t gyakran intenzív identitás típusnak nevezik, mivel nem felel meg a funkciók kiterjeszthetőségének elvének. Az intuíciós jellegű elméletet az intencionális identitástípussal gyakran intenzív intuitív jellegű elméletnek is nevezik, hogy megkülönböztesse azt a kiterjesztő intuíciócionista típuselmélettől, amelyet a 7.1 szakaszban mutatunk be.

4.3 Jól megalapozott fák

A (W x {:} A. B) formájú jól megalapozott fákat Martin-Löf 1982-ben vezették be (és egy korlátozottabb formában Scott 1970). A (W x {:} A. B) elemei változó és tetszőleges elágazású fák: változóak, mert a (B) elágazó típust (x {:} A) indexeli, és tetszőleges, mert (B) tetszőleges lehet. A típust egy általános induktív meghatározás adja meg, mivel a jól megalapozott fák végtelenül elágazhatnak. Úgy gondolhatjuk, hogy a (W x {:} A. B) szabad kifejezés algebra, ahol minden (a {:} A) egy konstruktor kifejezést jelent (sup \, a) (esetleg végtelen) aritás (B [x: = a]).

(W) - képződését.) frac { Gamma / vdash A / hspace {2em} Gamma, x {:} A / vdash B} { Gamma / vdash / W x {:} A. B}) (W) -bevezetés.) frac { Gamma / vdash a {:} A / hspace {2em} Gamma, y {:} B [x: = a] vdash b: Wx {:} A. B} { Gamma / vdash / sup (a, yb): / W x {:} A. B})

Kihagyjuk a (W) - megszüntetés és (W) - egyenlőség szabályait.

Ha az megalapozott fákat hozzáadjuk az intuitív típusú elmélethez, jelentősen növekszik annak bizonyításelméleti ereje (Setzer (1998)).

4.4 Iteratív halmazok és CZF

A jól megalapozott fák fontos alkalmazása az Aczel (1978) konstruktív Zermelo Fraenkel-készletelmélet típus-elméleti modelljének felépítése. Ebből a célból meghatározza az iteratív halmazok típusát

) V = / W x {:} U. x.)

Legyen (A {:} U) kicsi típus, és (x {:} A / vdash M) egy iteratív halmazok indexált családja. Akkor (sup (A, xM)), vagy egy szugmatívabb jelöléssel ({M / mid x {:} A }) iteratív halmaz. Átfogalmazva: az iteratív halmaz egy iteratív halmazok egy kis típusa által indexált család.

Vegye figyelembe, hogy az iteratív halmaz alt="sep man icon" /> Hogyan idézhető ez a bejegyzés.

sep ember ikonra
sep ember ikonra

A bejegyzés PDF-verziójának előnézete a SEP Barátok társaságában.

inpho ikonra
inpho ikonra

Nézze meg ezt a belépési témát az Internet Filozófia Ontológiai Projektben (InPhO).

phil papírok ikonra
phil papírok ikonra

Továbbfejlesztett bibliográfia erre a bejegyzésre a PhilPapersnél, az adatbázisához kapcsolódó hivatkozásokkal.

Egyéb internetes források

  • Internet filozófiai enciklopédia: Konstruktív matematika
  • Scholarpedia: Számítási típusú elmélet
  • nLab: Típuselmélet

Ajánlott: