• Aucun résultat trouvé

A.2 Normalisation forte (théorème 3.2)

A.2.2 Propriétés des ensembles réductibles

Nous établissons maintenant un ensemble de propriétés des ensembles ré- ductibles Rτ, que nous démontrons inductivement pour tout type τ . Outre les

propriétés (CR 1) à (CR 4) issues de la preuve de normalisation citée plus haut, nous montrons par (CR 5) et (CR 6) qu’un terme est réductible si et seulement si il est localement réductible (Rτ ⇔ Rτ ↓).

(CR 1) Rτ(M ) ⇒ FN(M ) : tout terme qui est réductible est également

fortement normalisant. (CR 2) Rτ(M ) ∧ M

→ M0 ⇒ R

τ(M0) : la réductibilité d’un terme M est

préservée par réduction.

(CR 3) Nt(M ) ∧ (∀Mi ∈ S(M ).Mi → Mi0 ⇒ Rτ(Mi0)) ⇒ Rτ(M ) : si un

terme M est neutre, et que tout élément Mi de sa structure se contracte

en un terme Mi0 réductible de type τ , alors le terme d’origine (M ) est également réductible.

(CR 4) Nt(M ) ∧ (@M0.M → M0) ⇒ Rτ : tout terme M de type τ qui est

neutre et en forme normale est réductible.

(CR 5) Rτ(M ) ⇒ Rτ ↓(M ) : un terme réductible est localement réductible.

(CR 6) Rτ ↓(M ) ⇒ Rτ(M ) : un terme localement réductible est réductible.

La propriété (CR 4) est une conséquence immédiate de (CR 3) : le fait que M soit en forme normale (@M0.M → M0) satisfait trivialement la seconde

précondition de (CR 3). Nous démontrons pour tout terme M la validité des autres propriétés par induction sur le type τ de M .

Dans le cas où τ est un type atomique : (CR 1) est vraie par définition : Rτ(M )

def

⇔ FN(M ).

(CR 2) est immédiatement vérifiée par définition, toute réduction d’un terme de FN produisant un terme de FN.

(CR 3) se vérifie en prenant Mi = M : la deuxième précondition entraîne

alors que tout contractum de M est fortement normalisant, donc M ∈ FN également.

(CR 5) est vérifiée en constatant que toute séquence de réductions infinie dans un terme local Mi appartenant à S(M ) serait également valide

dans M , contredisant l’hypothèse Rτ(M ).

(CR 6) est par définition, l’énoncé du lemme A.1.

Nous étudions maintenant le cas inductif où τ = α → β : nous disposons des six hypothèses d’induction précédentes, appliquées aux types α et β. Rappelons que par définition, un terme M appartient à Rα→β si et seulement si pour tout

terme N réductible de type α, M N est un terme réductible (de type β) : (CR 1) Par définition, Rα→β(M ) entraîne que pour tout N réductible de

type α, M N ∈ Rβ. En particulier, M xα ∈ Rβ, puisque xα∈ Rα en vertu

de la propriété (CR 4) pour α (x est neutre et en forme normale). Par conséquent, M x ∈ FN, en raison de l’hypothèse d’induction (CR 1) pour β ; ce qui entraîne en particulier que M ∈ FN.

(CR 2) Là encore, tout N ∈ Rα vérifie M N ∈ Rβ; de plus, M N ∗

→ M0N . L’hypothèse d’induction (CR 2) sur β permet donc d’établir que M0N ∈ Rβ pour tout N ∈ Rα et donc, par définition, que M0 ∈ Rτ.

(CR 3) Posons Nt(M ) et H⇔ ∀Mdef i ∈ S(M ).Mi → Mi0 ⇒ Rτ(Mi0).

Nous souhaitons montrer que M ∈ Rτ, c’est-à-dire, par définition, que

pour tout N ∈ Rα, M N ∈ Rβ. Par induction, la propriété (CR 3) pour

le type β permet d’obtenir ce résultat en montrant que M N est neutre (ce qui est toujours vrai par définition de Nt), et que pour tout N , si un élément O de la structure de M N se contracte en P , alors P appartient à Rβ. Par définition, la structure de M N est simplement {M N } ; la condi-

