Cours 4: Normalisation du système F

Expression, dans Peano, du fait que Redρ(A) est un candidat de réductibilité:

Lemme: Pour tout A et X=fv(A)

PA2,CR(X)CR(ξA)

Preuve: Par induction sur A (on pourrait faire toute la preuve en déduction naturelle).

On va appeler

Redρ(A){MMA sous ρ}

ρ:Var2Candidats et “sous ρ” veut dire que MA lorqu’on interprète les fv(A) par ρ

  • A=X est immédiat, car Redρ(X)=ρ(X)
  • A=BC

CR1

CR1:MRedρ(BC) et MM

On veut démontrer que MRedρ(BC)={PNRedρ(B),PNRedρ(C)}

Soit NRedρ(B). Il suffit de montrer que MNRedρ(C).

Or, MNRedρ(C), et par hypothèse d’induction, Redρ(C) est clos par extension: donc Redρ(C)MNMN

CR2

CR2:NNnon-rédex et non-abstractionsRedρ(BC)

Soit M normal neutre. Il suffit de prendre NRedρ(B), et montrer que MNRedρ(C).

Par hypothèse d’induction, NWN, donc il existe N0 normal tel que

NN0

Et donc

MNMN0NN

Donc par hypothèse d’induction,

MN0Redρ(C)

et comme, toujours par induction, Redρ(C) est clos par extension:

MNRedρ(C)

Redρ(BC)WN

Soit MRedρ(BC). On veut démontrer que M est normalisable.

Par hyp d’induction, xRedρ(B).

Donc par hypothèse :

MxRedρ(C)WN

Lemme: Si Mx est normalisable, alors M est normalisable

Preuve: élémentaire.

Donc MWN.

Rappel:

MX.AX.CR(X)MA Redρ(X.A){MC candidat,MRedρ[XC](A)}=C candidatRedρ[XC](A)

On remarque que être CR est clos par intersection arbitraire (CR1: clôture par extension, CR2: NNWN), donc Redρ(X.A) est un candidat.


Lemme d’adéquation: x1:C1,,xn:CnΓM:A dans le système F, avec X=fv(C1,,Cn,A) implique

PA2,CR(X),N1C1,,NnCnM[N/x]A

Preuve: par induction sur la dernière règle dans la dérivation δ de ΓM:A.

var

δ=Γ,x:Ax:A(var) immédiat

lam

δ=Γ,x:BδM:CΓλx.M:BC(var)

Posons MM[N/x]

Alors

PA2,CR(X),NBM[N/x]C

Par le lemme CR1 (clôture par extension), on dérive donc:

PA2,CR(X),NB(λx.M)NC

Donc, par (I):

PA2,CR(X)NB(λx.M)NC

Et par définition des candidats :

PA2,CR(X)(λx.M)=(λx.M)[N/x]BC

app

δ=ΓM:ABδ1ΓN:Aδ2ΓMN:B(app)

On procède de même, en utilisant la définition de MAB, puis Elim, puis Elim.

Lam

δ=ΓM:AδΓλx.M:X.A(Lam)Xfv(Γ)

En notant toujours M le terme M avec les substitutions, on a:

PA2,CR(X),CR(X),NΓMA

Avec (Intro):

PA2,CR(X),NΓCR(X)MA

Et par Intro:

PA2,CR(X),NΓMX.A

App

δ=ΓM:X.AδΓM:A[B/X](E) PA2,CR(X),CR(Y),NΓMX.A=X.CR(X)MA

Lemme de substitution:

Redρ(A[B/X])=Redρ[XRedρ(B)](A)

Preuve: élémentaire

Il vient qu’on peut dériver, avec E:

PA2,CR(X),CR(Y),NΓCR(ξB)(MA)[(ξB)/X]

Puis, avec E et le lemme disant que PA2,CR(X)CR(ξB) (i.e. Redρ(A) est un candidat):

Enfin, d’après le lemme de substitution:

PA2,CR(X),CR(Y),NΓ(MA)[(ξB)/X]=MA[B/X]

Prop: Si M:NatNat, alors M représente une fonction dont la totalité est prouvable dans PA2

Totalité:

i.e. ce sont des fonctions f telles que

PA2x,t,T1(e,x,t)

tel que

  • e est le code de f
  • Prédicat de Kleene T1: e termine sur x, et t est une preuve de terminaison de e appliqué à x (prédicat qu’on peut exprimer avec des quantificateurs bornés: Δ00)

NB: D’après un théorème de Friedman, démontrer une formule Π02 dans PA2, c’est la même chose que la démontrer dans HA2. Donc cela revient au même de demander HA2x,t,T1(e,x,t) (le système F est d’ailleurs dans HA2, mais pour la cohérence, c’est pareil de prouver les choses dans PA2).

M:NatNatn:NatMn:Nat

Donc

PA2MnNatPA2Norm(Mn)

NB: Pour chaque n, on a une preuve, mais on n’a pas une preuve générale pour tout n (Gödel nous en empêche, d’ailleurs)

Leave a comment