Qual è la relazione e la differenza tra il calcolo delle costruzioni induttive e la teoria del tipo intuitivo?


25

Come indicato nel titolo, mi chiedo qualsiasi relazione e differenza tra CIC e ITT. Qualcuno potrebbe spiegare o indicarmi un po 'di letteratura che confronta questi due sistemi? Grazie.


3
Per me ITT significa "Teoria intuitiva del tipo" che potrebbe significare un certo numero di cose. In particolare ci sono molte sottili variazioni dalle descrizioni originali di Martin-Lof, e sarebbe di aiuto discutere se fornissi il riferimento che descrive l'ITT a cui stai pensando. La risposta breve è questa: ITT nel senso di Martin-Lof senza universo è una sotto-teoria del CoC. In presenza di universi ma senza tipi induttivi, puoi schiacciare tutti gli universi nel singolo universo impredicativo del CoC. Con grandi tipi induttivi e grande eliminazione, le cose sono più complesse.
cody

1
Ah e una buona discussione di alcune di queste cose può essere trovata in Geuvers: cs.ru.nl/~herman/PUBS/CC_CHiso.ps.gz
cody

Grazie per i commenti e il documento collegato, cody. Sembra quello che sto cercando.
giorno

1
Una versione pdf dell'articolo citato da @cody: cs.ru.nl/~herman/PUBS/CC_CHiso.pdf
Steven Shaw

Risposte:


24

Ho già risposto in qualche modo, ma proverò a fornire una panoramica più dettagliata dell'orizzonte teorico del tipo, se vuoi.

Sono un po 'confuso sulle specifiche storiche, quindi i lettori più informati dovranno perdonarmi (e correggermi!). La storia di base è che Curry aveva scoperto la corrispondenza di base tra combinatori tipicamente semplici (o -terms) e la logica proposizionale, che è stata estesa da Howard per coprire la logica del primo ordine, e IIRC scoperto in modo indipendente da de Bruijn nelle indagini intorno al sistema Automath estremamente influente .λ

Il sistema Automath era un perfezionamento della semplice teoria dei tipi di Church, che a sua volta era una semplificazione drammatica della teoria dei tipi di Russel e Whitehead con universi e l' assioma della riducibilità . Questo era un terreno logico relativamente noto negli anni '60.

Tuttavia, dare un sistema coerente, semplice e fondamentale che comprendesse sia i sistemi di prova che quelli a termine era ancora una domanda molto aperta nel 1970, e Per Martin-Löf ha dato una prima risposta. Fornisce una panoramica molto filosofica sul significato delle costanti logiche e sulla giustificazione delle leggi logiche . Sostiene che sia in logica che in matematica, il significato delle costruzioni può essere dato esaminando le regole di introduzione che consentono la formazione di quelle costruzioni come giudizi, ad esempio per congiunzione

ABAB

Determina la regola di eliminazione corrispondente. Ha quindi dato un potente sistema di base basato su tali giudizi, permettendogli di dare un sistema di base simile ad Automath usando pochissime costruzioni sintattiche. Girard ha scoperto che questo sistema era contraddittorio, spingendo Martin-Löf ad adottare universi predicativi di tipo "Russel" , limitando fortemente l'espressività della teoria (rimuovendo efficacemente l'assioma della riducibilità) e rendendolo leggermente più complesso (ma aveva il vantaggio di rendendolo coerente).

Le eleganti costruzioni che permettevano la definizione dei simboli logici non funzionavano più, il che ha spinto ML a introdurli in una forma diversa, come famiglie induttivamente definite . Questa è un'idea molto potente, in quanto consente di definire qualsiasi cosa, dall'uguaglianza di giudizio e dagli operatori logici a numeri naturali e tipi di dati funzionali come appaiono nell'informatica. Nota che ogni famiglia che aggiungiamo è simile all'aggiunta di un numero di assiomi, che devono essere giustificati come coerenti in ogni istanza. Questo sistema (tipi dipendenti + universi + famiglie induttive) è di solito ciò che viene definito ITT .

Tuttavia ci fu una frustrazione persistente, poiché il potente ma semplice sistema di base era incoerente e il sistema risultante era più complesso e un po 'debole (nel senso che era difficile sviluppare gran parte del moderno quadro matematico in esso). Entra Thierry Coquand, che con il suo supervisore Gerard Huet, ha introdotto il Calculus of Constructions (CoC) , che ha risolto principalmente questi problemi: un approccio unificato a prove e tipi di dati, un potente sistema di base (impredicativo) e la capacità di definire "costruzioni "della varietà logica o matematica. Questo alla fine è maturato in una vera e propria implementazione di un sistema progettato come una moderna alternativa ad Automath, culminando nel sistema Coq che conosciamo e amiamo.

Consiglio vivamente questo documento di base sul CoC, poiché Thierry conosce una quantità ridicola sullo sviluppo storico della teoria dei tipi e probabilmente lo spiega molto meglio di me. Potresti anche dare un'occhiata al suo articolo sulla teoria dei tipi, anche se non lo fa spiegare la corrispondenza CH in modo molto dettagliato.


5
Potrebbe valere la pena notare che il CoC, nonostante tutta la potenza della sua costruzione impredivata di tipi di dati, non può dimostrare l'induzione, e autori successivi (ad esempio Paulin-Mohring) hanno esteso il CoC con costruzioni induttive alla Martin-Löf, dando il calcolo di costruzioni induttive, che viene utilizzato in Coq.
Martin Berger,

1
Sì, ho dimenticato di commentare questo. Tuttavia, è sufficiente aggiungere il semplice assioma (per una codifica adeguata dei concetti coinvolti). 10
cody

1
Sono stati aggiunti tipi induttivi per migliorare il comportamento computazionale in aggiunta a questo.
cody

1
Bene, la funzione precedente non può essere calcolata in tempo costante usando la definizione impredicativa per i numeri naturali. Vedi ad esempio qui o qui .
cody

1
Sì, numeri della Chiesa, ma un risultato simile sarà valido per tipi di dati più sensibili come gli elenchi collegati. L'esempio di Turing Machine tende a suggerire che anche le macchine di Turing non sono adatte al calcolo pratico! :)
cody
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.