Comprensione della prova di forte normalizzazione del calcolo delle costruzioni


9

Ho difficoltà a comprendere la prova di una forte normalizzazione per il calcolo delle costruzioni. Cerco di seguire la prova nel documento di Herman Geuvers "Una breve e flessibile prova di forte normalizzazione per il calcolo delle costruzioni".

Posso seguire bene il ragionamento principale. Geuvers costruisce per ogni tipo T un'interpretazione [[T]]ξ basato su una valutazione delle variabili di tipoξ(α) . E poi costruisce qualche termine interpretazione(|M|)ρ basato su una valutazione delle variabili del termineρ(x) e dimostra che per valutazioni valide l'affermazione(|M|)ρ[[T]]ξ per tuttiΓM:T vale.

Il mio problema: per i tipi semplici (come i tipi di sistema F) l'interpretazione del tipo [[T]]ξ è davvero un insieme di termini, quindi l'affermazione(|M|)ρ[[T]]ξ ha senso. Ma per tipi più complessi l'interpretazione[[T]]ξ non è un insieme di termini ma un insieme di funzioni di alcuni spazi funzionali appropriati. Penso che capisco quasi la costruzione degli spazi delle funzioni, tuttavia non è possibile assegnare alcun significato a(|M|)ρ[[T]]ξ per la più complessa tipiT .

Qualcuno può spiegare o fornire collegamenti ad alcune presentazioni più comprensibili della prova?

Modifica: fammi provare a chiarire la domanda. Un contesto Γ ha dichiarazioni per le variabili di tipo α:A e le variabili oggetto. Una valutazione del tipo è valida, se per tutti (α:A)Γ con ΓA: allora ξ(α)ν(A) è valido. Ma ν(A) può essere un elemento di (SAT) e non solo SAT. Pertanto non è possibile definire una valutazione a termine valida per ρ(α) . ρ(α) deve essere un termine e non una funzione di uno spazio funzionale.

Modifica 2: Esempio che non funziona

Facciamo il seguente derivazione valida:

[]:axiom[α:]α:variable introduction[α:]:weaken[](Πα:.):product formation[β:Πα:.]β:(Πα:.)variable introduction

Nell'ultimo contesto una valutazione del tipo valida deve soddisfare ξ(β)ν(Πα:.)={f|f:SATSAT} . Per questo tipo di valutazione non esiste una valutazione a termine valida.


1
La metà delle persone che leggono questo penserà che sia SAT. Dovresti spiegare di cosa si tratta. Inoltre, la tua derivazione sembra un po 'strana. La seconda riga non dovrebbe menzionare α nella sua conclusione, dovrebbe leggere qualcosa come [ α : ] : , non dovrebbe? SATα[α:]:
Andrej Bauer,

SATΓT:sΓ,x:Tx:Ts

Capisco come hai ottenuto la seconda linea ma non è la premessa corretta per la formazione della terza linea, vero? Quale regola fornisce la terza riga.
Andrej Bauer,

r(s1,s2,s3;ΓA:s1;Γ,x:AB:s2Γ(Πx:A.B):s3r(,,)

[]:α:.αα:.

Risposte:


6

Sfortunatamente, non sono sicuro che ci siano più risorse amichevoli per i principianti rispetto all'account di Geuvers. Potresti provare questa nota di Chris Casinghino che fornisce un resoconto di numerose prove con dettagli lancinanti.

Non sono sicuro di comprendere l'essenza della tua confusione, ma penso che una cosa importante da notare, è il seguente lemma (Corollary 5.2.14), dimostrato nel classico testo di Barendregt :

ΓM:T  ΓT: or 

[[T]]ξ ΓM:T[[T]]ξ

(|t|)σ[[T]]ξΓt:T:V()P(Term)V()=SAT

SAT


1
Grazie per la spiegazione. Ciò risolve il mio problema di non comprendere le funzioni utilizzate nella dimostrazione di Geuver. Avevo già il sospetto di leggere e rileggere il documento di Geuver, ma tu lo hai reso cristallino.
helmut
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.