tion précédente se réduit ainsi à M N → P ⇒ Rβ(P ). Nous démontrons

donc dans la suite, pour chaque cas, que ∀N ∈ Rα.M N → P ⇒ Rβ(P ),

et concluons que M ∈ Rτ de la manière décrite ci-dessus.

Tout terme réductible Nα est fortement normalisant, par (CR 1) sur α. Supposons que M N se contracte en P (dans le cas contraire, M N est neutre et normal, et nous pouvons conclure immédiatement par (CR 4)) ; six cas sont alors possibles. La contraction peut avoir lieu dans M ou N , auquel cas P = M0N avec M → M0 (cas 1), ou P = M N0 avec N → N0 (cas 2). Alternativement, lorsque M ou N est un ensemble ou une condition, soit P = φ −→ M0 ∧ M = φ −→ M0 (cas 3), soit

φ −→ N0 (cas 5), soit enfin P = {M N1. . . M Nn} ∧ N = {N1. . . Nn}

(cas 6). Observons que M étant neutre, M N ne peut pas constituer un β-redex.

Nous montrons maintenant que P ∈ Rβ par une induction complexe

sur M N : nous montrons que la propriété est vérifiée pour tout terme M0N0, dans lequel : soit |M0| < |M |, soit |N0| < |N | ou ν(N0) < ν(N )

(il est possible dans ce dernier cas que |N0| > |N |, mais l’inverse n’est pas vrai). La première condition de décroissance correspond aux cas 3 et 4 (induction sur la structure de M ), la seconde aux cas 5 et 6 (induction sur la structure de N ), et la dernière au cas 2 (en s’appuyant sur l’argument montrant que N ∈ FN) ; le cas 1 est démontré sans faire usage de l’hypothèse d’induction. Nous montrons dans chaque cas que P (le contractum de M N ) est réductible ; la réductibilité de M N (qui permet le passage à l’induction) est toujours une conséquence de celle de P , suivant le raisonnement décrit dans le premier paragraphe.

1. P = M0N (M → M0)

Considérons l’hypothèse H posée initialement, fournie par (CR 3), en prenant Mi ∈ S(M ) = M : elle établit que M0 ∈ Rτ. Donc, par

définition, M0N = P ∈ Rβ pour tout N ∈ Rα.

2. P = M N0 (N → N0)

Puisque N → N0, ν(N0) < ν(N ), et la propriété (CR 2) sur α permet d’établir que Rα(N0). Nous pouvons donc appliquer notre

hypothèse d’induction pour établir immédiatement que P = M N0 appartient à Rβ.

3. P = φ −→ M0N (M = φ −→ M0)

Dans ce cas, |M0| < |M |, donc par hypothèse d’induction, M0N

est réductible de type β. La propriété (CR 6) pour β permet donc immédiatement d’établir Rβ(P ).

4. P = {M1N . . . MnN } (M = {M1. . . Mn})

De manière similaire au cas précédent, pour tout i ∈ [n], |Mi| < |M |,

donc par hypothèse d’induction, MiN est réductible de type β, et

la propriété (CR 6) pour β permet alors d’établir Rβ(P ).

5. P = φ −→ M N0 (N = φ −→ N0)

Ici, |N0| < |N | ; en outre, la propriété (CR 5) montre Rα(N0). Nous

pouvons donc appliquer notre hypothèse d’induction pour établir Rβ(M N0), ce qui entraîne Rβ(P ) par la propriété (CR 6) de β.

6. P = {M N1. . . M Nn} (N = {N1. . . Nn})

Similairement au cas précédent, nous montrons que pour tout i ∈ [n], |Ni| < |N | et Rα(Ni) (par (CR 5)). Par conséquent, chaque M Ni

Nous avons donc établi que pour tout N ∈ Rα, dans tous les cas, si

M N → P alors P ∈ Rβ. Nous pouvons donc conclure systématique-

ment en suivant le raisonnement du premier paragraphe pour obtenir que M N ∈ Rβ par (CR 3) sur le type β (validant pour chaque cas

l’induction sur M , N et ν(N )), et par extension que M ∈ Rτ, vérifiant

ainsi la propriété (CR 3) pour τ .

(CR 5) Nous montrons la réductibilité locale par induction sur M . Si M n’est ni un ensemble ni une condition, la propriété est vraie par définition.

Si M est une condition φ −→ M0 réductible de type τ , alors (par défi-

nition) pour tout N ∈ Rα, Rβ((φ −→ M0)N ). Donc, par (CR 2) sur β,

Rβ(φ −→ M0N ) (en appliquant la règle app, g de →C), ce qui implique

à son tour par (CR 5) sur le type β que Rβ(M0N ) pour tout N ∈ Rα,

et donc, par définition, Rτ(M0).

Si M est un ensemble, la preuve suit le même schéma que dans le cas précédent, avec M = {M1. . . Mn} et en appliquant la règle app, g

de →E. Il en résulte que pour tout i ∈ [n], MiN ∈ Rβ pour tout N

réductible de type α, montrant que Mi ∈ Rτ.

(CR 6) Considérons le terme M : si M n’est pas un ensemble ou une condi- tion, la propriété est une tautologie. Nous supposons donc le contraire dans la suite, et montrons que M est réductible.

Par définition, M est réductible si, pour tout N ∈ Rα, Rβ(M N ). Nous

montrons ce dernier résultat en utilisant (CR 3) sur le type β, et en montrant que tout contractum du terme neutre M N est réductible, par une induction complexe sur M N .

Nous observons d’abord que la réductibilité locale de M entraîne par (CR 1) appliquée au type τ que M est localement fortement norma- lisant : en effet, tous les termes de S(M ) ont le type τ , et la propriété (CR 1) est établie pour τ . Par conséquent, d’après le lemme A.1, M est fortement normalisant, nous permettant de procéder par induction sur ν(M ).

Par hypothèse d’induction, nous supposons maintenant que Rβ(M0N0)

soit lorsque ν(M0) < ν(M ) ou, à défaut, |M0| < |M | (sans accroître ν(M0)), soit lorsque ν(N0) < ν(N ) ou |N0| < |N |. Nous considérons tous les termes P tels que M N → P et montrons que P appartient systématiquement à Rβ, établissant par (CR 3) que M N ∈ Rβ et pro-

pageant l’induction. (Le terme M N est forcément réductible, de par notre supposition initiale que M est soit un ensemble soit une condi- tion.)

Nous considérons d’abord les réductions qui sont dues au terme N , indépendamment de M . Remarquons que la réductibilité de N entraîne par (CR 2) sur le type α que tout N0 tel que N → N∗ 0 est réductible,

Trois cas sont à considérer :

— Soit P = M N0 avec N → N0. Dans ce cas, P est réductible par hypothèse d’induction, avec ν(N0) < ν(N ).

— Soit P = ψ → M N0 avec N = ψ −→ N0. Dans ce cas, M N0 est ré-

ductible par hypothèse d’induction, avec |N0| < |N | ; ce qui entraîne

que P est réductible par application de (CR 6) sur β.

— Soit P = {M N1. . . M Nn} avec N = {N1. . . Nn}. Dans ce cas,

chaque M Ni est réductible par hypothèse d’induction (avec |Ni| <

|N |) ; donc P est à nouveau réductible par (CR 6) sur β.

Nous considérons ensuite les réductions dues à M seulement. Ceci re- couvre tous les cas restants : M N ne peut être un β-redex, puisque nous avons écarté initialement les cas où M n’est ni une condition, ni un ensemble.

— Soit P = M0N avec M → M0. Dans ce cas, P est réductible par hypothèse d’induction, avec ν(M0) < ν(M ).

— Soit P = φ −→ M0N , avec M = φ −→ M0. Dans ce cas, M0N est

réductible par hypothèse d’induction, avec |M0| < |M | ; donc P est

réductible en appliquant la propriété (CR 6) sur le type β.

— Soit P = {M1N . . . MnN }, avec M = {M1. . . Mn}. Dans ce cas,

chaque MiN est réductible par hypothèse d’induction, avec |Mi| <

|M | ; donc, P est encore une fois réductible par (CR 6) sur β, concluant la démonstration.