) est aussi récursive primitive. En effet, cette fonction est égale à f(P~ ). • Si A ÇIN" est récursif primitif et si f11f2,... ,fn appartiennent à a-P et sont récursives primitives, alors l'ensemble { (x 11 x2,... ,xp) ; (f1(x1,x2, ... ,xp),f2(x11 x2,···,xP), ... ,fn(x1,x2, ... ,xp)) E A} est aussi récursif primitif (sa fonction caractéristique est XA(fhf2, ... ,fn)· • On déduit facilement de ce qui précède que, si f et g sont deux fonctions récursives primitives de a-p, alors les ensembles { (x 11 x2,... ,xp) ; f(x 1,x2, ... ,xp) > g(x1,x2,···,xp)} , { (x 1,x2,... ,xp) ; f(x 1,x2, ... ,xp) = g(x1,x2, ... ,xp)} et { (x 11 x2,... ,xp) ; f(x1,x2,. .. ,xp) < g(x1,x2, ... ,xp)} sont récursifs primitifs. En particulier, l'ensemble { (x1,x2, ... ,xp) ; f(x1,x2, ... ,xp) > 0} est 1.6 +1, et . Ces fonctions fn et gn se définissent simultanément par récurrence sur n. n Pour L 1 et g-11 on peut prendre les fonctions constantes égales à O. Voyons le cas n + 1 : • fn+l(P) =fn(P) sauf si p = n + 1; • s'il existe a ~ n tel que gn(a) = n + 1, alors on pose fn+ 1(n + 1) =a ; • sinon fn+ 1(n + 1) est le plus petit entier rn n'appartenant pas à l'ensemble (fini) { 0,1, ... ,n } U { fn(O),fn(1), ... ,fn(n)} (ne pas tenir compte de cette condition si n = -1) et tel que rn soit égal à 'Y(k,{J( n + 1)) pour un certain entier k. On définit gn+l de façon analogue : • gn +l(P) = gn (p) sauf si p = n + 1 ; • s'il existe a ~ n + 1 tel que fn+ 1(a) = n + 1, alors: gn .. 1(n + 1) =a ; • sinon gn .. 1(n + 1) est le plus petit entier rn non nul n'appartennant pas à l'ensemble { 1, ... ,n + 1} U {gn(O),gn(1), ... ,gn(n)} et tel que rn soit égal à t5(k,a(n + 1)) pour un certain entier k. On laissera au lecteur le soin de vérifier que les fonctions ..\nx.fn(x) et ..\nx.gn(x) sont récursives, de même que la fonction e = ..\x.fx(x) ; la fonction ..\x.gx(x) est la fonction réciproque de e, qui est donc bijective et satisfait bien les propriétés voulues.
récursif primitif.
1. Fonctions et ensembles récursifs primitifs
13
• Pour chaque entier p, l'ensemble des sous-ensembles récursifs primitifs de INP est clos pour les opérations booléennes : si A et B sont des sous-ensembles récursifs primitifs de INP, il en est de même de An B, AU B et INP- A. On peut en effet calculer les fonctions caractéristiques de ces nouveaux ensembles :
x( An B) = x(A).x(B); x( Au B) = sg(x(A) + x(B)) ; x(INP- A)= 1.: x(A). Remarquons en particulier que A - B =An (INP - B) est récursif primitif. 1.7
• Schéma de définition par cas: soient f et g deux fonctions récursives primitives
de a-P et A un sous-ensemble récursif primitif de INP ; alors la fonction h définie par :
h(x 11x2,... ,xp) = f(xhx 2,... ,xp) si (xhx2, ... ,xp) E A , h(xt,x2, ... ,xp) = g(xhx2, ... ,xp) sinon, est récursive primitive. Il suffit de remarquer que h = f.x(A) + g.x(INP.: A). On peut généraliser cette possibilité de définition par cru; : soient ft,f2,... ,fn+t E a-P des fonctions récursives primitives et At,A 2,... ,An Ç INP des ensembles récursifs primitifs ; alors la fonction g définie par :
g(xhx2,... ,xp) = ft(xhx2, ... ,xp)
si (xt,x2, ... ,xp)
g(xt,X2,···,xp) = f2(xt,x2,···,xp) g(x 1,x2,... ,xp) = f3(xt,x2,... ,xp)
si (x 11x2, ... ,xp) ~At et (xt,x2, ... ,xp) E A2,
E
Ah
si (xt,x2, ... ,xp) ~At U A2 et (x1,x2, ... ,xp) E A3,
g(xt,x2,... ,xp) = fn+t(Xt,x 2,... ,xp) si (xt,x2, ... ,xp) ~At U A2U ... UAn, est une fonction récursive primitive. En effet, on peut remarquer que : g=ft·x(At)
+ f2·x(A2-At) + f3·x(AJ-(AtUA2)) +· .. + fn •x(An -(At UA2U ... UAn-t)) + fn+t' x(INP -
(At U A2U ... UAn)).
• En corollaire, on voit que les fonctions htx2... xp.sup(xhx2,... ,xp) et htx2... xp.inf(xt,x2,... ,xp) sont récursives primitives. Par exemple, sup(xhx2,... ,xp) peut être définie de la façon suivante :
sup(xt,x2,... ,xp) = Xt si Xt ~ x2 et Xt ~ XJ et ... et x1 ~ xp ; sup(xhx2, ... ,xp) = x2 sinon et si x2 ~ XJ et ... et x2 ~ xp, etc. 1.8 • Somme et produit limités: soit f une fonction récursive primitive de a-P+l· Alors les fonctions et
g = MtX2···xpy.E~:ô f(xhx2, ... ,xp,t) t=y hhtx2···xpy.nt=o f(xt,x 2,... ,xp,t)
sont aussi récursives primitives. Elles se définissent facilement par récurrence. Pour la somme, par exemple :
14
Chapitre 5. Récursivité
g(xhx2, ... ,xp,O) = f{x 1,x2, ... ,xp,O) ; g(xl,x2,···,xp,y + 1) = g(x1,x2, ... ,xp,y) + f(xhx2, ... ,xp,y + 1). En particulier, la fonction factorielle ..\x.x! , qui peut être définie comme produit limité, est récursive primitive. 1.9 • Schéma JI. borné: soit A un sous-ensemble récursif primitif de 1NP+1. Alors la fonction f de a-P+l définie comme suit est récursive primitive : f{x 1,x2,... ,xp,z) = 0 s'il n'existe pas d'entier t ~ z tel que {x1,x2,... ,xp,t) EA ; sinon f{x 1,x 2,... ,xp,z) est égal au plus petit des entiers t ~ z tels que (xl,x2, ... ,xp,t) E A. La fonction f est définie par récurrence, schéma de défini ti on par cas et somme limitée : f{xl,x2, ... ,xp,O) = 0; f{x1,x2, ... ,xp,z + 1) =f{xl,x2,···,xp,z) si E~~~XA(x 1 ,x2, ... ,xp,y) ~ 1; f{x1,x2,... ,xp,z + 1) = z + 1 sinon et si {x1,x2,... ,xp,z + 1) E A ; f{x1,x2,... ,xp,z + 1) = 0 dans les autres cas. Pour désigner cette fonction on utilisera la notation suivante : f{x 1,x2, ... ,xp,z) = p.t ~ z ({x 11 x2, ... ,xp,t) E A). (lire : « f{xhx 2, ... ,xp,z) est le plus petit des entiers t inférieurs ou égaux à z tels que {xl,x2,···,xp,t) E A».) Dans l'utilisation de ce schéma, la condition (xhx2, ... ,xp,t) E A aura souvent la forme« g(xhx2, ... ,xp,t) = 0 », où g est une fonction récursive primitive. • L'ensemble des prédicats récursifs primitifs est clos par quantification bornée. Cela veut dire que, si A ÇINP+l est récursif primitif, il en est de même des ensembles : B = { (x1,x2, ... ,xp,z) ; 3t ~ z (x1,x2, ... ,xp,t) E A} et C = { (x1,x2, ... ,xp,z); Vt ~ z (x1,x2,... ,xp,t) E A}. En effet la fonction caractéristique de B est donnée par la formule :
Xo(xhx2, ... ,xp,z) = sg(E~~~XA(xl,x2,···,xp,t)), et celle de C par :
1.10 Profitons de ces connaissances toutes neuves pour montrer qu'un certain nombre de fonctions et d'ensembles sont récursifs primitifs : • IN est récursif primitif : sa fonction caractéristique est la fonction constante de
à1; • l'ensemble des nombres pairs est aussi récursif primitif: sa fonction caractéristique X est définie par récurrence par : x{O) = 1 et x{n + 1) = 1.: x(n) ; • la fonction q(x,y) qui est égale à la partie entière de x/y si y n'est pas nul et à 0 si y est nul, est récursive primitive ; elle est définie par :
a-1 égale
1. Fonctions et ensembles récursifs primitifs
15
q(x,y) = J,Lt ~x ((t + 1).y >x) ; • l'ensemble { (x,y) ; y divise x} est récursif primitif: sa fonction caractéristique est égale à 1.:sg(x.:y.q(x,y)); • 1'ensemble {x ; x est un nombre premier} est récursif primitif : en effet x est premier si est seulement si x> 1 et Vy ~ x(y ~ 1 ou y= x ou y ne divise pas x) ; • la fonction ~qui à l'entier n fait correspondre le (n + 1)-ème nombre premier est récursive primitive: elle est définie par récurrence, grâce au schéma IJ. borné, de la façon suivante : ~0) =2;
~n + 1) = J.LZ ~ (~n)! + 1)(z > ~n) et z est premier). (On utilise ici le fait bien connu qu'il y a toujours un nombre premier strictement
compris entre p et p! + 2.) • On trouvera dans les exercices d'autres exemples de fonctions et d'ensembles récursifs primitifs.
Codages des suites 1.11 La notion de calculabilité ne s'applique pas seulement aux fonctions d'entiers dans les entiers. La généralisation la plus simple et la plus utile consiste à considérer des fonctions qui, à chaque suite finie d'entiers, font correspondre un entier ou même une autre suite finie. Pour pouvoir utiliser la théorie des fonctions récursives dans ce contexte, on va coder les suites finies d'entiers. Ce que l'on va faire exactement, c'est établir une application de l'ensemble des suites finies d'entiers à valeurs dans les entiers. Il faut évidemment que le codage que l'on utilise soit effectif, c'est-à-dire que l'on sache calculer l'entier correspondant à une suite donnée, et que, inversement, on puisse retrouver une suite à partir de son code. Il y a bien des façons de faire cela. On va donner ici deux codages dont on se servira par la suite.
PROPOSITION : Pour chaque entier non nul p, il existe des fonctions récursives primitives ap E ~p, fJ ~' {J~, ... , {J~ E ~1 qui possèdent la propriété suivante : ap est une bijection de !NP sur IN dont l'application réciproque est
Àx. (fJ Mx),fJ~(x), ... ,{J~(x) ).
~ On va commencer par construire ~- Pour cela, on numérote les couples d'entiers en suivant le schéma ci -dessous :
16
Chapitre 5. Récursivité
10
(4,0) Plus précisément, on énumère les couples (x,y) en suivant les diagonales x+ y= constante. On commence par la diagonale x+ y= 0 (qui ne contient qu'un seul couple), puis on passe à la diagonale x + y = 1 en commençant par le bas, etc. La valeur de a:z(x,y) est exactement le nombre de couples précédant (x,y) dans cette énumération. La diagonale x+ y= n a exactement n + 1 éléments. Donc avant le couple (p + n,O) il y a 1 + 2 + · · · + (n + p) =Hn + p)(n + p + 1) éléments. Le couple (p,n) se trouve sur la même diagonale que (p + n,O) et exactement n places après lui. Par conséquent :
lr:l(p,n) = t(n + p + 1)(n + p) + n. On remarque que a:z est bien récursive primitive et supérieure ou égale à n et p. Puisque lr:2 est bijective, on peut retrouver n et p à partir de a:z(p,n) à l'aide des fonctions suivantes : fJ~(x) = J.LZ ~ x (3t ~ x lr:l(z,t) =x) et {J~(x) = J.LZ ~ x (3t ~ x a:z(t,z) =x), et nous voyons que les fonctions {J~ et {J~ sont récursives primitives. On peut alors définir OJ par OJ(x,y,z) = a:z(x,a:z(y,z)) et {J~ = {J~ , {J~ = {J~o {J~ , {J~ = {J~o et plus généralement
PL
ap+ 1(x1,x2, ... ,xp,xp+ 1) = ap(x 11 x2 , ... xp_1,a:z(xp,xp+ 1))
;
1
fJ~+1=fJ~, fJ~+1=fJ~ ,.. , PC~~=PC- , PC+1=fJ~ofJC, pg:~=fJ~ofJC. Pour compléter, on posera a 1(x) =x et {J~(x) =x. (;;')
NOTATION : On notera r# l'ensemble des suites finies d'entiers ( r# = .Jt(IN) ). 1.12 Dans l'exercice 3, on montre comment utiliser ces fonctions pour établir un codage de toutes les suites finies. En voici un autre, très classique, dont on se servira par la suite.
1. Fonctions et ensembles récursifs primitifs
DEFINITION DE !l ET
jj:
17
La. fonction !l est l'application de # dans IN
définie comme suit :
!l((xo,xh···,xp)) = W'{O)x0 . w-{1)x 1... W'(p )xP (rappelons que r est la. fonction qui à l'entier n fait correspondre le (n + 1)-ème nombre premier). On complétera. cette définition en décidant que, si s est la. suite vide, !l(s) = 1. La. fonction /j est la. fonction de a-2 définie comme suit : 6(i,x) = J.LZ ~ x (x n'est pas divisible par W'(i)z+l) (6(i,x) est l'exposant de W'(i) dans la. décomposition de x en facteurs premiers).
On remarque que la fonction /j est récursive primitive. Il n'est pas difficile de voir aussi que l'image den (c'est-à-dire {x; il existe sE# tel que x=!l(s)}) est l'ensemble IN- {0}. On n'a pas là un codage parfait puisque n n'est pas injective (il est clair que si s,s' E rt/, !l(s) = !l(s') si et seulement si la plus longue des deux suites s ou s' est obtenue à partir de l'autre en ajoutant des zéros à la fin). On pourrait, d'ailleurs, la rendre injective en ajoutant un à chaque exposant, mais on perdrait la surjectivité. D'autre part, n prend très rapidement des valeurs énormes, et est donc inutilisable pour des calculs autres que théoriques. Mais cela n'a pas d'importance pour l'usage que l'on veut en faire.
EXEMPLE : Les récurrenœB doublE~J. Soient g, g' E a-P et h, h' E a-p+J, quatre 1.13 fonctions. A l'aide de ces fonctions, on peut définir simultanément deux nouvelles fonctions f et f' de a-P+l par les conditions : f(x1,x2, ... ,xp,O) = g(x 1,x2, ... ,xp) ; f'(x 1,x2, ... ,xp,O) = g'(x 1,x2, ... ,xp) ; f(x 1,x2,... ,xp,y + 1) = h(x 1,x2, ... ,xp,y,f(x1,x 2,... ,xp,y),f'(x1,x2,... ,xp,y)); f'(x 1,x2, ... ,xp,y + 1) = h'(x1,x2, ... ,xp,y,f(xhx 2,... ,xp,y),f'(xhx 2,... ,xp,y)). Nous allons voir que, si g,g',h,h' sont toutes les quatre récursives primitives, il en est de même de f et f'. Pour cela, introduisons la fonction k = ~(f,f'). Cette fonction peut être définie par récurrence de la façon suivante : k(x1,x2, ... ,xp,O) = ~(g(x 11 x2, ... ,xp),g'(xhx2, ... ,xp)) ; k(x1,x2, ... ,xp,y + 1) = ~(h(xhx2, ... ,xp,y,{J~(k(x 1 ,x 2 , ... ,xp,y)),{J~(k(x 1 ,x 2 , ... ,xp,y))),
h'(xhx2,· .. ,xp,y ,{J~(k(x1,x2, ... ,xp,y) ),{J~(k(x 1 ,x2, ... ,xp,y))) ). La fonction k est donc récursive primitive et f = P~ok et f' = {J~ok le sont aussi.
18
Chapitre 5. Récursivité
2. FONCTIONS RECURSIVES
La fonction d 'Ackermann
2.1 Il s'agit dans cette sous-section de donner un exemple de fonction calculable au sens intuitif du terme, qui n'est pas récursive primitive, ce qui justifiera le travail supplémentaire demandé au lecteur dans la suite. La fonction que nous allons définir et que nous appellerons la fonction d' Ackermann, bien que ce soit une légère variante de la fonction originellement définie par Ackermann, est une fonction à deux variables que nous noterons { et qui est définie comme suit : i) pour tout entier x, {(O,x) = 2x; ii) pour tout entier y, {(y,O) = 1 ; iii) pour tous entiers x et y, {(y+ 1,x + 1) = {(y,{(y + 1,x)). Pour chaque entier n, appelons {n la fonction ..\x.{(n,x). Alors {0 (x) = 2x, et on voit facilement, à partir de la clause iii) ci-dessus, que, pour tout n positif, {n est définie par récurrence à partir de {n-l par
{n(O) = 1 et {n(x + 1) = {n-l({n(x)). Cela montre d'abord qu'il y a une seule fonction {satisfaisant les conditions imposées, et de plus, que toutes les fonctions {n sont récursives primitives (faire une récurrence sur
n). En revanche, rien ne nous permet d'affirmer que la fonction { elle-même l'est, et c'est heureux car on va montrer qu'elle ne l'est pas. Pourtant, on peut effectivement calculer {(x,y) pour n'importe quelles valeurs de x et y, comme le lecteur peut s'en convaincre facilement. Il nous faut maintenant montrer quelques lemmes faciles mais ennuyeux concernant cette fonction
2.2
~
f
LEMME 1 : Pour tout n et pour tout x, {n(x) >x.
On va utiliser un raisonnement faisant intervenir deux récurrences emboîtées :
par récurrence sur n, on montre que, pour tout x, {n(x) >x. C'est clair pour n =O. Fixons n
> 0 et supposons 1' assertion pour tout entier x, {n-1(x) > x
vraie. On montre alors l'assertion pour tout entier x, {n(x) >x. Pour cela, on fait maintenant une récurrence sur x. C'est clair pour x= 0 puisque
{n(O) = 1. On suppose donc {n(x) >x et on va montrer {n(x + 1) >x+ 1. On sait que
2. Fonctions récursives
19
{n(x + 1)={n-1({n(x)), et donc, par la première hypothèse de récurrence, on voit que: {n(x + 1) > {n(x) soit {n(x + 1) ~ {n(x) + 1. Or, d'après la seconde hypothèse de récurrence, {n(x) >x. Le lemme en découle. ~
LEMME 2:
~
Pour tout entier n, la fonction {n est strictement croissante.
C'est clair pour n égal à O. Ensuite, cela découle immédiatement du lemme 1 et
de la formule {n(x + 1)
= {n-1({n(x)).
~
LEMME 3 :
~
Pour tout n ~ 1 et pour tout x, {n(x)
~
{n-1{x).
C'est clair pour x= O. Pour x+ 1, puisque {n(x) ~x+ 1 et que {n-1 est
croissante, {n-1{{n(x)) ~ {n-1{x + 1), et il suffit d'appliquer la formule {n(x + 1) = {n-1{{n{x)).
Si k est un entier' notons e~ la fonction {n itérée k fois (c'est-à-dire
eR = ,\x.x,
1
{~ = {n, et {~+ ={no{~). Le lemme suivant est une collection d'évidences :
LEMME 4: Les fonctions {~ sont toutes strictement croissantes. De plus, pour tous rn, n, k, h et x, {~(x) < e~+ 1 (x) et {~(x) ~ x, {~o{~ = e~+h et, si
rn ~ n, {~(x) ~ {~(x).
2.3
Donnons maintenant une définition :
Soient fE a-1 et gE a-P. On dit que f domine g s'il existe un entier A tel que pour tout (xhx2, ... ,xp), g(xhx2, ... ,xp) ~ f{sup(xhx 2,... ,xp,A)). DEFINITION :
En particulier, lorsque fest strictement croissante, f domine g si et seulement si g(xhx2, ... ,xp) ~ f{sup(xhx2, ... ,xp)) sauf pour un nombre fini de p-uples {x1,x2,... ,xp).
20
Chapitre 5. Récursivité
Appelons Cn l'ensemble des fonctions qui sont dominées par au moins une itérée de {n:
Cn = {g ; il existe k tel que {~ domine g }. Il est bien clair que les fonctions suivantes appartiennent à C0 : les fonctions projections PJ, les fonctions constantes, la fonction successeur S, la fonction h 1x2... xp.sup(x 1,x2,... ,xp), la fonction hy.x +y et les fonctions ..h.kx où k est un entier quelconque. De plus, la fonction {n appartient à Cn. D'autre part, si f et g appartiennent toutes deux à iJp, si g E Cn et si pour tous x1,x2,... ,xp, f{x 1,x2,... ,xp) ~ g{x1,x2,... ,xp), alors fE Cn. Nous allons montrer :
LEMME 5: Pour tout entier n, l'ensemble Cn est clos par composition.
~ Soient f1,f2, ... ,fm des fonctions à p variables de Cn et g une fonction à rn variables de Cn. Il s'agit de montrer que g{f1,f2,... ,fm) est aussi dans Cn. On sait qu'il existe des entiers A,Al,A2, ... ,Am,k,khk2,···,km tels que, pour tous Y11 Y2, ... , Ym,
et pour tous x1, x2, .•• ,
Xp
g(Y1lY2,···,Ym) ~ {~(sup(yl,Y2,···,Ym,A)), et pour tout i compris entre 1 et rn,
fï(xhx2,···,xp) ~ {~i(sup(xl,x2,···,xp,Aï)}. Posons B = sup{A,A 1,A2,... ,Am) et h = sup(k 11 k2,... ,km)· En utilisant le lemme 4, on voit alors que, pour tous x1,x2,... ,xp : g{f1{x1,x2, ... ,xp),f2{x1,x2, ... ,xp), ... ,fm{x1,x2,· .. ,xp)) ~ {~( {~{sup(x1,x2, ... ,xp,B)) ), et donc
LEMME 6: Pour tous entiers n, k et x, {~(x) ~ {n+l(x + k).
~
Par récurrence sur k ; pour k égal à 0 ou 1, c'est clair. Si c'est vrai pour k, ça
l'est pour k + 1 : e~· 1 (x)
= {n({~(x)) ~ {n({n+l(x + k)) = {n+l(x + k + 1) (l'inégalité découle de l'hypothèse de récurrence, la dernière égalité de la définition de {). ~
2. Fonctions récursives
21
LEMME 7: Soient gE 3'p et h E 3'p+ 2 et on suppose de plus que h et g sont toutes deux dans Cn {n ~ 0). Alors la fonction f définie par récurrence à partir de g et h appartient à Cn+t·
~
Traduisons les hypothèses. Tout d'abord la définition de f:
f{xt,x2,···,xp,O) = g(xt,x2,···,xp) ; f{Xt,X 2,... ,Xp,y + 1) = h{Xt,X2,···,Xp,y,f{x 1,x 2,... ,Xp,y)) ; ensuite les conditions de domination : il existe A11 A2 , k11 k2 tels que, pour tous g(x 11 x2, ... ,xp) ~ ~~ 1 (sup(Xt,X2, ... ,Xp,At)) ; h{xt,X2, ... ,xp,y,z) ~ ~~ 2 (sup{xt,x2, ... ,xp,y,z,A2)). On va maintenant montrer par récurrence sur y que, pour tous Xt,x 2,... ,xp,y : (*) f(xt,X2,···,Xp,y) ~ ~~t+yk 2 (sup(xt,X2,···,Xp,y,At,A2)}. C'est clair pour y= 0; si c'est vrai pour y, ça l'est pour y+ 1 : f(xt,X2, ... ,xp,y + 1) = h(xt,x2, ... ,xp,y,f(xt,X2,···,xp,y)) ; f(xt,X2, ... ,xp,y + 1) ~ ~~ 2 (sup(x 1 ,x2, ... ,xp,y,f(x11x2,···,xp,y),A2)). Donc, en utilisant l'hypothèse de récurrence ( *) et le lemme 4,
f(xt,x2, ... ,xp,y + 1) ~ ~~ 2 (~~1+yk 2 (sup(xt,x2,···,xp,y,At,A2))), ce qui démontre notre assertion ; maintenant, en utilisant le lemme 6, on obtient
f(xt,X2,···,Xp,y) ~ ~n+t(Sup(xt,X2,···,xp,y,At,A2) + kt + k2Y)· Or la fonction ÀXtx 2... XpY·~n+t(sup(x 1 ,x2,···,xp,y,At,A 2 ) + kt + k2Y) s'obtient par composition à partir de fonctions de Cn+t ; elle est donc elle-même dans Cn+t, de même que f. (:,;)
Nous sommes maintenant en mesure d'énoncer:
2.4
COROLLAIRE : L'ensemble
U n~N
Cn contient toutes les fonctions récursives
primitives.
~
En effet, d'une part cet ensemble contient les fonctions constantes, les fonctions
projections et la fonction successeur ; d'autre part, il est clos par composition et pour les définitions par récurrence. f,;)
On en arrive au théorème principal de cette section :
22
Chapitre 5. Récursivité
THEOREME: La fonction d'Ackermann n'est pas récursive primitive.
~ Raisonnons par l'absurde et supposons la fonction d'Ackermann récursive primitive ; il en est de même de la fonction ..h.e(x,2x). Il existe donc des entiers n,k, et A tels que, pour tout x > A, e(x,2x) ~ e~(x). Donc pour tout x > A, on a : e(x,2x) ~ e~(x) ~ en+l(x + k) (lemme 6), et, si x> sup(A,k,n + 1), en+l(x + k)< en+ 1(2x) < ex(2x) = e(x,2x) (lemme 4), ce qui est absurde. (;;)
En fait, on peut voir que la fonction ..h.e(x,x) domine toutes les fonctions récursives primitives.
Le schéma JL et les fonctions partielles récursives 2.5 Il nous faut donc définir une classe plus large, que nous appellerons la classe des fonctions récursives. On le fera en admettant un nouveau schéma de définition, le schéma 1-L (non borné). L'idée est la suivante: soit A un sous-ensemble de INP+l ; alors la fonction fE jp que ce schéma 1-L permet de définir est la fonction qui à (x 11 x2 , ••• ,xp) fait correspondre le plus petit entier z tel que (x1,x2 , ... ,xp,z) E A. On voit tout de suite la difficulté: que se passe-t-il s'il n'existe pas d'entier z tel que (x 1,x2 , ... ,xp,z) E A? Il faut remarquer qu'il ne nous est pas possible de faire ce que l'on a fait pour le schéma 1-L borné et poser dans ce cas f(x 1,x2, ..• ,xp) =O. En effet, en admettant, ce que l'on doit faire, que l'on dispose d'un algorithme permettant de calculer la fonction caractéristique XA de A, la seule façon imaginable de calculer f(x 1,x2, ... ,xp) est de calculer XA(x1,x2,. .. ,xp,O), s'arrêter si on trouve 1, sinon calculer XA(x 11 x2, ... ,xp,1), etc., jusqu'à tomber sur la valeur 1. Mais si pour tout entier z, (x 1,x2 , .•. ,xp,z)~A, alors le processus ne s'arrête pas, et on ne connaîtra jamais la valeur de f(x 1,x2, ... ,xp)· Autrement dit, on ne dispose pas d'algorithme pour calculer f, et on ne peut donc pas admettre ce schéma. Une possibilité serait de le restreindre au cas où, pour tout (x1,x2 ,. .. ,xp), il existe z tel que (x11 x2 , .•. ,xp,z) E A (on appellera ce schéma le schéma JL total). On obtiendrait, comme on le verra par la suite, toutes les fonctions récursives. Mais il est préférable de définir les fonctions récursives partielles ; la raison en est que les théorèmes d'énumération et de points fixes (théorème 3.18 et 4.14 de ce chapitre), essentiels dans cette matière, ne sont vrais que pour cette dernière classe (voir exercice 22).
2. Fonctions récursives
23
Il s'agit donc de formaliser cette intuition ; pour commencer, donnons quelques définitions sur les fonctions partielles :
2.6
DEFINITION : Une fonction partielle de INP dans IN est un couple (A,f) où A ÇINP et f est une application de A dans IN ; A est appelé le domai.né de
définition de la fonction.
NOTATION : On notera
i'=U a:. pJ"O
a:
l'ensemble des fonctions partielles de INP dans IN, et
Si (aha 2, ... ,ap) t. A, on dira que la fonction n'est pas définie en (aha 2, ... ,ap), ou encore que f(a 1,a 2, ... ,ap) n'est pas définie. On n'hésitera pas à faire l'abus de langage consistant à confondre (A,f) avec f. Il faut insister sur le fait que deux fonctions partielles f et g sont égales si, premièrement, elles ont même domaine de définition, et deuxièmement, elles sont identiques sur ce domaine. Si le domaine d'une fonction partielle f de
a: est INP tout entier, on dit que f est totale. Le mot «fonction» restera
réservé aux fonctions totales.
2.7
DEFINITION : Soient f1, f2, ... , fn E h = g(fhf2, ... ,fn) est l'élément de
a: et gE~- La fonction composée
a: défini de la façon suivante:
• h(xhx 2, ... ,xp) n'est pas définie si l'une des fi(x 1,x2, ... ,xp) n'est pas
définie ou si, toutes l'étant, g(fl(xhx2, ... ,xp),f2(xhx2,···,xp), ... ,fn(x1,x2,···,xp)) n'est pas définie. • Dans le cas contraire, h(xhx 2, ... ,xp) est définie et est égale à : g(f1(x1,x2, ... ,xp),f2(x1,x2, ... ,xp), ... ,f n(x1,x2, ... ,xp) ).
REMARQUE : Il faut se méfier des automatismes lorsqu'on travaille avec les fonctions partielles. Prenons par exemple deux fonctions f et g de~ ; il n'est pas toujours vrai que
+ g) - g soient égales : si par exemple fest totale tandis que g n'est jamais définie, alors (f + g) - g n'est jamais définie. Et, effectivement, un algorithme qui essaierait de calculer (f + g) - g commencerait par calculer f + g et n'y parviendrait jamais.
f et (f
2.8
Définition par récurrence: On peut, pour les fonctions partielles, utiliser des
définitions par récurrence grâce au fait suivant :
24
Chapitre 5. Récursivité PROPOSITION : Soient g E ~ et h E ~+ 2 • Alors, il existe une et une seule fonction fE ~+t vérifiant les conditions suivantes:
• Pour tout (x,x2, ... ,xp) E INP, f(x 1,x2,... ,xp,O) = g(x 11x2, ... ,xp) (ce qui veut dire exactement: f(x 1,x2,... ,xp,O) est définie si et seulement si g(x,x2, ... ,xp) l'est, et lui est égale dans ce cas). • Pour tout (x 1,x2,... ,xp,y) E INP+t, f(x 1,x2, ... ,xp,y + 1) = h{x 1,x2,... ,xp,y,f(x,x2, ... ,xp,y)) (même remarque que précédemment: f(x 1,x2,... ,xp,y + 1) est définie si et seulement si h(x,x2, ... ,xp,y,f(x 11 x2, ... ,xp,y)) l'est). On dira encore dans ce cas que f est définie par récurrence à partir de g et h.
2.9
DEFINITION : Le schéma~- Soit fE ~+t· Alors la fonction partielle
g(xt,X2,···,xp) = ~y(f(x 11 x2, ... ,xp,y) = 0) est définie de la façon suivante : • S'il existe au moins un entier z tel que f(x 1,x2,... ,xp,z) soit nul et que, pour tout z' < z, f(x 1,x2,... ,xp,z') soit définie, alors g(x1,x2,... ,xp) est le plus petit de ces entiers z. • Dans le cas contraire, g(x1,x2,... ,xp) n'est pas définie. Si A Ç INP+t, alors, par définition, ~y(xt,x2, ... ,xp,y)
E A= ~y(1.:. XA(xt,x2, ... ,xp,y) = 0).
Il faut prendre garde à ce que z = ~y(f(x.,x 2 , ... ,xp,y) = 0) implique que, pour tout y inférieur à z, f(xhx 2,.. o,Xp,y) est défini (et non nul). Premièrement, c'est la définition qu'il faut prendre si 1'on veut suivre 1'intuition de calculabilité effective (voir 3 9) ; deuxièmement, l'exercice 24 montre que négliger cette précaution conduirait à des catastrophes 0
0
2.10
On peut maintenant définir l'ensemble des fonctions partielles récursives :
DEFINITION : L'ensemble des fonctions partielles récursives est le plus
petit sous-ensemble de a* qui • contienne toutes les fonctions (totales) constantes, les projections P~
(pour 1 ~ i ~ p), la fonction successeurS,
2. Fonctions récursives
25
• soit clos pour la composition, les définitions par récurrence et le schéma J1. Un sous-ensemble A de INP est dit récursif si sa fonction caractéristique est (totale) récursive.
On voit en particulier que les fonctions récursives primitives sont récursives (et même totales récursives). On vérifie aussi sans problème que les propriétés de clôture énoncées en 1. 6, 1. 7, 1. 8 et 1. 9 pour les fonctions récursives primitives sont encore vraies pour les fonctions partielles récursives et les fonctions totales récursives. On sait déjà que la fonction d'Ackermann n'est pas récursive primitive. Il faudra patienter jusqu'à la fin de ce chapitre, ou faire l'exercice 11, pour voir qu'elle est récursive, ce qui prouvera que la classe des fonctions récursives est strictement plus riche que celle des fonctions récursives primitives. Il est d'autre part aisé de construire une fonction partielle récursive qui n'est pas totale : par exemple la fonction partielle f(x) = JLy(2y =x) n'est définie que pour les nombres pairs. On donnera dans l'exercice 20 des exemples de fonctions récursives dont le caractère partiel est beaucoup plus définitif: il en existe qu'il est impossible de prolonger en une fonction totale récursive. Le lecteur est invité à se persuader que les fonctions partielles récursives sont calculables dans le sens que nous avons mentionné dans l'introduction : pour chacune d'entre elles, il existe un algorithme qui, soit s'arrête au bout d'un temps fini en donnant la valeur de la fonction si celle-ci est définie au point considéré, soit ne se termine jamais dans le cas contraire. La section suivante montrera comment calculer mécaniquement une fonction partielle récursive. 2.11 Il reste le problème de la réciproque : une fonction calculable est-elle nécessairement récursive? Autrement dit, avons-nous réussi dans notre tentative qui était de formaliser la notion de fonction calculable ? La réponse affirmative à cette question est ce qu'on appelle la thèse de Church. Il est clair que cette affirmation ne se prête pas à démonstration puisqu'on n'a pas de définition précise de ce qu'est une fonction calculable. D'autre part, l'échec de notre première tentative, celle des fonctions récursives primitives, doit nous rendre prudents. Mais en fait on ne connaît aucun contre-exemple à la thèse de Church, et, de plus, l'expérience montre que, chaque fois que l'on a une fonction que l'intuition dit être calculable, alors cette même intuition permet de donner une preuve qu'elle est récursive. En ce sens, les derniers théorèmes de ce chapitre (les théorèmes du point fixe) militent fortement en faveur de la thèse de Church.
26
Chapitre 5. Récursivité
3. MACHINES DE TURING
3.1 Les machines de Turing sont des machines théoriques qui sont capables de calculer, en un sens que l'on définira, certaines fonctions de Le fait important de cette section est qu'une fonction partielle est calculable par une machine de Turing si et seulement si elle est partielle récursive.
a;.
Description des machines de Turing Une machine de Turing se compose • d'un nombre fini de bandes disposées horizontalement, toutes bornées à gauche et infinies à droite ; chaque bande est divisée en cases successives, les cases numéro 1 étant les cases les plus à gauche, suivies à droite par les cases numéro 2 etc. ; les bandes sont disposées de sorte que les cases d'un même numéro se trouvent sur une même verticale.
case n"l case n"l case n"l
case n"2 case n"2 case n"2
bande n"l bande n"2 bande n"3
l tête de lecture! • d'une tête que nous appellerons tête de lecture mais qui peut lire, écrire ou effacer des symboles sur les bandes (à raison d'un symbole par case). La tête peut se déplacer horizontalement ; à chaque instant, elle est pointée sur une verticale, c'est-à-dire sur la série de cases d'un même numéro n correspondant aux différentes bandes et elle peut effectuer ces opérations (lecture, écriture, effacement) sur toutes ces cases. Les symboles que la tête peut écrire sont au nombre de trois : il y a le d qui est le symbole de début de bande, le bâton 1 et le blanc b. On noteraS= { d, 1,b }. Cela est commun à toutes les machines de Turing. Maintenant, chaque machine est caractérisée par la donnée : • du nombre n de ses bandes.
3. Machines de Turing
27
• d'un ensemble fini d'états E ; à chaque instant, la machine se trouvera dans un état donné. Il y a deux états particuliers qui appartiennent à toutes les machines : 1'état initial ei et l'état final er. • d'une table M qui est une application de 5" xE dans 5" xE x { -1,0,+ 1 }, quelquefois appelée table de transition de la machine.
3.2 La machine fonctionne en changeant d'état, en effaçant et écrivant sur les bandes et en déplaçant sa tête à chaque instant, en respectant les règles suivantes : • à l'instant t = 0, la tête se trouve devant les cases numéro 1, sur lesquelles est écrit le symbole d ; un symbole est écrit sur chaque case de chaque bande. La machine se trouve dans l'état initial ei ; • à chaque instant t, la machine lit les symboles s 11 s2,... ,sn inscrits sur les cases se trouvant devant sa tête ; la table M lui indique ce qu'elle doit faire : en supposant qu'elle se trouve dans l'état e et que M(s1,s2,... ,sn,e) = (sl,s~, ... ,s~,e',e) où t: E { -1,0,+1 }, alors la machine efface les symboles s1,s 2,... ,sn, écrit sl,s~, ... ,s~ à la place ; elle déplace sa tête d'une case vers la droite si t: = +1, vers la gauche si t: = -1, et ne bouge pas sa tête si t: = 0 ; enfin elle passe dans l'état e' ; l'instant t est alors écoulé et on passe à l'instant t + 1 et la machine recommence les mêmes opérations ; • lorsque la machine atteint l'état final er, elle s'arrête de fonctionner. Le bon fonctionnement de la machine exige que la table M satisfasse un certain nombre de contraintes : • la machine doit s'arrêter de fonctionner aussitôt atteint l'état final ; cela se traduit par le fait que, pour tous s,s 2,... ,sn E 5", M(s,s 2,... ,sn,er) = (s 11 s2, ... ,sn,er,O) ; • il n'est pas possible à la machine d'effacer ou d'écrire le symbole de début de bande; d'autre part la tête ne peut aller à gauche lorsqu'elle lit le symbole d. Donc, pour toute appartenant à E, M(d,d, ... ,d,e) = (d,d, ... d,e',t:) où e' appartient à E et t: est égal à 0 ou +1 ; si (s 11 s2, ... ,sn) =F (d,d, ... ,d) et M(s 11s2, ... ,sn,e) = (sl,s~, ... s~,e',e), alors aucun des si n'est égal à d. On fera toujours implicitement l'hypothèse que ces conditions sont satisfaites. On supposera aussi que, à l'instant t = 0, il n'y a qu'un nombre fini de cases remplies par autre chose que le blanc, et que le symbole d se trouve en début de chaque bande et uniquement là. Ces hypothèses resteront vraies à tout instant. On remarque aussi que le fonctionnement de la machine est complètement déterminé: on peut prévoir ce qui sera écrit sur les bandes à l'instant t si on sait ce qui y est écrit à l'instant initial t = 0 On va maintenant voir comment une machine de Turing peut calculer une fonction partielle, et montrer que les fonctions partielles qui sont ainsi calculables sont exactement les fonctions partielles récursives.
28
Chapitre 5. Récursivité
Les fonctions T-calculables 3.3 Pour qu'une machine puisse calculer la valeur d'une fonction fen (x,x2,... ,xp), il faut évidemment rentrer les valeurs des variables {x1,x2,... ,xp) d'une façon ou d'une autre. Cela se fera dans la configuration initiale. Pour calculer une fonction à p variables, il faut une machine possédant au moins p + 1 bandes : sur les p premières bandes sont rentrées les données, le résultat est codé sur la (p + 1)-ème bande, et les autres bandes (s'il y en a) servent aux calculs intermédiaires. Voyons d'abord comment coder un entier sur une bande :
DEFINITION : On dira qu'une bande représente, à un instant donné, un entier x, si les symboles qui y sont écrits à cet instant sont :
{d,l' 1 '
... '
l,b,b, ... ),
x bâtons c'est-à-dire le symbole d sur la première case, le bâton sur les cases numéro 2,3, ... , x+ 1, puis des blancs sur les suivantes. Une bande où zéro est représenté (donc où il y a un d suivi de blancs) sera appelée une bande blanche.
3.4
DEFINITION : Soient f une fonction partielle à p variables et ~ une machine de Turing possédant au moins p + 1 bandes; on dit que ~ calcule f si, pour toute suite d'entiers (x,x2,... ,xp), si l'on fait fonctionner la
machine ~ à partir d'une configuration initiale où, sur les bandes numéro 1, 2, ... , p, sont respectivement représentés les entiers x1, x2, ... , xp, les autres bandes étant blanches, alors: • si f{x,x 2, ... ,xp) n'est pas définie, la machine ne s'arrête jamais
(c'est-à-dire n'atteint jamais l'état final) ; • si f{x,x 2, ... ,xp) est définie, la machine s'arrêtera au bout d'un temps fini, et, à cet instant, x1 sera représenté sur la première bande, x2 sur la seconde, et ainsi de suite jusqu'à la p-ème et f(x,x2, ... ,xp) sur la (p + 1)-ème bande. Les éventuelles autres bandes doivent être blanches. On dit que fE jp est T-calculable (T pour Turing) s'il existe une machine
~
ca.lculan t f.
REMARQUES : 1") On exige de la machine qu'elle nettoie ses bandes de calcul avant de s'arrêter. Ce n'est pas vraiment nécessaire, mais cela aidera lorqu'on voudra faire
3. Machines de Turing
29
calculer à une machine une fonction définie par récurrence ou par composition. 2") Il existe bien d'autres définitions possibles de machines de Turing : certaines n'ont qu'une seule bande, d'autres ont plus de symboles, etc. Elles sont toutes équivalentes en ce sens qu'elles calculent toutes exactement les mêmes fonctions partielles. La notion qui est présentée ici a été choisie car, nous semble-t-il, elle permet une démonstration pas trop compliquée du théorème fondamental de cette section, à savoir que les fonctions partielles récursives sont celles qui sont T-calculables, tout en minimisant les codages nécessaires. 3.5 Nous allons maintenant donner quelques exemples de fonctions T -calculables. A chaque fois, pour décrire la machine correspondante, il faudrait préciser le nombre de bandes, les états et la table. En fait, le plus souvent, seules les valeurs prises par la fonction M sur une partie de S x E sont utiles : certaines de ces valeurs sont imposées une fois pour toutes (voir 3.2) et d'autres ne vont jamais intervenir. On se bornera donc à donner la partie utile de M. EXEMPLE: La fonction successeur est T-calculable; on peut la calculer à l'aide d'une
machine à deux bandes dont l'ensemble d'états est { eher }. Voici la partie significative de sa table:
M(d,d,ei) = (d,d,eï,+l); M( 1,b,ei) = ( 1,1 ,eï,+l) ; M(b,b,ei) = (b, 1,er,O). EXEMPLE : La fonction h.2x est T-calculable : la machine n'aura toujours que deux
bandes ; il y a quatre états, ei, er, e1 et e2 ; elle fonctionnera de la façon suivante : elle va lire la première bande de gauche à droite et à chaque fois qu'elle lira un bâton, elle en écrira un sur la seconde bande et ira en écrire un autre en fin de mot, toujours sur la seconde bande. Voici sa table: M(d,d,ei) = (d,d,eï,+l) (démarrage) ; M( l,b,ei) = ( 1, l,eh + 1) ; M(b,b,ei) = (b,b,er,O) (on rajoute un premier bâton sur la deuxième bande, sauf, bien sûr, si x est égal à 0) ;
M( 1,b,e1) = ( 1,b,eh+l) ; M(b, 1,e1) = (b, 1,eh+l) (on va à la fin du mot) ; M(b,b,e1) = (b, l,e2,-1); (on rajoute un bâton) ; M(b, l,e2) = (b, l,e2,-1); M( l,b,e2) = (1 ,b,e2,-1) (on revient sous le dernier bâton que l'on a dédoublé) ;
M(l,l,e2)=(l,l,ei,+l); M(b,l,ei)=(b,l,er,O) (on recommence jusqu'à avoir dédoublé tous les bâtons). 3.6 En fait, il n'était pas indispensable de traiter l'exemple ci-dessus : on va maintenant montrer que, de façon générale, toutes les fonctions partielles récursives sont
30
Chapitre 5. Récursivité
T -calculables. Pour cela, il faut montrer que les fonctions constantes, les projections et la fonction successeur sont T -calculables, et que 1'ensemble des fonctions T -calculables est clos pour la composition, les définitions par récurrence et le schéma ~- Le cas de la fonction successeur est déjà traité. • Commençons par la projection P~. Une machine qui calcule cette fonction peut être facilement décrite ; elle a p+ 1 bandes, deux états e i et er et voici sa table M : M{d,d, ... ,d,ei) = {d,d, ... ,d,eï,+1); M{sl,s2,···,sp,b,ei) = (shs2,... ,sp, 1,ei,+1) si Si= 1 ; si Si =b. • Les fonctions constantes sont aussi T -calculables ; décrivons la machine calculant la fonction à p variables constante égale à k. Cette machine a p + 1 bandes et k + 2 états ei,er,e 1 ,e2 ,... ,ek ; sa table est donnée par : M{d,d, ... ,d,ei) = {d,d, ... ,d,e1,+ 1) ; M{s 1,s 2,... ,sp,b,en) = (shs 2,. .. ,sp, 1,en+h+1) pour tous s1,s 2,... ,sp et pour tout n compris entre 1 et k-1 ; M{s 1,s 2,... ,sp,b,ek) = (s 11 s2,... ,sp, 1,er,O) pour tous s1,s2,. .. ,sp. 3.7 Il faut maintenant montrer que l'ensemble des fonctions partielles T-calculables est clos pour la composition, les définitions par récurrence et le schéma ~- Commençons par la composition : soient donc f1,f2, ... ,fn des fonctions de et gE~' et on suppose que toutes ces fonctions sont T-calculables. Il s'agit de construire une machine de Turing .At qui calcule la fonction partielle h =g{fhf2, ... ,fn)· On sait que pour i compris entre 1 et n, il existe une machine .Âti calculant fi ; on suppose que cette machine a Pi bandes (Pi ~ p + 1) et que son ensemble d'états est Ei. Quitte à renommer les éléments des Ei, on peut supposer que les ensembles Ei sont deux à deux disjoints (donc ont des états initiaux et finaux différents). La fonction g est aussi calculable par une machine .;Y; cette machine a n'bandes, son ensemble d'états est E; on supposera aussi que E est disjoint de tous les Ei· L'ensemble d'états de la machine .At est E U ( V Ei) ; son état 1( 1(n initial est l'état initial de .At1 et son état final est l'état final de .#'. Le nombre de bandes de .At est p' = p + EÏ~~(Pi - p) + n'-n. On se contentera de décrire le fonctionnement de cette machine .At calculant h, laissant au lecteur le soin d'établir, s'il le désire, sa table
3';
exacte. On suppose donc qu'à l'instant t = 0, les entiers x11x2 , ••. ,xp sont représentés sur les p premières bandes et que les autres bandes sont blanches. La machine commence à calculer f 1(x1,x2 , .•• ,xp) en travaillant comme .At1, à ceci près qu'elle ne se sert pas de la bande numero p + 1. Elle utilise pour cela p1 des p' bandes qu'elle a à sa disposition (les p premières et p1 - p autres) en ignorant les autres. Lorsqu'elle a fini son calcul (si jamais elle le finit), les entiers x11 x2, ••• ,xp restent representés sur les p premières bandes
31
3. Machines de Turing
et le résultat f1(x17x2, ... ,xp) est représenté sur une autre bande qùe nous appellerons 8 1. L'état final de la première machine ramène la tête en début de bande, et lorsque celle-ci lit la suite de d, elle met .At dans l'état initial de .A/2• En utilisant les p premières bandes plus p2 - p nouvelles bandes, elle va maintenant calculer f2(x17 x2, ... ,xp) qui sera donc représenté à la fin du calcul (si fin il y a) sur une bande que nous appellerons 8 2 ; après quoi elle remettra sa tête en début de bande et calculera f3(x1,x2,. .. ,xp) et ainsi de suite. La seule chose à laquelle il faille veiller est de ne pas se servir de la bande numéro p + 1 pour y écrire un des résultats intermédiaires fi(x 17 x2,... ,xp). Lorsque c'est terminé et que la tête est revenue en début de bande, .At passe dans 1'état initial de .A", et travaille comme le ferait .A", en se servant de 8 1 (sur laquelle, rappelons-le est représenté f1(x1,x2,... ,xp)) comme première bande, de 8 2 comme deuxième bande, etc., et en se servant de la bande numéro p + 1 pour y écrire le résultat h(x1,x2,... ,xp). Il ne reste plus qu'à effacer le contenu des bandes 8 1, 8 2 , etc. 3.8 Voyons maintenant comment calculer une fonction définie par récurrence. Il s'agit donc de calculer la fonction partielle fE 1 définie par : f(x1,x2, ... ,xp,O} = g(x1,x2, ... ,xp), f(x1,x2, ... ,xp,y + 1} = h(xhx2, ... ,xp,y,f(x,x2,···,xp,y)}, où g E et h E 2 sont des fonctions partielles calculées par des machines .At et .At', respectivement. On supposera que les machines .At et .At 1 ont p + 1 + k et p + 3 + k' bandes, que leurs ensembles d'états sont E et E' et que E et E' sont disjoints. L'état final de .At est er, celui de .At 1 est eg. La machine .A" qui va calculer f est une machine à p + 4 + k + k' bandes. L'ensemble de ses états est EU E1 U { eo,e1,e2,e3 ,e_.,e5 ,e6 ,e7 } ( où les eh pour i variant de 0 à 7, sont de nouveaux états n'appartenant pas déjà à E U E') ; son état initial est 1'état initial de la machine .At . Il faut donc construire cette machine .A" de telle sorte que, si les entiers x1,x2,... ,xp et Xp+ 1 sont représentés sur les bandes numéro 1, 2, p + 1 à l'instant t = 0, l'entier f(x 1,x2,... ,xp,Xp+1) soit représenté sur la bande p + 2 à la fin du calcul. Voici comment elle fonctionne : Pour commencer, elle va travailler comme .At, en utilisant les bandes 1,2, ... ,p,p + 4 ainsi que k bandes de calcul. A la fin de cette première étape, il y a donc g(x 1,x2,... ,xp) représenté sur la bande numéro p + 4; ensuite, la tête est ramenée en début de bande ; .A" passe alors dans l'état e0 . La machine va alors calculer successivement f(x 11 x2,... ,xp,1), f(x 1,x 2,... ,xp,2), jusqu'à f(x 11 x2,... ,xp,xp+ 1). Lorsqu'elle est en train de calculer f(x 11 x2,... ,xp,y + 1), le nombre y est codé sur la bande p + 2 et la valeur de f(x 11 x2,... ,xp,y) est codée sur la bande p + 3: lorsqu'elle se trouve dans l'état e0 , elle transfère le contenu de la bande numéro p + 4 sur la bande p + 3 (en effaçant la bande numéro p + 4) et compare le contenu de la bande p + 2 avec celui de la bande p + 1 (où est inscrit xp+ 1) : si elle voit que ces nombres sont égaux, elle efface le contenu de la bande p + 2 et s'arrête ; sinon
a:+
a:
a:+
32
Chapitre 5. Récursivité
elle revient en début de bande et se met dans l'état initial de la machine .Jt'; ensuite elle fonctionne comme le ferait cette machine en se servant des bandes numéro 1,2, ... ,p,p + 2 et p + 3 comme bandes de données et de la bande numéro p + 4 pour y écrire le résultat. Lorsque ce dernier calcul est terminé, elle ajoute un bâton à la bande p + 2, replace sa tête en début de bande et se remet dans l'état e0 . Le lecteur que cela amuse pourra écrire la table N de la machine A" et assigner à chacun des nouveaux états eo à e7 un rôle précis. 3.9 Le schéma ~: on veut maintenant construire une machine A" qui calcule g(x1,x2, ... ,xp) = J.LY(f(x 1,x2,... ,xp,y) = 0), où fest elle-même une fonction partielle calculée par une machine .Jt. On va supposer que .Jt a p + 2 + k bandes et que son ensemble d'états est E. La machine A" a aussi p + 2 + k bandes, son ensemble d'états est E U { eo,e1,e2,e 3,} où eo, e1, e2 et e3 ne sont pas déjà dans E ; l'état initial de A" est le même que celui de .Jt, et son état final est e3. Nous nous contenterons de décrire le fonctionnement de A" : elle commence à travailler exactement comme le ferait .Jt avec les données xhx2, ... ,0 ; elle va donc écrire le nombre f(xhx 2, ... ,xp,O) (si celui-ci est défini, évidemment) sur la bande numéro p + 2; elle revient alors en début de bande et passe dans l'état e0. Elle avance sa tête d'une case et examine ce qui est écrit sur la deuxième case de la bande p + 2: si c'est un b, le calcul est terminé et elle passe dans l'état e3. Sinon elle passe dans l'état e1 qui lui fait remplacer le premier blanc qu'elle trouve sur la bande p + 1 par un bâton ; elle passe alors dans l'état e2 qui ramène sa tête en début de bande et la remet dans l'état initial de .Jt. La machine calculera donc successivement f(x 1,x2,... ,xp,O), f(x 1,x2, ... ,xp,1) etc. et ne s'arrêtera que lorsqu'elle aura trouvé O. 3.10
Nous venons donc de terminer la démonstration du théorème suivant :
THEOREME : Toutes les fonctions partielles récursives sont T-calculables.
REMARQUE : Il faut bien se persuader que les machines que nous avons décrites pour calculer les fonctions partielles définies par composition, par récurrence ou par le schéma ~ ne se contentent pas de calculer la valeur de ces fonctions lorsqu'elles sont définies ; elles ont aussi la propriété de ne pas s'arrêter lorsque la fonction en question n'est pas
définie.
3. Machines de Turing
33
Les fonctions partielles T-calculables sont récursives 3.11 Pour cette sous-section et les trois suivantes, on fixe une machine de Turing .At et on va supposer que .Jt calcule une fonction partielle f E Pour montrer que, dans ces conditions, fest récursive, on va d'abord coder la situation dans laquelle se trouve .At à l'instant t par un entier et montrer que ce code est une fonction récursive primitive de
a-;.
tet des conditions initiales. On aura besoin des fonctions an introduites en 1.11. Il est bien clair que le nom des états n'a pas d'importance. Quitte à les renommer, on peut supposer que l'ensemble des états est { 0,1,2, ... ,m }. Pour fixer les idées, disons que l'état initial est 0 tandis que 1 est l'état final. En outre, on identifie le symbole blanc avec 0, le symbole de début de bande d avec 1 et le bâton avec 2.
DEFINITION : Supposons que .Jt possède n bandes. On appelle configuration de .Jt à l'instant t la suite infinie C(t) = (s0 ,s17 ... ,Sï, ... ) où, pour tous n,u et v (0 :s;; v< n), Snu+v est le symbole écrit sur la case numéro u + 1 de la bande numéro v+ 1 (si est donc un entier compris entre 0 et 2). La sit1111tion de la machine à l'instant t est le triplet S(t) = (e,k,C(t)), où e est l'état où se trouve la machine à l'instant t, k Je numéro des cases
se trouvant devant la tête, et C(t) la configuration de la machine.
Autrement dit, C(t) est la suite obtenue en mettant bout à bout les suites 1 2 , t 1e sym bo1e ecnt , . sur 1a case numero , u1,u2 , ... ,Uj ... , ou' O'i est 1a sm't e ( t ï,t j, ... ,t ") i , t j1 etan 1. de la bande numéro j. On a déjà remarqué que cette suite infinie n'a qu'un nombre fini de termes non blancs (ou non nuls). Les suites infinies de symboles n'ayant qu'un nombre fini de termes non nuls seront codées de la façon suivante: à C = (s0 ,s 17 ... ,Sj, ... ), on fera correspondre le code
f(C)
=
E
Sj.3i.
i)O
On utilisera ce même codage pour les suites finies : à C = (s0 ,s 17 •.• ,sq), on fait correspondre
f(C)
= O( Ei (q Sj.3i.
Si on connaît le code r(C) de la configuration C, on peut facilement retrouver le symbole écrit sur une case quelconque des bandes : désignons respectivement par q(x,y) et r(x,y) le quotient et le reste de la division euclidienne de x par y (si y= 0, on posera arbitrairement q(x,y) = r(x,y) = 0). Le symbole écrit sur la case numéro u de la bande numéro v est
r(q(f(C),3" (u-1) +v-1),3).
34
Chapitre 5. Récursivité
On peut tout aussi facilement retrouver la suite u des n symboles écrits sur les cases numéros u des différentes bandes : posons c(x,y,z) = r(q{x,3z
a-
LEMME : Il existe une fonction récursive primitive gE 1 telle que, si x est le code de la situation de la machine à l'instant t, alors g(x) est le code de la situation de la machine à l'instant t + 1.
~ La fonction g est définie par cas (exactement 3". (rn + 1) + 1 cas) : pour chaque suite u = (so,s 1, ..• ,sn-1) d'éléments de { 0,1,2} et chaque jE { 0,1, ... ,rn }, on va décrire ce qui se passe si à l'instant t la machine lit la suite u et se trouve dans l'état j: L'état où se trouve la machine, le numéro des cases observées et le code de la configuration des bandes sont respectivement {J~(x), {J~(x) et {J~(x). Le code de la suite que la tête est en train de lire est t:{{J~(x),{J~(x),n) = c. Pour chaque c compris entre 0 et 3" - 1 (ce sont les valeurs que peut prendre
r( u) si u est une suite de symboles de longueur n), et pour chaque j compris entre 0 et rn: • Si {J~(x) = j, si c({J~(x),{J~(x),n) = c, si f{s 0 ,s 1, .•• ,sn-1) = c (autrement dit, pour chaque i compris entre 0 et n - 1, on pose Si= r(q(c,3i),3) = t:{c,i + 1,1)), si M(so,s1... ,Sn-1,j) = (t 0 ,t 1... ,tn-1,h,w) (et par conséquent les ti seront compris entre 0 et 2, h sera compris entre 0 et rn et w entre -1 et + 1) et si f{t 0 ,t 17 ••• ,tn-1) = c', alors : le nouvel état sera h ; la nouvelle position de la tête sera {J~(x) + w; la nouvelle configuration ne diffère de l'ancienne que sur les cases numéro {J~(x) (qui correspondent, dans la configuration de .At, aux indices compris entre n({J~(x) -1) et n({J~(x) -1) + n -1) où les ti remplaceront les Sj. Son nouveau code sera donc:
{J~(x) + 3"·
3. Machines de Turing
g(x) =
35
O:J{h,,8~(x) + w,,8~(x) + 3"· (~(x) -l) (c'- c)).
• Si ,8~(x) > rn ou si t:{,8~(x),,8~(x),n) est strictement supérieur à 3" - 1 (cas qui ne se produira pas si x est réellement le code d'une situation), on pose arbitrairement g(x) =O. La fonction g que l'on vient de définir est bien récursive primitive parce qu'elle est définie par cas en utilisant des fonctions récursives primitives et des ensembles récursifs primitifs. La fonction M qui intervient dans la définition est complètement inoffensive. (:;;)
3.13
Démontrons maintenant le fait, intuitivement clair, que si on connaît la
situation initiale de la machine, on peut en déduire sa situation à n'importe quel instant. Définissons la fonction Sit{t,x1,x2, ... ,xp) par récurrence en posant : Sit{O,x1,x2, ... ,xp) = O:J{0,1,f{C)), C étant la configuration des bandes où, x1 est représenté sur la première bande, x2 sur la seconde, etc. jusqu'à la p-ème bande sur laquelle xp est représenté, les autres bandes étant blanches. Sit(t
+ 1,x11x2, ... ,xp) = g(Sit(t,x1,x2,···,xp)).
LEMME : La fonction Sit{t,x1,x2, ... ,xp) est récursive primitive. Pour tous t,x 11 x2, ... ,xp, Sit(t,x 17 x2, ... ,xp) est égale au code r(S) de la situation de la
machine .Jt à l'instant t, en supposant qu'à l'instant t = 0, les entiers étaient représentés sur les bandes 1,2, ... ,p, les autres bandes étant blanches.
x11x2, ... ,xp
~
Avec ce que l'on vient de voir, il suffit de montrer que Sit(O,x17 x2, ... ,xp) est une
fonction récursive primitive de x1,x2, ... ,xp. Or : Sit(O,x17 x2,···,xp) = O:J(0,1,f(C)) ; où C est la configuration initiale des bandes. Il suffit donc de voir que f{C) est une fonction récursive primitive de x17x2, ... ,xp. Notons : p(i,x) la fonction égale à 2 si i ~x et à 0 sinon. Alors, si C = (s 0 ,s 17 ••• ,Sj ... ) est la configuration initiale de la machine, Si est le symbole écrit sur la bande numéro r(i,n) si et
= 1 si 0 ~ i ~
+ 1, en q(i,n)-ème position.
On a donc:
n- 1
Si= p{q(i,n),xrci,n) +1) si i ~ n ;
donc la fonction .\ix1x2... xp.Si est une fonction récursive primitive de même que f(C) qui est égale à Ei~Crl> .supcxhx2,. .. ,xp> 3i.si.
fJ
36
Chapitre 5. Récursivité
On peut maintenant terminer la démonstration et montrer que f, la fonction que calcule la machine .Jt, est une fonction partielle récursive : f(x 1,x2,... ,xp) est égale, si elle est définie, au nombre de bâtons se trouvant sur la bande numéro p + 1 lorsque la machine a terminé son calcul. On trouve d'abord le temps de calcul (le premier instant où la machine atteint l'état final) : T(x,x2, ... ,xp) = ~t(,B~(Sit(t,x,x 2 , ... ,xp)) = 1), qui est donc défini si et seulement si f(x 1,x2,... ,xp) est elle-même définie ; connaissant la situation de la machine à cet instant T(x,x2,... ,xp), il est n'est pas difficile de compter le nombre de bâtons se trouvant sur la bande numéro p + 1. Introduisons la fonction a : a(x) = ~y(r(q(,8~(x),3"
On peut donc énoncer :
THEOREME: Si fest une fonction partielle qui est T-calculable, alors fest
récursive.
On peut remarquer que le seul endroit où l'on utilise le schéma ~non borné est la définition de la fonction T. En effet, un schéma ~ borné est suffisant pour définir la fonction a qui est donc récursive primitive. Cela provient du fait que, si x est le code de la situation de la machine, il n'y a certainement pas plus de x bâtons écrits sur ses bandes. Donc a(x) =~y~ x (r(q(~(x),3"
t'
3. Machines de Turing
37
nécessaires si on a déjà toutes les fonctions récursives primitives) : soit en effet .Jt une la fonction partielle T que machine de Turing calculant une fonction partielle f E l'on vient de définir appartient visiblement à .A (la fonction Sit est récursive primitive). de même que f qui s'obtient à l'aide de Tet de fonctions récursives primitives. • Considérons maintenant le plus petit sous-ensemble ~ de contenant les fonctions récursives primitives et clos pour la composition et le schéma 1-L total (c'est-à-dire que le schéma 1-1. ne peut être utilisé que s'il définit une fonction totale). Cet ensemble est exactement égal à 1'ensemble des fonctions totales récursives : si f est une fonction totale récursive calculée par une machine .Jt, la fonction T qui lui correspond appartient à ~' et on voit que f aussi.
a; ;
a-
Machines de Turing universelles 3.15
Jusqu'à présent, on a construit une machine de Turing pour chaque fonction
partielle récursive que l'on voulait calculer. On va voir maintenant qu'il existe une machine de Turing qui est capable de calculer toutes les fonctions partielles récursives (à un nombre fixé de variables, mais ceci n'est pas bien gênant puisque l'on sait coder une
a:
par une fonction partielle de ~ au moyen de la fonction ap). fonction partielle de L'idée est de construire une machine à laquelle on fournirait, en plus de la valeur des variables, les instructions qu'elle devra suivre, qui sont en fait contenues dans la table de transition. On commencera plutôt par construire une fonction récursive universelle (dans un sens qui sera clair à la fin de cette section). Pour cela, il est indispensable d'établir un codage des machines de Turing. On a déjà dit qu'une machine de Turing était définie par : • le nombre n de ses bandes ; • l'ensemble E de ses états, que l'on supposera encore être de la forme {0,1, ... ,m }, avec toujours 0 comme état initial et 1 comme état final; • sa table de transition M: c'est une application de S"xE dans S"xEx{-1,0,+1}, c'est-à-dire d'un ensemble fini dans un ensemble fini. Il est tout-à-fait possible, bien qu'un peu compliqué, de coder cette application par un entier. Pour chaque suite p = {s1,s 2,... ,sn,e) de S"xE, définissons successivement : r1 = ~(r(sl,s2,. .. ,sn),e) ; r2 = ll:l{f{tht2, ... ,tn),e',E + 1}, où (tht2, ... ,tn,e',E) = M(p); n(p) = [w{r 1)] r2 . (Rappel : w{i) est le {i + 1}-ème nombre premier.)
38
Chapitre 5. Récursivité
Le code de la table M sera l'entier u défini par : u=
n
n(p).
~s"xE
Il est facile de retrouver M à partir de son code u : si on veut connaître (tt,t2, ... ,tn,e',E) = M(s 11 s2, ... ,sn,e), on calcule le code c = f(s 1,s2, ... ,sn) et r = ~(c,e). On utilise ensuite la fonction 6 introduite en 1 .12 : t5(r,u) = tr:J(C',e',E + 1), OÙ C1 = f{tt,t2, ... ,tn), et le décodage se termine alors sans difficulté. 3.16 Par définition, l'indice d'une machine .Jt est l'entier tr:J(n,m,u), où n est le nombre de bandes de .Jt, rn + 1 le nombre de ses états, et u le code de sa table de transition. Il est bien clair que la condition «être l'indice d'une machine de Turing» est très restrictive, et que le premier entier à satisfaire cette condition est déjà très grand. Pour chaque entier p, on pose : lp = {x ; x est l'indice d'une machine de Turing ayant au moins p + 1 bandes}. Il serait horriblement ennuyeux, mais très facile, de vérifier que les ensembles lp sont récursifs primitifs. Définissons alors la fonction STP(i,t,x1,x2,... ,xp) par : • Si i E lp, STP(i,t,xl,x2, ... ,xp) = r(S(t)) est le code à l'instant t de la situation de la machine d'indice i qui a commencé à fonctionner à l'instant t = 0 avec la configuration suivante : les entiers x11 x2,... , xp sont représentés sur les bandes 1, 2, ... p, les autres bandes étant blanches (on remarque que ce code n'est jamais nul) ; • STP(i,t,x 11 x2,... ,xp) = 0 sinon. 3.17
THEOREME : Pour chaque entier p, la fonction STP(i,t,x1,x2,. .. ,xp) est récursive primitive.
~
La fonction STP va être définie par cas suivant que i appartient à lp ou non : si i~lp, on pose évidemment STP(i,t,x11 x2 , ... ,xp) =0. C'est l'autre cas qui demande un peu plus de travail. On voit sans grande difficulté qu'il existe une fonction récursive primitive h{i,x11x2,... ,xp) qui, si i est l'indice d'une machine de Turing .Jt ayant au moins p + 1 bandes, est le code de la situation initiale de .Jt, lorsque x1,x2 , ... ,xp sont représentés sur les bandes 1,2, ... ,p, les autres bandes étant blanches. Il suffit de reprendre les calculs du lemme 3.13 en remplaçant le nombre n par {l~(i) (qui est le nombre de bandes de la machine d'indice i). Il n'y a pas à s'inquiéter de la valeur que prendra cette fonction (qui
3. Machines de Turing
39
est récursive primitive, donc toujours définie) si i n'est pas l'indice d'une machine de Turing ou si P~(i) < p + 1. Il faut ensuite montrer qu'il existe une fonction récursive primitive g(i,x) telle que, si i est l'indice d'une machine .At et x le code de la situation de .At à l'instant t, alors g(i,x) est le code de la situation de .At à l'instant t + 1. On s'inspire de la preuve de 3.12 ; toutefois on n'a même pas besoin de définition par cas. La suite u de symboles que la tête est en train de lire a pour code c = t:(/1~(x),/1~(x),/1~(i)). Si c' est le code de la suite qui sera écrite à la place de u, e' le nouvel état de la machine et E ( = 0,1, ou -1 ) le déplacement de la tête, on a : ll:J(C 1,e 1,ê + 1} = t5(tl2(C,/1~(x)},/1~(i)}. Pour simplifier les notations, posons 6 = t5( ll"l( c,/1~(x)),/1~(i)) ; alors g(i,x) = ll:J(e',k',r(C')), où:
e' = P~(b); k' = P~(x) + P~(b)- 1 ; r(C')
= p~(x) + 3~ilm
c) où c'
= 11~( b).
On montre enfin par récurrence (comme en 3.13) que la situation d'une machine de Turing à l'instant t est une fonction récursive primitive de son indice, de la situation initiale et de t : STP(i,t,x17 x2,. .. ,xp). Pour chaque entier p strictement positif, définissons la fonction partielle
~(i,x 17 x2 , ... ,xp)
de la façon suivante :
• si i ~ lp, ~(i,x 1 ,x 2 , ... ,xp) n'est pas définie ; • si i E lp, alors on fait fonctionner la machine d'indice i avec x17 x2,... ,xp représentés sur ses bandes numéro 1, 2, ... ,p, les autres bandes étant blanches et : - si cette machine ne s'arrête pas, alors on déclare que ~(i,x 1 ,x 2 , ... ,xp) n'est pas définie ; - si elle s'arrête, alors
~(i,x 17 x 2 , ... ,xp) est égal au nombre de bâtons consécutifs se trouvant au début de la bande numéro p + 1.
3.18
THEOREME D'ENUMERATION : Pour tout entier p
>
0, ~ est une
fonction partielle récursive. De plus, si fest une fonction partielle récursive
à p variables, il existe un entier i tel que : f = Àx1x2···xp.~(i,xhx2,···,xp).
t;;J La démonstration suit encore celle que l'on a faite en 3.13 ; on va introduire une fonction partielle récursive TP et des prédicats récursifs primitifs BP et (P qui seront
40
Chapitre 5. Récursivité
utiles par la suite; TP(i,x1,x2,... ,xp) est, lorsque i E lp, le temps de calcul de la machine d'indice i, celui-ci n'étant pas défini si cette machine ne s'arrête pas : TP(i,x1,x2,···,xp) = lJ.t(P~(STP(i,t,x 1 ,x2, ... ,xp)) = 1)). On remarque que, si i t. lp, TP(i,x 11 x2,... ,xp) n'est pas défini. Pour chaque entier i, on pose:
BP = { (i,t,xhx2,···,xp) ; P~(STP(i,t,x1,x2,···,xp)) = 1) }, BP(i) = { (t,x1,x2, ... ,xp) ; (i,t,x1,x2,···,xp) E BP }. Ces ensembles sont récursifs primitifs et (t,x 11 x2,... ,xp) E BP(i) signifie (lorsque i est l'indice d'une machine de Turing) que cette machine que l'on a fait démarrer avec x1,x 2,... ,xp représentés sur ses p premières bandes, les autres bandes étant blanches, a terminé son calcul à l'instant t. On définit encore : CP= { (i,y,t,x11x2,···,xp) ; i E lp, (i,t,x11x2,... ,xp) E BP et le nombre de bâtons se trouvant à l'instant t sur la bande numéro p + 1 de la machine d'indice i que l'on a fait démarrer avec x11x2,... ,xp sur ses p premières bandes, les autres bandes étant blanches, est exactement y}, et CP(i) = { (y,t,x1,x2,···,xp) ; (i,t,x 11 x2,···,xp,y) E CP}. Il est encore très facile de voir que ces ensembles sont récursifs primitifs. On peut alors définir la fonction partielle cpP comme suit : cpP(i,x1,x2,···,xp) = lJ.y((i,y,TP(i,x 1,x2,···,xp),xhx2,···,xp) E CP), ceci montre bien que cpP est récursive. et
f.J
On peut, comme précédemment, améliorer un peu cette écriture pour mettre en évidence le fait que le seul endroit où l'on a besoin du schéma lJ. non borné est la définition de TP ; en effet, le nombre de bâtons se trouvant sur une bande d'une machine de Turing est inférieur au code de la situation de cette machine. Posons
tP(i,t,xhx2,···,xp) =l'Y~ STP(i,t,x1,x2,···,xp)[(i,t,x1,x2,···,xp,y) E CP] t/J est une fonction récursive primitive et cpP(i,x1,x2,···,xp) = tP(i,T(i,x1,x2,···,xp),x1,x2,···,xp). 3.19 La fonction partielle cpP étant elle-même récursive, est calculable par une machine de Turing .!tt ; cette machine peut donc calculer toutes les fonctions partielles récursives à p variables. Pour chaque entier i, notons : ~ = ..\x1x2···xp.r/(i,xhx2,···,xp)· On voit alors que l'ensemble { ~ ; i E IN} est égal à l'ensemble de toutes les fonctions
partielles récursives à p variables.
4. Les ensembles récursivement énumérables
41
DEFINITION : Soit fE~ une fonction partielle récursive. On dit que i E IN est un indice de f si f = v}!.
En particulier, si i est l'indice d'une machine de Turing calculant f, c'est aussi de domaine un indice de f; mais il est clair, par exemple, que la fonction partiellede vide a aussi pour indice tous les entiers n'appartenant pas à lp. Il peut aussi très bien
a-:
arriver que j soit l'indice d'une machine .Jt ayant au moins p + 1 bandes, mais que cette machine .Jt ne calcule pas de fonction partielle de ~' tout simplement parce que, lorsqu'elle s'arrête, ses bandes n'ont pas la configuration exigée par la définition 3.4 ; on a encore un exemple d'un entier i qui est l'indice d'une fonction f, bien que la machine d'indice i ne calcule pas la fonction fau sens strict du terme.
4. LES ENSEMBLES RECURSIVEMENT ENUMERABLES
Ensembles récursifs et récursivement énumérables 4.1
DEFINITION : Soit A Ç !NP; on dit que A est récursif si sa fonction
caractéristique XA est (totale) récursive. On dit que A est récursivement énumérable si c'est le domaine de définition d'une fonction partielle récursive.
we
On notera le domaine de définition de la fonction partielle d'indice x (c'est-à-dire de r/x). Il est clair que l'ensemble { x E IN} est l'ensemble de tous les on dira que x est un indice sous-ensembles récursivement énumérables de INP. Si A=
we ;
we,
de A. On va montrer dans cette sous-section quelques faits simples sur les ensembles récursifs et récursivement énumérables.
• Tout ensemble récursif est récursivement énumérable. La fonction partielle f = J.LY(Y + 1 =x) est récursive, non définie en 0 et définie partout ailleurs. Si XA est la fonction caractéristique d'un ensemble récursif A, foXA est une fonction partielle récursive et a pour domaine de définition l'ensemble A. ~
(;;)
42
Chapitre 5. Récursivité
• Pour chaque entier p, l'ensemble des sous-ensembles récursifs de INP est clos pour les opérations booléennes. t;:;l
Même preuve que pour les ensembles récursifs primitifs.
(;;)
• L'intersection et l'union de deux sous-ensembles récursivement énumérables de !NP sont récursivement énumérables. t;:;l Soient A1 et A2 deux sous-ensembles récursivement énumérables de INP, qui sont les domaines de définition des fonctions partielles f 1 et f 2 respectivement, calculées par des machines d'indices respectifs i1 et i2 . Il est d'abord clair que A1 n A2 est le domaine de définition de f 1 + f 2 . D'autre part, A1 U A2 est le domaine de définition de la fonction partielle : p.t((t,x1,x2, ... ,xp) E BP(i 1) U BP(i2)) (qui est récursive puisque les ensembles BP(i) (voir en 3.18) sont récursifs primitifs). (;;)
4.2 Les trois propriétés qui suivent sont tellement importantes qu'on va leur donner le statut de :
THEOREME: Soit A Ç INP; A est récursif si et seulement si A et !NP- A sont tous les deux récursivement énumérables.
t;:;l Un sens est clair : si A est récursif, INP - A est aussi récursif (4.1) et ces deux ensembles sont récursivement enumérables. Soient i l'indice d'une machine calculant une fonction partielle de domaine A et i' celui d'une machine calculant une fonction partielle de domaine !NP - A. Alors h(x 1,x2, ... ,xp) = p.t[(t,x1,x2,... ,xp) E BP(i) U BP(i')]
est une fonction récursive totale et (x1,x2,... ,xp) E A si et seulement si (h(x1,x2, ... ,xp),x 1,x2,···,xp) E BP(i). Si x(t,xhx2,... ,xp) est la fonction caractéristique de BP(i), celle de A est donc égale à
x(h(xhx2,·· .,xp),xl,x2,··· ,xp), ce qui montre bien que A est récursif. (;;)
4. Les ensembles récursivement énumérables
4.3
43
THEOREME : La projection d'un ensemble récursivement énumérable est
récursivement énumérable.
Cela veut dire que, si A Ç INP+l est récursivement énumérable, alors l'ensemble 8 = { (xhx2, ... ,xp) ; il existe Xo tel que (xo,x 1,x2, ... ,xp) E A} est aussi récursivement énumérable. ~
Soit i l'indice d'une machine de Turing calculant une fonction de domaine A. On
voit alors que :
(Xo,xhx2,... ,xp) E A si et seulement si il existe un entier t tel que (t,xo,x1,x2, ... ,xp) E BP(i) et (x1,x2,... ,xp) E 8 si et seulement si il existe des entiers t et x0 tels que (t,xo,xhx2, ... ,xp) E BP(i). Cela montre que 8 est le domaine de définition de la fonction partielle récursive g(x1,x2, ... ,xp) = ~((,8~(z),/J~(z),x 1 ,x2, ... ,xp) E BP(i)).
4.4
THEOREME : Tout sous-ensemble récursivement énumérable de
INP
est la
projection d'un sous-ensemble récursif primitif de INP+l.
~
Ce qui veut dire que, si A Ç INP est récursivement énumérable, il existe un
ensemble 8 Ç INP+l récursif primitif tel que :
(xhx2,. .. ,xp) E A si et seulement si il existe xo tel que (xo,x 1,x2, ... ,xp) E B. Il suffit de prendre pour 8 l'ensemble BP(i) défini en 3 .18, où i est l'indice d'une machine de Turing calculant une fonction de domaine A. ~
4.5
Voici quelques corollaires de ces théorèmes :
• Le graphe d'une fonction partielle récursive est récursivement énumérable. ~ Soit fE~ ; il s'agit de montrer que l'ensemble G = { (xhx2, ... ,xp,y) ; y= f(xhx2, ... ,xp)} est récursivement énumérable. Si i est l'indice d'une machine calculant f, on voit que (xhx2,... ,xp,y) E G si et seulement si il existe un entier t tel que (y,t,xhx2,... ,xp) E (P(i), ce qui montre que G est la projection d'un ensemble récursif primitif et est donc récursivement énumérable. f;;J
44
Chapitre 5. Récursivité
La réciproque est vraie : si le graphe G d'une fonction partielle f est récursivement énumérable, alors f est partielle récursive : il existe un ensemble récursif primitif A tel que (xhx2,... ,xp,y) E G si et seulement si 3t (xhx2,... ,xp,y,t) E A, et donc f(x1,x2, ... ,xp) = /1~( pt ((x1,x2,···,xp,/l~(t),/l~(t)) E A)). L'image de f, c'est-à-dire l'ensemble des valeurs que prend f, est elle-même une projection du graphe de f; donc : • L'image d'une fonction partielle récursive est récursivement énumérable. La réciproque est vraie; on a même mieux: • Tout sous-ensemble récursivement énumérable non vide de IN est l'image d'une fonction récursive primitive de j 1• ~ Soit A un sous-ensemble de IN non vide et récursivement énumérable; choisissons donc un entier n E A et soit i un indice de A. On a alors x E A si et seulement si il existe t tel que (t,x) E B1(i). On vérifie facilement que A est l'image de la fonction récursive primitive g définie
comme suit:
g(z) = fl~(z) si (/l~(z),/l~(z)) E B1(i) ; g(z) = n si (/l~(z),/l~(z)) ~ Bl(i).
4.6 Voici maintenant un point assez subtil qui est la généralisation de la définition par cas aux fonctions partielles récursives. • Soient g{x1,x2,... ,xp) et g'(x1,x2,... ,xp) deux fonctions partielles récursives, et A Ç INP un ensemble récursif. Alors la fonction f définie par:
f(x 11 x2, ... ,xp) = g(xhx2, ... ,xp) si (x1,x2, ... ,xp) E A f(x 11x2, ... ,xp) = g'(x1,x2, ... ,xp) sinon
et est une fonction partielle récursive.
(Attention au sens exact de cette définition: si (xhx2, ... ,xp) E A, alors f(x 1,x2,... ,xp) est définie si et seulement si g(xhx2,... ,xp) l'est, et dans ce cas ces deux valeurs sont égales ; même chose avec g' si (x1,x2,... ,xp) ~A. On se convaincra que f n'est pas en général égale à g.x(A) + g'.x(IN- A)). ~
Soient i et i' des indices pour g et g'. Considérons le sous-ensemble C de
1NP+
2
suivant: C = { (y,t,x1,x2,... ,xp) ; [ (y,t,x1,x2,···,xp) E CP(i) et (x1,x2, ... ,xp) E A] ou [ (y,t,x11x2,···,xp) E CP(i') et (x1,x2, ... ,xp)~A] }.
45
4. Les ensembles récursivement énumérables
Cet ensemble est récursif; (y,t,x1,x2,... ,xp) E C signifie que: soit (xt,x2,... ,xp) E A et la machine d'indice i a terminé son calcul à l'instant t et la valeur qu'elle trouve est y, soit (x1,x 2, ... ,xp)~A et la machine d'indice i' a terminé son calcul à l'instant tet la valeur qu'elle trouve est y. On voit donc que f(x 1,x2,... ,xp) est égale au plus petit y tel qu'il existe t tel que (y,t,x 1,x2,... ,xp) E C. Cela donne: f(x 1,x2,... ,xp) = ,8~[~((,8~(z),,B~(z),xhx2,···,xp) E C)), et on voit bien que fest partielle récursive. (;;)
Le problème de l'arrêt · 4.7 Nous avons jusqu'à présent soigneusement évité d'aborder un problème qui pourtant s'impose: existe-t-il des ensembles récursivement énumérables qui ne sont pas récursifs ? Avec ce que l'on sait déjà, cela revient à se demander s'il existe un ensemble récursivement énumérable dont le complémentaire n'est pas récursivement énumérable. La réponse est oui : reprenons la fonction partielle à deux variables tp1(i,x) ; posons g(x) = tp1(x,x) et soit A le domaine de définition de g. Cet ensemble est certainement récursivement énumérable. Mais son complémentaire ne l'est pas. En effet, pour tout entier x, xE A si et seulement si xE W!. Supposons, pour obtenir une contradiction, qu'il existe un entier n tel que IN- A= W~, c'est-à-dire tel que, pour tout entier x, x~A
si et seulement si xE W~. En choisissant x égal à n dans les deux équivalences ci-dessus, on obtient : n E A si et seulement si n E W~, n ~A si et seulement sin E W~, ce qui est manifestement absurde. Ce type de raisonnement, très populaire chez les logiciens, est connu sous le nom d'argument diagonal. On va en faire une analyse plus précise qui justifiera le mot diagonal : on a établi ci-dessous un tableau à double entrée rempli de zéros et de uns, dont chaque entrée est indexée par les entiers, de telle sorte que la suite écrite sur la première ligne soit la fonction caractéristique de celle écrite sur la seconde la fonction caractéristique de wL etc.
wJ,
Dans ce tableau E p,n est égal à 1 si n E W ~ et à 0 sinon. On voit alors que la fonction caractéristique de l'ensemble A qui a été construit plus haut est obtenue en prenant la diagonale de ce tableau, et la suite correspondant à la fonction caractéristique du complémentaire de A est : 1-
Eo,o' 1 -
Et,t ' ... ' 1 - En,n ' ...
46
Chapitre 5. Récursivité
0
1
2
n
Eo, n
w n1
En, 0
En,
1
En,2
Si IN- A était égal, pour un certain n, à W~, alors la (n + 1)-ème ligne de ce tableau serait : 1-Eo,o, 1-E 1, 1 , ... , 1-En,n, ... Mais à l'intersection de cette ligne avec la (n + 1)-ème colonne, (celle de l'entier n), qui se trouve aussi sur la diagonale, on devrait trouver à la fois En ,n et 1 - En ,n ce qui est absurde.
4.8
~
COROLLAIRE: L'ensemble { (m,x) ; rp1(m,x) est définie} n'est pas récursif.
En effet, si cet ensemble était récursif, il en serait de même de l'ensemble:
{ (x,x) ; rp1(x,x) est définie}, et on vient de voir que ce n'est pas le cas. (;;)
L'intuition est qu'un ensemble A Ç IN est récursif s'il existe un algorithme permettant de décider si un entier appartient ou non à A. Il est récursivement énumérable s'il existe un algorithme .A qui permet d'énumérer A. Si A est récursivement énumérable et si on se demande si un entier donné n appartient ou non à A, on peut toujours faire tourner l'algorithme .A. Si, à un moment donné, l'entier n apparaît dans la suite énumérée par .A, alors on est sûr que n E A. En revanche, on ne peut rien dire tant qu'il n'est pas apparu. Le corollaire précédent exprime donc que la donnée de l'indice d'une machine de Turing (qui intuitivement représente les instructions) et de la configuration initiale, ne
4. Les ensembles récursivement énumérables
47
permet pas de savoir effectivement si cette machine va s'arrêter ou non. C'est ce qu'on traduit en disant que le problème de l'arrêt d'une machine de Turing est indécidable. Il y a un grand nombre de problèmes pour lesquels il est intéressant de savoir
s'ils sont décidables ou non. Par exemple, existe-t-il un algorithme permettant de décider si un nombre p donné est premier ou non ? On sait depuis bien longtemps (au moins depuis Eratosthène et son crible) que la réponse est oui. Lorsqu'on veut être formel, on dit : l'ensemble { p E IN ; pest premier} est récursif. Profitons-en pour donner une définition précise:
4.9
DEFINITION : Soit B(x1,x2,... ,xp) une propriété portant sur les entiers x1,x2,. .. ,xp ; on dit que le problème: «est-ce-que la suite (x 17 x2,... ,xp) vérifie B ?» est décidable si l'ensemble des suites(x 1,x2,... ,xp) telles que B(x 1,x2,... ,xp) soit vrai est récursif.
On ne se restreint pas aux propriétés portant sur les entiers ; comme dans le cas des machines de Turing, on peut utiliser des codages par des entiers. Le chapitre suivant est riche en exemples de ce type. Le mot décidable utilisé ici évoque la notion intuitive de décidabilité, c'est-à-dire la décidabilité par un moyen mécanique ; il est totalement justifié si on est convaincu de la validité de la thèse de Church.
Le théorème smn 4.10
Sous ce nom barbare se cache un théorème extrêmement important dont la
signification est la suivante : considérons la fonction partielle fE j~+m d'indice i et fixons les n premières variables ; donnons-leur par exemple les valeurs a 1,a 2,... ,an. Il reste une fonction partielle g
E
j~ donnée par :
g = ÀYtY2···Ym.f(at,a2, ... ,an,Yt,Y2,···,Ym), qui est manifestement récursive ; et bien, un indice pour cette fonction g peut être calculé de façon effective à partir dei et de a 1,a 2,... ,an.
THEOREME SMN : Pour chaque couple d'entiers rn et n, il existe une fonction récursive primitive sW à n + 1 variables telle que, pour tous i, x1, x2, ... , Xn, Yt, Y2, ... , Ym, on ait : !pn+m(i,x1,x2, ... ,xn,Yl,Y2,· · .,ym) = ~(sW(i,x1,x2,. · · ,xn),yl,Y2,· · .,ym).
48
Chapitre 5. Récursivité
f;;) La valeur de s:'(i,xhx2, ... ,xn) est définie par cas suivant que i E ln+m (qui est l'ensemble des indices des machines de Turing ayant au moins n + rn + 1 bandes et qui,
rappelons-le, est récursif primitif) ou non. Soit i0 un entier qui n'est pas l'indice d'une machine de Turing (0, par exemple, convient parfaitement). • Si i 't ln+m, on pose s:'(i,xl,x2,···,xn) = io; alors ni f,O"+m(i,xhx2,···,xn,YhY2,. .. ,ym) ni
+ 2,
a2 bâtons sur la
bande numéro rn + 3, etc., et an bâtons sur la bande numéro rn + n + 1;
2) ensuite elle travaille comme le ferait .At, à ceci près que les rôles des différentes bandes sont permutés : la bande numéro rn
+2
(où est représenté a1) doit
être considérée comme la première bande, et d'une façon générale, pour k compris entre 1 et n, la bande numéro rn
+k+1
(où ak est représenté) doit être considérée comme la
k-ème bande ; de plus, pour k compris entre 1 et rn, la k-ème bande doit être considérée comme la bande numéro n
+ k ; quant à la bande numéro rn + 1, elle joue le rôle de la
bande numéro n +rn + 1 (et c'est donc sur cette bande que sera écrit le résultat) ; 3) enfin elle efface le contenu des bandes numéro rn + 2,rn + 3, ... ,rn + n. Deux faits sont maintenant à peu près clairs : Premièrement, la description de .At' est complètement explicite et effective à partir de celle de .At et de la donnée de a1,a 2,... ,an ; il serait horriblement ennuyeux, mais très facile de trouver une fonction récursive primitive à n + 1 variables, que l'on appelleras:', telle que s:'(i,a 1,a 2,... ,an) soit l'indice de la machine .At' lorsque i E lm+n· Deuxièmement, si on fait fonctionner les machines .At et .At', avec comme configuration initiale : • pour k compris entre 1 et rn, le contenu de la k-ème bande de .At' égal au contenu de la bande numéro n + k de .At ; • toutes les autres bandes de .At' blanches ; • pour k compris entre 1 et n, ak représenté sur la bande numéro k de .At , alors, aux permutations des bandes près, ces deux machines vont travailler exactement de la même façon; en particulier, l'une d'elle s'arrête si et seulement si l'autre s'arrête, et dans ce cas le contenu de la bande numéro rn bande numéro n + rn
+1
+ 1 de
.At' sera égal au contenu de la
de .At. Par conséquent, en se reportant à la définition des
fonctions !{l' (3 .17), on voit que, pour tous xl,x2, ... ,xn,Yl,Y2,···,Ym, f,O"+m(i,x 1,x2,···,xn,Yl,Y2,···'Ym) = cp"'(s:'(i,xl,x2,···,xn),yl,Y2,···'Ym)·
4. Les ensembles récursivement énumérables
4.11
49
On va voir quelques applications de ce théorème:
EXEMPLE : Il existe une fonction récursive primitive pl(i,j) telle que, si f = 'P1 et g = tpJ, pl(i,j) est un indice pour la fonction partielle f + g. r;;) Considérons la fonction partielle : Àijx.tp1(i,x) + tp1(j,x). Elle est manifestement récursive, et donc il existe un entier k telle que cette fonction soit égale à ~- Or, pour tous i, j, x, ~(i,j,x) = ~(k,i,j,x) = tp1 (s~(k,i,j),x) = tp1(i,x) + tp1(j,x) Il suffit donc de prendre pl = Àij.s~(k,i,j). ~
On pourrait faire exactement la même chose avec la multiplication ou n'importe quelle fonction partielle récursive. EXEMPLE : Soient n et p des entiers ; il existe une fonction récursive primitive Comp(i 1,i 2,.. .,in,j) telle que : si, pour k compris entre 1 et n, fk E ~ est la fonction partielle d'indice Îk, et sig E a-~ est la fonction partielle d'indice j, alors Comp(ihi 2,.. .,in,j) est un indice pour la fonction partielle h = g(f1,f2, ... ,fn)· ~ La preuve est tout-à-fait analogue à la précédente. Considérons la fonction partielle : ÀÎ 1i2... inj x1x2 ... X p. tp" (j,tpP(i 1,x 1,x2, ... ,xp) ,tpP(i2,xhx2, ... ,xp), ... ,tpP(i n,x1,x2, ... ,xp)). Elle est récursive, et donc il existe un entier k tel que cette fonction partielle soit égale à tp~ +p+1. On a alors : 1 tp"+P+ (k,i 1,i2,-·.,În,j,x 1,x2,... ,xp) = tpP(sg .. 1(k,i1h, .. .,În,j),xhx2,···,xp) , et on peut prendre :
Le théorème de Rice que nous allons montrer maintenant est un autre exemple d'application du théorème smn. Il permet de prouver que certains ensembles d'entiers ne sont pas récursifs. 4.12
THEOREME : Soit X un ensemble de fonctions partielles récursives à une variable, que l'on suppose non vide, et distinct de l'ensemble de toutes les fonctions partielles récursives. Alors l'ensemble A= {x ; ~ EX} n'est pas récursif.
50
Chapitre 5. Récursivité
Il est équivalent de montrer que A ou que son complémentaire n'est pas récursif ; en échangeant éventuellement ces deux ensembles et en remplaçant X par son complémentaire dans l'ensemble des fonctions partielles récursives à une variable, on peut donc supposer que la fonction partielle 90 de domaine vide est dans X. Fixons un entier b n'appartenant pas à A, et définissons la fonction partielle récursive '1/J E r;;J
a; :
VJ..x,y,z) = cp1(b,z)
+ cp1(x,y) - cp1(x,y).
Posons aussi :
'1/Jx,y = ..\z.VJ,.x,y,z). Si cp (x,y) n'est pas définie, la fonction partielle '1/Jx,y n'est jamais définie (donc est égale à Oo), donc est dans X; sinon '1/Jx,y est égale à cp~ et n'est pas dans X; donc '1/Jx,y appartient à X si et seulement si cp1(x,y) n'est pas définie. On applique maintenant le 1
théorème smn : il existe un entier k tel que :
VJ..x,y,z) = cpl(k,x,y,z) = cp1 (s~(k,x,y),z). La fonction h = ..\xy.s~(k,x,y) est récursive primitive, et h(x,y) est un indice pour t/Jx,y· On va se servir maintenant du fait que l'ensemble W = { (x,y) ; cp1(x,y) n'est pas définie} n'est pas récursif (on a montré en 4.8. que son complémentaire ne l'est pas), et on remarque que (x,y) E W si et seulement si h(x,y) E A. Cela montre que A ne saurait être récursif, sinon W le serait aussi (voir 2.10 et 1.6). (:;;)
REMARQUE: l'hypothèse «X non vide et distinct de l'ensemble de toutes les fonctions
partielles récursives» est évidemment indispensable (sinon A est égal à l'ensemble vide ou à IN tout entier et la conclusion du théorème est fausse). Cette hypothèse a été utilisée lorsqu'on a choisi un entier b n'appartenant pas à A. Voici quelques corollaires du théorème de Rice : • Si fE .;(p est une fonction partielle récursive, l'ensemble des indices de f n'est pas récursif (prendre X= { f} dans le théorème de Rice) ; en particulier il n'est pas fini. Intuitivement, si une fonction partielle est calculable, elle est calculable par une infinité de machines. En fait on a bien plus que cela: on ne peut pas donner une description effective de toutes les machines calculant f. • Le problème de savoir si deux machines calculent la même fonction partielle est indécidable : pour chaque entier p, l'ensemble
x = {(i,j)
; cp~ = cp~}
n'est pas récursif. En effet si cet ensemble était récursif, alors l'ensemble { i ; (i,O) E X} = {i ; ~ = cpg} le serait aussi, et on a vu que ce n'est pas le cas.
4. Les ensembles récursivement énumérables
51
• Aussi, par exemple, l'ensemble { n ; cp~ est totale} n'est pas récursif. Il suffit de prendre pour X l'ensemble des fonctions totales récursives. 4.13 D'après le premier corollaire, si une fonction partielle a un indice i, elle a un indice supérieur à i. Le théorème suivant donne une version plus précise de ce fait.
THEOREME: Pour chaque entier p, il existe une fonction récursive
primitive a à deux variables telle que : • pour tous i et n
vJ: = cp~o,n > ;
• pour tout i, la fonction ..Xn. a(i, n) est strictement croissante.
r;;l
Il suffit de construire une fonction récursive primitive
pour tout i : {J(i) > i et c,oSm a(i,O)
fJ à une variable
telle que,
= vJ: ; a sera ensuite définie par récurrence par :
= i;
a(i,n + 1) = {J{a(i,n)). Sans entrer dans les détails, nous allons expliquer comment calculer {J(i). Si i n'est pas l'indice d'une machine de Turing, on prend pour {J(i) un entier qui n'est pas non plus l'indice d'une machine de Turing et qui est supérieur à i (cela se trouve facilement). Si i est l'indice d'une machine de Turing .Jt, on complique de façon arbitraire la machine .Jt (par exemple en ajoutant un état qui ne servira jamais). L'indice de la nouvelle machine, si on s'y prend bien, est strictement supérieur à i et est une fonction récursive primitive de i, et évidemment les deux machines fonctionnent exactement de la même façon et calculent donc la même fonction. ~
L'exercice 26 donne une preuve de ce théorème à partir des théorèmes smn et du point fixe (voir ci -dessous) .
Les théorèmes de point fixe 4.14 Ce sont des théorèmes qui sont aussi très importants et qui sont dus à S. Kleene. On les appelle quelquefois théorèmes de la récursion (les quelques exemples d'application qui suivront justifieront ce nom).
52
Chapitre 5. Récursivité
THEOREME DU POINT FIXE, PREMIERE VERSION: Soient p un entier
positif et a une fonction récursive (totale) à une variable; alors il existe un entier i tel que . ...P -,nP. lf'i -.,.n<•>·
~ Considérons la fonction partielle ~yx 1 x2 ... xp.rpP(a(s~(y,y)),x 1 ,x 2 , ... ,xp). Elle est récursive ; elle admet donc un indice a, et on a pour tous x1,x2,... ,xp et y :
rpP+ 1(a,y,xl,x2,···,xp) = rpP(a(s~(y,y)),xhx2, ... ,xp) = rpP(s~(a,y),xhx2,···,xp). et, en faisant y= a dans les égalités précédentes et en posant i = s~(a,a ), on obtient :
vJ: =
cp~(j)
REMARQUE : L'entier i peut être trouvé de façon récursive primitive à partir d'un indice de a : supposons que a= cp]. Il s'agit d'abord de calculer un indice a de la fonction partielle ~yx 1 x 2 ... xp.cpP(a(s~(y,y)),x 17 x2 , ... ,xp). C'est encore une utilisation du théorème smn: soit b un indice de la fonction partielle ~jyx 1 x2 ... xp.cpP( cp1 (j,s~(y,y)),x 17 x 2 , ... ,xp). On a alors pour tous x1,x2 , ... ,xp et y : cpP(a(s~(y,y)),xhx2,···,xp) = cpP(cp1 (j,s~(y,y)),xl,x2,···,xp) = cpP+ 2(b,j,y,xl,x2, ... ,xp) =
cpP+ 1(sr1(b,j),y ,x 17 x2,... ,xp ). On peut donc prendre a= s 1(b,j) et on pose encore i = s~(a,a ). On vient donc de démontrer:
r
THEOREME DU POINT FIXE, DEUXIEME VERSION : Pour chaque entier
positif p, il existe une fonction récursive primitive hp à une variable telle que, pour tout j, si a= cp] est une fonction totale, alors
cp~p
=
~ n
Voyons une dernière version du théorème du point fixe:
THEOREME DU POINT FIXE, TROISIEME VERSION : Soient n > 0 et p
des entiers et a une fonction totale récursive à p + 1 variables. Alors il existe une fonction récursive primitive h à p variables telle que, pour tous x1,x2, ... ,xp, on ait : cp" =cp" n
h
53
4. Les ensembles récursivement énumérables
~
Soit a un indice pour la fonction partielle
Àzx1x2... XpY1Y2· .. Yn. cp" ( a(x1,x2, ... ,xp,S~+1(z,z,x1,x2, ... ,xp) ),y 1,y2, ... ,yn)· On a donc, pour tous x1,x2, ... ,xp,y1,y2, ... ,yn et z : cp" ( a(x 1,x2, ... ,xp,S~+1(z,z,xhx2, ... ,xp)),y1,Y2, ... ,yn) = cp" +P+l( a,z,x 11 x2,... ,xp,y 1,y 2,... ,yn) = cp"(s~+ 1 ( a ,z,x1,x2, ... ,xp),y 1,y2, ... ,yn)· En faisant z =a, on obtient : cp"( a(xhx2,··. ,xp,S~+l(a ,a,x1,x2,··· ,xp)),YhY2,··· ,yn) = cp"(s~+1(a,a,xl,x2,··· ,xp),YhY2,· .. ,yn) et on peut prendre h(x 11 x2, ... ,xp) = s~+1(a,a,x1,x2, ... ,xp). (;;)
REMARQUE: Là aussi, on pourrait calculer un indice pour h de façon récursive primitive à partir d'un indice de a. 4.15
On va donner des exemples d'application de ces théorèmes; ces exemples
montrent comment les théorèmes du point fixe permettent de généraliser les définitions par récurrence.
EXEMPLE : Considérons la fonction partielle f à deux variables (ce serait exactement la même chose si on prenait une fonction partielle à n + 1 variables) définie par récurrence par:
f(x,O) = g(x), f(x,y + 1) = h(x,y,f(x,y)), où g et h sont des fonctions partielles récursives. Alors, on peut calculer un indice pour f de façon récursive primitive à partir d'un indice pour g et d'un indice pour h. ~ Considérons en effet l'application de dans qui à t/J fait correspondre la fonction partielle VI définie de la façon suivante : • Vl(x,y) = g(x) si y= 0, • Vl(x,y) = h(x,y- 1, t/J(x,y- 1)) sinon. On remarque d'abord que f est le seul point fixe de cette application : c'est la seule fonction partielle qui satisfasse f = f*. D'autre part, si t/J est récursive, il en est de même de VI, et, de plus, on peut calculer un indice pour VI à partir des indices respectifs i1,i2 et i3 de g, h et t/J. Il s'agit là d'une application du théorème smn comme on en a déjà vues : considérons la fonction partielle récursive k(i 1,i 2,i 3,x,y) définie par : k(i1,i2,iJ,x,y) = cp1(i 11 x) si y= 0, k(i1,i2,iJ,x,y) = cpl(i 2,x,y - l,rpl(i 3,x,y - 1)) sinon. La fonction partielle VI est précisément égale à hy.k(i 1,i 2,i 3,x,y). Si a est un indice de k, on a:
3';
3';
k(i1,i2,iJ,x,y) = r;(a,i1,i2h,x,y) = rpl(s~(a,i 1 ,i 2 ,i 3 ),x,y).
Posons a(i1,i2,i3) = s~(a,i1,i2,i3) ; a est une fonction récursive primitive qui calcule un
Chapitre 5. Récursivité
54
indice pour '1/1' comme promis : ( 1{1;1 )* = ~ <"1 . . 3
Q
1d2dJ
l.
Appliquons maintenant la troisième
version du théorème du point fixe: il existe une fonction récursive primitive jE 3'2 telle 2 que, pour tous z,t, ~
J lp 12
4.16
l
=f.
EXEMPLE : Pour couronner ce chapitre, on va montrer que la fonction
d'Ackermann est récursive. On aurait pu le faire plus tôt en construisant une machine de Turing qui la calcule, mais la preuve qui suit est bien plus élégante. C'est certainement un procédé de récurrence qui a été utilisé pour définir cette fonction, mais ce procédé n'entre pas dans le cadre du schéma de définition par récurrence décrit tout au début de ce chapitre. On va voir comment les théorèmes du point fixe permettent de montrer que les fonctions définies par ce procédé sont encore récursives. Considérons l'application de ~ dans ~ qui à t/J fait correspondre la fonction partielle '1/1' définie par :
'l/l'(y,x) = 2x 'l/l'(y,x) = 1 ., (y ,x) = tf;( y - 1' tf;( y,x - 1))
si y=O; si x=O; dans les autres cas.
En se reportant à la définition de la fonction d'Ackermann en 2 .1, on se rend compte que celle-ci est le seul point fixe de cette transformation. Donc, si on démontre qu'il existe une fonction partielle récursive (telle que (* = (, alors (sera nécessairement égale à la fonction d'Ackermann, qui sera donc récursive. On raisonne comme plus haut : si t/J est une fonction partielle récursive, il en est de même de '1/1', et voyons comment calculer, de façon récursive primitive, un indice pour '1/1' à partir d'un indice de t/J. Définissons 0 E par : si y =0; • O(i,y,x) = 2x si x=O; • O(i,y,x) = 1 sinon. • O(i,y,x) = l{l(i,y - 1,1{l(i,y,x - 1))
a;
La fonction partielle récursive 0 a été définie de telle sorte que ÀXy.O(i,x,y) soit égale à '1/1' si t/J =cp~. Soit a un indice de O. Alors :
O(i,x,y) = cpl(a,i,x,y) = l{l(s~(a,i),x,y). Posons a(i) = s~(a,i) ; a est une fonction récursive primitive qui donne un indice de '1/1' à partir d'un indice de t/J. Appliquons alors le théorème du point fixe première version : il existe un entier j tel que cp~ = cp!(j l, et donc tel que (cp~)* = cp~. La fonction d' Ackermann est récursive.
Exercices
55
EXERCICES
1.
Montrer que tout sous-ensemble fini de IN est récursif primitif.
2.
Montrer que la fonction f définie par : • f(O) =f(1) = 1
• f(n + 2) =f(n) + f(n + 1) est récursive primitive. (Cette suite est appelée suite de Fibonacci.) 3. Dans cet exercice, on pose #* = l J INP. On définit l'application a de #* dans p)o IN: si uest une suite d'entiers de longueur p, alors a(u) = ll2(P,ttp(u)). a) Montrer que a est une fonction injective dont l'image est un ensemble récursif primitif. b) Montrer qu'il existe une fonction récursive primitive g telle que, si
u= (aha 2 , ... ,an), et si b =sup(n,a 1,a 2, ... ,an), alors a(o)
~ g(b).
c) Montrer que la fonction cp définie par : • cp(p,i,x) = {J~(x) si 1 ~ i ~ p • cp(p,i,x) = 0 sinon est récursive primitive. d) On définit maintenant un autre codage : soit 7la fonction qui, à toute suite (a 0 ,a 1, ... ,ap) de #*,fait correspondre l'entier :
,J( )) -_ -' T\ a 0 ,a 1, ... ,ap "\0)ao+l . -' "\1 )a1+1 ..... -' "\P )ap+l , étant entendu que l'image par 1 de la suite vide est égale à 1. Montrer que 1 est une application injective et que son image est un ensemble récursif primitif. e) Montrer que l'on peut passer d'un codage à l'autre de façon récursive primitive; plus précisément, il existe deux fonctions récursives primitives f et h à une variable telles que : i) pour tout x dans l'image de a, f(x) vide telle que a( u) =x ;
= 1(u)
où u est la suite non
ii) pour tout x appartenant à l'image de 1, h(x) = a(u) où u est la suite non vide telle que 1( u) =x. 4. Montrer que la fonction qui à n fait correspondre la n-ème décimale du nombre e, base du logarithme népérien, est récursive primitive.
56
Chapitre 5. Récursivité
5.
a) On fixe un entier p non nul. Montrer que l'ensemble E = { (ao,a 1, ... ,ap) E INP+t ; le polynôme a0 + a1X + · · · + apXP a un zéro dans 7l} est récursif primitif. b) Même question en remplaçant 7l par Q. c) Montrer que l'ensemble F = { O{u) ; pest un entier, u = (a 0 ,a 1, ... ,ap) et le polynôme
a0 + a1X + · · · + apXP a un zéro dans 7l} est récursif primitif (0 est le codage défini en 1.12). 6. Soient L un langage comportant uniquement le symbole de prédicat binaire R et F une formule close de L. Le spectre de F, que l'on notera Sp(F), est par définition l'ensemble { n E IN ; Fa un modèle de cardinalité n }. (Voir l'exercice 10 du chapitre 3.)
Montrer que Sp{F) est un ensemble récursif primitif. 7. Pour chacune des fonctions suivantes, construire une machine de Turing qui la calcule : a) ÀX.x 2
8.
;
b) ÀXy.xy;
c) Ax.x .:.1;
d)
ÀXy.x:.. y.
Construire une machine de Turing qui s'arrête si et seulement si l'entier que l'on
a rentré sur la première bande à 1'instant initial est pair. 9.
a) Montrer que, si une fonction partielle f
E
~ est T -calculable, elle est
calculable par une machine de Turing ayant exactement 3 bandes. b) On considère 1'ensemble Vltn des machines ayant 3 bandes et n états. On fait fonctionner ces machines à partir d'une configuration initiale où toutes les bandes sont blanches. Si la machine .At s'arrête, on appelle u( .At) le nombre de bâtons écrits sur la seconde bande au moment de 1' arrêt ; sinon on pose u( .At) =O. Montrer que 1'ensemble
{ u( .At) ; .At E Vltn } est borné. On notera E{n) la borne supérieure de cet ensemble. c) Soit f une fonction partielle à une variable calculable par une machine .At de Vltn. Pour chaque entier p, construire une machine A'p à trois bandes qui, si on la fait fonctionner à partir d'une configuration initiale où toutes les bandes sont blanches, commence à écrire p bâtons sur la première bande, puis ramène sa tête en début de bande, et enfin fonctionne comme le ferait .At. Préciser le nombre d'états de A'p. d) Montrer que la fonction E n'est pas T-calculable.
Exercices
57
Soit fE ~1 ; Montrer que fest récursive si et seulement si son graphe G = { (x,y) E IN 2 ; y =f(x)} est récursif. 10.
11. Le but de cet exercice est de donner une preuve directe du fait que la fonction d'Ackermann est récursive. On définit sur IN 3 la relation binaire< par : (a,b,c) <(a' ,b' ,c') si et seulement si : ou ou
sup(a,b,c) < sup(a',b',c') sup(a,b,c) =sup(a',b',c') et a< a' sup(a,b,c) = sup(a',b',c') et a= a' et b < b'
ou
sup(a,b,c) = sup(a',b',c') et a= a' et b = b'
etc~
c'.
a) Montrer que (est une relation d'ordre total. 3 Si a et {J appartiennent à IN , on dira que a est inférieur ou égal (respectivement: supérieur ou égal) à {J si a( {J (respectivement {J< a). On dira que a est strictement inférieur (respectivement : strictement supérieur) à {J si, de plus, a'* {J. Montrer que, pour tout (a,b,c) E IN 3, l'ensemble { (x,y,z) E IN 3 ; (x,y,z) ( (a,b,c) } a au plus (sup(a,b,c) + 1)3 éléments. Montrer que tout élément (a,b,c) E IN 3 possède un successeur immédiat (c'est-à-dire un élément qui est strictement supérieur à (a,b,c) et qui est inférieur ou égal à tous les éléments strictement supérieurs à (a,b,c)). On explicitera ce successeur immédiat. b) Montrer qu'il existe trois fonctions de IN dans IN, récursives primitives, 11, 12, 13, telles que : 3 1") la fonction r de IN dans IN définie par f(n)=(11(n),12(n),13(n)) est une bijection ; 2") pour tous entiers net rn, n ~rn si et seulement si r(n) < r(rn). c) Soit H le sous-ensemble de IN défini récursivement par la condition : n E H si et seulement si : 'l3 (n)
ou ou
• 12( n) = 0 et 11 ( n) = 2 ; • 13(n) =0 et 11(n) = 1; • 12( n) '* 0 et 13( n) '* 0 et il existe des entiers p et q, strictement inférieurs à n, tels que p EH, q EH, 12(P) = 12(n), 13(P) = 13(n) -1,
12(q) = 12(n) -1, 13(q) = 11(P) et 11(n) = 11(q). Montrer que H est récursif primitif. On appelle, comme dans le cours, ~la fonction d' Ackermann. Montrer que, pour tout entier n, nE H si et seulement si 11(n) = ~(12 (n),13(n)). d) Montrer que le graphe G de la fonction d'Ackermann: G = { (y,x,z) ; z = ~(y,x) }, est récursif primitif. Montrer que la fonction d'Ackermann est récursive.
58
Chapitre 5. Récursivité
12. Montrer que l'image d'une fonction à une variable récursive et croissante est un ensemble récursif. Réciproquement, montrer que tout ensemble récursif infini est l'image d'une fonction récursive strictement croissante. 13. Soit fE i 1 une fonction récursive et on suppose que son image est infinie. Montrer qu'il existe une fonction gE i 1, récursive, injective, telle que lm(f) = lm(g). En déduire qu'il existe une fonction récursive injective dont l'image n'est pas récursive. 14. Montrer que tout ensemble récursivement énumérable infini contient un ensemble récursif infini. 15.
Soient a une fonction récursive injective. On pose : A=lma; B ={x; il existe y> x tel que a(y) < a(x) }. a) Montrer que B est récursivement énumérable et que son complémentaire est
infini. b) On suppose qu'il existe un sous-ensemble C de IN, récursivement énumérable, infini et disjoint de B. Montrer que A est récursif. c) Montrer
qu'il
existe
un
ensemble
récursivement
énumérable
qui,
premièrement, rencontre tous les ensembles récursivement énumérables infinis, et, deuxièmement, a un complémentaire infini.
16.
a) Montrer que l'ensemble des bijections récursives de IN dans IN est un
sous-groupe du groupe des permutations de IN. La suite du problème est consacrée au fait que cette assertion devient fausse si on remplace récursive par récursive primitive. b) Soient cp une fonction (totale) à une variable, récursive mais non récursive primitive, et e l'indice d'une machine .Jt qui calcule cp. On considère la fonction T qui à x fait correspondre le temps de calcul de cp(x) par .Jt (plus précisément : T(x) = l-Lt ((e,t,x) E 8 1) ). Montrer que, si fest une fonction telle que, pour tout x E IN, f(x) ~ T(x), alors f n'est pas récursive primitive; Montrer que le graphe G de Test récursif primitif. c) On pose: g(x) =sup {T(y); y~ x}+ 2x. Montrer que g est une fonction récursive, strictement croissante, et qu'elle n'est pas récursive primitive. Montrer que le graphe G1 et que l'image récursifs primitifs.
1
de g sont des ensembles
Exercices
59
d) Montrer qu'il existe une unique fonction g' récursive primitive strictement croissante dont 1'image soit le complémentaire de 1. e) On définit la fonction h par :
• h(2x) = g(x) • h(2x + 1) = g'(x) où g et g' sont les fonctions définies aux questions c) et d). Montrer que h est une fonction bijective, récursive, non récursive primitive. Montrer que sa réciproque h-1 est récursive primitive.
17.
Exhiber un ensemble récursif A Ç IN 2 tel que l'ensemble B = {x ; pour tout y E IN, (x, y)
E
A}
ne soit pas récursivement énumérable.
18.
Montrer qu'il existe une fonction récursive primitive o à une variable possédant
la propriété suivante : pour tout entier x, si ~ est une bijection de IN dans IN, alors o(x) est un indice pour la bijection réciproque.
19. Soient g et o dans ~~ et h E ~; des fonctions partielles récursives. Montrer qu'il existe une et une seule fonction f E ~ telle que pour tous x, y :
f(O,y) = g(y) f(x + 1,y) = h(f(x,o(y)),y,x), et que f est partielle récursive. 20.
Soient A Ç IN un ensemble récursivement énumérable qui n'est pas récursif, f une
fonction partielle récursive de domaine A et i l'indice d'une machine de Turing calculant 1
1
f. Montrer que la fonction h.T (i,x) (où T est la fonction définie en 3.18 et qui représente le temps nécessaire au calcul de f(x)) ne peut pas être prolongée en une fonction récursive totale. 21.
Le but de cet exercice est de montrer le fait suivant:
(*) Il existe une fonction (totale) récursive '1/J...x,y) telle que, si on pose t/Jx = >..y.f/l...x,y), alors l'ensemble {t/Jx;xEIN} est exactement l'ensemble de toutes les fonctions récursives primitives à. une variable. a) Montrer que, si f E ~p, les deux conditions suivantes sont équivalentes :
i) ii)
f est récursive primitive ; il existe un indice i et une fonction g E ~P récursive primitive tels
que la machine d'indice i calcule f et que le temps de calcul T(i,x 1,x2,... ,xp) soit inférieur ou égal à g(xhx2, ... ,xp).
60
Chapitre 5. Récursivité
b) On va utiliser la fonction d'Ackermann {et les fonctions en =..\x.{(n,x). Montrer que si f est une fonction à une variable qui est récursive primitive, il existe deux entiers n et A tels que, pour tout x, on ait :
f(x)
~
sup(A,{n(x)).
c) On définit la fonction g à quatre variables de la façon suivante :
g(i,A,n,x) = JLY ~ sup(A,{(n,x)) (3t ~ sup(A,{(n,x)) (i,t,x,y) E C1) (on rappelle que (i,t,x,y) E C1 signifie que la machine d'indice i fonctionnant avec x sur sa première bande au départ a terminé son calcul à l'intant t et que le résultat est y). Montrer que, pour tous i, A et n la fonction .h.g(i,A,n,x) est récursive primitive et que, réciproquement, pour toute fonction f récursive primitive à une variable, il existe des entiers i, A et n tels que f = .h.g(i,A,n,x). d) En déduire le théorème cherché. e) Montrer qu'il existe un ensemble récursif qui n'est pas récursif primitif. Soit :Y un ensemble de fonctions partielles récursives à une variable. On dira que :Y est récursivement énuméré s'il existe une fonction F partielle récursive à deux variables telle que, si on pose Fx = ..\y.F(x,y), alors :Y={Fx;xEIN}.
22.
L'exercice 21 montre donc que l'ensemble des fonctions récursives primitives est récursivement énuméré. a) Montrer
que
l'ensemble
des
fonctions
totales
récursives
n'est
pas
récursivement énuméré. b) Montrer que l'ensemble des fonctions récursives primitives strictement croissantes est récursivement énuméré. c) Montrer que l'ensemble des fonctions récursives primitives injectives est récursivement énuméré. d) Soit F E j
2
une fonction récursive et on suppose que, pour tout xE IN,
l'ensemble
Ax={F(x,y); y EIN} est infini. Montrer qu'il existe un ensemble B, récursif et infini, qui n'est égal à aucun des Ax. En déduire que l'ensemble des fonctions récursives strictement croissantes n'est pas récursivement énuméré, pas plus que l'ensemble des fonctions récursives injectives. 23.
Soient A et B deux sous-ensembles de IN ; on dit que A est réductible à B et on
écrira A ~ B s'il existe une fonction récursive (totale) f telle que: x E A si et seulement si f(x) E B. a) Montrer que la relation
~est
réflexive et transitive.
Exercices
61
b) On suppose que A est réductible à B ; montrer que, si B est récursivement énumérable, alors A est récursivement énumérable ; montrer que, si B est récursif, alors A 1'est aussi. On pose: X = {x ;
d) Soient A et B deux sous-ensembles de IN ; on définit l'ensemble C par : C = {2n ; n E A } U { 2n + 1 ; n E B } . Montrer que A et B sont réductibles à C et que, si D est un sous-ensemble de IN tel que A
et B soient réductibles à D, alors C est réductible à D. e) On dira que A Ç IN est autodual si A ~IN- A. Montrer que pour tout B Ç IN, il existe C Ç IN, autodual et tel que B ~ C. f) Soit :Y un ensemble de fonctions partielles récursives à une variable qui n'est ni vide ni égal à l'ensemble des fonctions partielles récursives à une variable ; on pose :
A={x; VJ!E !Y}. i) Montrer que, si :Y contient la fonction partielle de domaine vide, alors X~
IN -A.
ii) Montrer que dans le cas contraire X~ A. iii) Montrer que A n'est pas autodual. g) Montrer que Y ~ X . 24.
Le but de cet exercice est de montrer que les précautions que l'on a prises
lorsqu'on a défini le schéma~ non borné (2. 9) sont nécessaires. Montrer que la fonction partielle 1/J(x,y), égale à
On considère les ensembles suivants :
A= {x; ~(0) est défini}; B ={x; ~est une fonction totale}. a) Montrer que le complémentaire de A n'est pas récursivement énumérable. b) Montrer qu'il existe une fonction a E 3'1 récursive primitive telle que, pour tout entier i, i E A si et seulement si a{i) E B. Montrer que le complémentaire de B n'est pas récursivement énumérable.
62
Chapitre 5. Récursivité c) On définit la fonction partielle F{x,y) comme suit :
F{x,y) = 1 si, pour tout z
PROPOSITION : Soit f une fonction partielle récursive à une variable de domaine infini. Alors, ni 1'ensemble {x ; 1/4 = f}, ni son complémentaire ne sont récursivement énumérables.
26.
On va donner dans cet exercice une autre preuve du fait qu'il existe une fonction
récursive primitive {J à une variable telle que, pour tout i,
rp1 = ~m et {J(i) > i. (cf. théorème 4 .13). Cette preuve n'utilise que les théorèmes du point fixe (et ne fait plus appel aux machines de Turing). a) Montrer qu'il existe une fonction 6 récursive primitive telle que, pour tout n,
'Plcn> est la fonction constante égale à n. b) On définit la fonction 'Y(n,t,z) par:
'Y(n,t,z) = t5(n) si z ~ t ; 'Y{n,t,z) = t sinon. En appliquant le théorème de point fixe troisième version (4.14) à cette fonction, montrer qu'il existe une fonction récursive primitive h{n,t) telle que: si h{n,t) ~ t
tÂcn,t> = 'Plcn> t cn,t> = ~
sinon.
c) Montrer que, pour tout t, l'ensemble At={n; h{n,t) ~t}
a, au plus, t 27.
+ 1 éléments.
En déduire l'existence de la fonction {J cherchée.
Dans la construction des fonctions cpP on a fait un certain nombre de codages, et
pour cela on a dû faire des choix complètement arbitraires. On s'intéresse ici à la question de savoir quelles sortes de fonctions on aurait obtenues à la place des cpP si ces choix avaient été différents. La seule chose que l'on suppose, c'est que ces choix soient suffisamment
raisonnables
pour
d'énumération et de point fixe.
nous
permettre
de
démontrer
les
théorèmes
Exercices
63
Soit -.J = ( tfJP ; p ;;::: 1) une famille de fonctions partielles récursives telles que, pour chaque p, tfJP E a-:+1· On pose Y,~= .\y1Y2···YP·tPP(x,y1,Y2,···Yp). On considère les conditions suivantes sur la famille -.J: • (énu) Pour chaque p > 0, l'ensemble { t/J~ ; i E IN} est égal à l'ensemble de toutes les fonctions partielles récursives à p variables. • (smn) Pour chaque couple d'entiers rn et n, il existe une fonction totale récursive oW à n + 1 variables, telle que, pour tous i,xhx2, ... ,xn,YhY2,···,Ym, on ait : t/l'+m(i,x1,x2,···,Xn,YhY2, ... ,ym) = Vf"(o':{i,x1,x2,···,xn),y1,y2, ... ,ym)· a) Soit fJ une fonction partielle récursive à deux variables. Pour chaque entier x, on pose Ox = .\y. fJ(x,y ). Montrer que les deux conditions suivantes sont équivalentes : i) il existe une famille -.J = ( Vf; p;;::: 1) vérifiant les conditions (énu) et (smn) et telle que f/1 1 = fJ; ii) il existe une fonction récursive {J telle que pour tout x, IP1c = (Jf}
d) (difficile) Avec les mêmes hypothèses, montrer qu'il existe une fonction récursive, totale et bijective, telle que, pour tout x, IP1c = OE
é,
Chapitre 6
Formalisation de l'arithmétique
Théorèines de GOdel
66
Chapitre 6. Théorèmes de Godel
La branche des mathématiques dont il est le plus naturel d'envisager la formalisation est certainement l'arithmétique. C'est à quoi est employé ce chapitre. Dans la première section, on fixe le langage de l'arithmétique et on en donne l'ensemble des axiomes, habituellement appelés axiomes de Peano, que l'on notera ~ Ces axiomes ont pour but, pour les uns (de A1 à A 7 ) de forcer l'addition et la multiplication à se conduire correctement, et pour les autres (Je schéma d'axiomes SI) de permettre les fameuses démonstrations par récurrence. En apparence, ce sont des axiomes très simples, et on peut même se demander s'ils ne sont pas trop simples. Aussi la question qui se pose immédiatement est de savoir si on n'a rien oublié de ce que les mathématiciens emploient couramment. La réponse est non, mais on n'essaiera pas d'en convaincre le lecteur. On se contentera de tirer quelques conséquences extrêmement simples des axiomes, par exemple la commutativité et l'associativité de la multiplication. Rien n'empêche le lecteur de démontrer à partir des seuls axiomes de Peano des théorèmes comme ceux de Gauss ou de Bezout. Même des théorèmes beaucoup plus difficiles, comme ceux qui concernent la répartition des nombres premiers par exemple, non seulement peuvent s'exprimer sous forme d'une formule du premier ordre, mais aussi se démontrer à partir de ces axiomes. Il y a alors deux questions qui se posent naturellement. La première concerne la complétude de ~ : est-il vrai que toute formule close du langage de l'arithmétique est soit démontrée, soit réfutée (c'est-à-dire que sa négation est démontrée) dans ~ ? La seconde sa décidabilité: existe-t-il un algorithme permettant de décider si une formule close du langage de l'arithmétique est démontrable à partir de ~ ? La réponse à ces deux questions est négative et la fin du chapitre est consacrée à la preuve de ce fait, avec les célèbres théorèmes de Godel. La seconde question exige que l'on code les formules par des entiers. Ce travail ingrat est fait dans la troisième section ; dans la seconde section, on travaille dans l'autre sens. On montre que les fonctions récursives peuvent être représentées, dans un sens très fort, par des formules du premier ordre. Pour répondre aux questions que l'on s'est posées, on utilisera un argument «diagonal», du type de celui dont on s'est servi au chapitre précédent pour montrer qu'il y a des ensembles récursivement énumérables qui ne sont pas récursifs. Pour la réponse à la seconde question, cet argument rejoint le fameux paradoxe d'Epiménides le Crétois qui prétendait que tous les Crétois étaient menteurs (voir l'exercice 15). Dans notre cas, cela revient à construire une formule qui affirme qu'elle est elle-même non démontrable. On verra que cette formule est vraie dans IN, non démontrable dans ~' et qu'elle est équivalente (modulo ~) à une formule exprimant que ~est une théorie cohérente.
1. Les axiomes de Peano
67
Dans ce chapitre, nous manipulerons en même temps l'ensemble IN des «vrais entiers» et des modèles des axiomes de Peano. Comme nous l'avons signalé dans l'introduction, nous devrons avoir deux attitudes différentes: si l'on ne se privera pas de se servir de toutes les propriétés connues de IN, pour celles de ces propriétés qui sont vraies dans tous les autres modèles de .9', il nous faudra, du moins en principe, les démontrer, parfois laborieusement, à partir de .9'. Il y a dans ce chapitre beaucoup de codages particulièrement indigestes. Le lecteur qui est persuadé que ces codages sont possibles et permettent bien d'obtenir les résultats attendus peut naturellement se dispenser de les lire de façon detaillée.
1.
LES AXIOMES DE PEANO
Les axiomes 1.1
Le langage
..t0
qui va nous permettre de décrire l'arithmétique est un langage
fini comportant quatre symboles : • un symbole de constante : .Q ; • un symbole de fonction unaire : .S. ; • deux symboles de fonction binaire : !: et
~
.
(Attention! Le symbole!: est le symbole .. qui a été souligné, pour bien le distinguer de l'opération+. Il n'a rien à voir avec le signe« plus ou moins ».) On convient ici d'enfreindre les règles d'écriture des termes du langage
..t0 , afin
de retrouver des notations plus familières ( v0 !: v1 et v0 ~ v1 au lieu, respectivement, de !:Vov1 et ~v0 v 1 ). Cela exige clairement l'utilisation de parenthèses dans l'écriture des termes (voir nos commentaires au chapitre 3 (2.1)). Pour tout problème de syntaxe relatif aux formules de l'arithmétique, on a toujours la possibilité de revenir à l'écriture officielle qui, seule, fait foi. Dorénavant, lorsqu'on parlera de IN, il s'agira de la ..t0-structure dont l'ensemble de base est 1'ensemble des entiers naturels et où .Q est interprété par 1'entier 0 , .S. par la fonction successeurS= ~n.n + 1 , !: par l'addition
et~
par la multiplication.
Les axiomes de Peano, dont l'ensemble sera noté .9', sont les sept axiomes At à A7 ci-dessous, ainsi qu'une infinité d'axiomes que l'on appellera le schéma d'induction et que l'on notera SI. At :
Vvo ,.s_vo
~ .Q
68
Chapitre 6. Théorèmes de Godel
A2 : Vvo3vl(-wo ~ .Q ~ S.v1 ~ vo) A3 : VvoVvl(S.vo ~ S.v1 ~ vo ~ v1) A4 : Vvo vo ! .Q ~ vo As : VvoVvl vo! S.v1 ~ S.(vo! v1) A6 : Vv0 vo ~ .Q ~ .Q Ar : VvoVvl vo ~ S.v1 ~ (vo ~ v1) ! vo. Enfin, le schéma d'induction est l'ensemble de toutes les formules de .2'0 qui sont de la forme: VvNv2... Vvn((F(.Q,vhv2,···,vn] 1\. Vvo(F(vo,v 11 ••• ,vn] ~ F(S.vo,v1,... ,vn])) ::::::::> VvoF(vo, v1,... ,vn]) où n est un entier et F(vo,v1,... ,vn] est n'importe quelle formule de .2'0 ne comportant aucune variable libre autre que vo, v1, ... , Vn. SI :
REMARQUE : Lorsqu'on voudra prouver, en utilisant SI, qu'une formule F(v 0 ,v 11 ••• ,vn] est démontrable à partir de !l', il suffira d'établir les deux faits suivants : • !l'~ VvNv2 ... Vvn F(.Q,vl,v2,···,vn] ; (ce sera l'étape initiale de l'induction, celle qui consiste à «faire v0 = 0 » dans F) ; • !l'~ VvoVvNv2 ... Vvn (F(vo,vl,···,vn] ~ F(S.vo,v 11 ••• ,vn]) ; (ce sera l'étape d'induction).
1.2 Il est visible que IN, en tant que .2'0-structure, est un modèle de !l'. C'est ce qu'on appelle habituellement le modèle standard de !l'. On va d'abord montrer que ce n'est pas le seul :
THEOREME : Il existe des modèles de !l' qui ne sont pas isomorphes à IN.
Définissons, pour chaque entier n, le terme n. = ~ ~--·~ Q composé de n occurrences du symbole ~ suivies du symbole .Q. Dans une .2'0-structure, on dira qu'un élément est standard si c'est l'interprétation d'un terme de la forme n. avec n E IN. On voit que, dans le modèle standard (et dans tout modèle qui lui est isomorphe), tout élément est standard. Considérons un nouveau langage .2' obtenu en ajoutant à .2'0 un nouveau symbole de constante c, et soit T la théorie suivante : T = { •C ~ n. ; n E IN} U !l' . Tout sous-ensemble fini de T admet un modèle; en effet, soit T0 un tel sous-ensemble; il est inclus dans un ensemble de la forme: { •C ~ n. ; nE 1} U !J', où 1 est un sous-ensemble fini de IN ; on peut faire de IN une .2' -structure en interprétant t;;;J
69
1. Les axiomes de Peano
c par n'importe quel entier; si on prend soin de l'interpréter par un entier n'appartenant pas à 1, alors on obtient un modèle de T 0 . On peut donc appliquer le théorème de compacité (chapitre 4, 2.7) et en déduire qu'il existe un modèle œt de T. Ce modèle œt est aussi évidemment un modèle de !J et il contient un point, à savoir l'interprétation de c, qui n'est pas standard. Le réduit de œt à .$'0 (qui, rappelons-le, est la .$'0 -structure qui est obtenue naturellement à partir de œt en oubliant l'interprétation de c) est donc un modèle non standard de !fJ. ~
1.3
Presque tous les théorèmes d'arithmétique pouvant s'exprimer sous forme d'une
formule du premier ordre de .$'0 peuvent en fait se démontrer à partir de !fJ (même si leur démonstration classique utilise des notions n'appartenant pas à l'arithmétique). Pour montrer comment fonctionnent ces axiomes, et en particulier le schéma d'induction, on va voir que, dans les modèles de !fJ, l'addition et la multiplication sont associatives et commutatives, et d'autres propriétés du même genre. On constatera que ces simples faits réclament une preuve assez longue.
THEOREME : Dans tout modèle œt de !fJ, l'addition et la multiplication sont associatives et commutatives et la multiplication est distributive par
rapport à l'addition; de plus: • tout élément est régulier pour l'addition :
œt ~ VvoVvNv2((vo! v1 ~ vo! v2) =) v1 ~ v2) ; • tout élément non nul est régulier pour la multiplication :
œt ~ VvoVvNv2{ (-,vo ~ !! 1\ vo ~ v1 ~ vo ~ v2) =) v1 ~ v2). • la formule 3v2(v 2 ! v0 ~ v1) définit un ordre total sur œt, et cet ordre est compatible avec l'addition et la multiplication.
~
Ce théorème est conséquence des vingt-quatre(!) faits qui suivent.
(1)
!fJ 1- Vvo!!! vo ~ vo. En utilisant A4 et A5 on voit que : !fJ 1- !! ! !! ~ !! 1\ Vvo(!! ! vo ~ vo
=)
!! ! ~vo ~ ~vo).
On utilise alors le schéma SI dans le cas particulier où la formule F est la formule
!! ! v0 ~ vo, et on en déduit : !fJ 1- Vvo !! ! vo ~ vo.
(2)
!fJ 1- VvoVv1 ~(v1! vo) ~ ~v1! vo. Tout d'abord, par A4 (deux fois) :
70
Chapitre 6. Théorèmes de Godel
~ ~ ~(v1 !:
.Q)
~ ~v1 !:
n.
D'autre part, par As : ~ ~ ~(v1 !: ~vo) ~ ~ ~(v1 !: vo) A~v1 !: ~vo ~ ~(~v1 !: vo),
et donc et on conclut en utilisant SI. ~ ~ Vvo 1!: vo ~ ~vo . (on rappelle que 1 est une notation pour le terme ~ n.) Il résulte clairement de (2) que :
(3)
~ ~ ~(!! !: vo) ~ 1 !: vo ;
on conclut avec (1).
(4)
~ ~ VvoVv 1 vo !: v1 ~ v1 !: vo . Par A4 et (1), ceci est vrai lorsque v1 =.Q. D'autre part, par As: ~ ~
vo!: ~v 1
~ ~(vo!:
v1) ,
et par (2) : ~ ~ ~v 1 !: vo ~ ~(v 1 !: vo) . Il suffit donc d'appliquer SI. ~ ~ VvoVvNv2 vo!: (v1 !: v2) ~ (vo!: v1)!: v2 . C'est encore le schéma d'induction qui va nous donner la démonstration : pour l'étape initiale ( « v2 = 0 »),l'égalité se déduit facilement de A4 ; par As, on voit que:
(5)
~ ~ vo!: (v1 !: ~v2) ~ vo!: ~(v1 !: v2) ~ ~(vo!: (vl !: v2)), ~ ~ (vo!: v1)!: ~v2 ~ ~((vo!: v1)!: v2) .
et
Passons maintenant à la multiplication :
(6)
~~Vvo.Q~vo~.Q.
En effet, par A6 : ~~.Q~.Q~.Q
et par Ar: ~ ~ .Q ~ ~vo ~ (.Q ~ vo) !: .Q, et (6) se déduit encore par SI et A4 •
(7)
~ ~ Vvo vo ~ 1 ~ vo. Par Ar, A6 et (1).
(8)
~~Vvo1~vo~vo.
Par SI : le cas « v0 = 0 » relève de A6 ; puis, Ar, As et A4 permettent de voir que: ~ ~ 1 ~ ~vo ~ ~(1 ~ vo).
71
1. Les axiomes de Peano
(9)
!fJ 1- VvoVvNv2 vo ~ (v1! v2) ~ (vo ~ v1)! (vo ~ v2).
Encore par SI : pour l'étape d'autre part :
«
v2 = 0 », c'est une conséquence de A6 et de A4
;
!fJ 1- vo ~ (v1! S.v2) ~ (vo ~ (v1! v2))! vo par As et A7, !fJ 1- (vo ~ (v1! v2))! vo ~ ((vo ~ v1)! (vo ~ v2))! vo
et, si alors :
(hypothèse
d'induction),
!fJ 1- ((vo ~ v1)! (vo ~ v2))! vo ~ (vo ~ v1)! ((vo ~ v2)! vo) par (5),
et enfin:
(10)
!fJ 1- (vo ~ v1)! ((vo ~ v2))! vo) ~ (vo ~ v1)! (vo ~ S.v2) par A7.
!fJ 1- VvoVvNv2(vo ~ v1) ~ v2 ~ vo ~ (v1 ~ v2). SI encore : pour l'étape « v2 = 0 », c'est vrai par A 6 ; puis, par A 7 , on a : !fJ 1- (vo ~ v1) ~ S.v2 ~ ((vo ~ v1) ~ v2)! (vo ~ v1),
et par A7 et (9) : !fJ 1- vo ~ (v1 ~ S.v2) ~ vo ~ ((v1 ~ v2)! v1) ~ (vo ~ (v1 ~ v2))! (vo ~ v1) ;
on conclut avec (4).
(11)
!fJ 1- VvoVv1 vo ~ v1 ~ v1 ~ vo. On commence à montrer avec le même genre de preuve utilisant SI que:
!fJ 1- VvoVv 1 S.vo ~ v1 ~ (v1 ~ vo) ! v1 , puis, on utilise encore SI.
(12)
9'J 1- VvoVvNv2(vo! v2 ~ v1! v2 ==> vo ~ v1).
On utilise SI : A4 pour l'étape (13)
!fJ 1- VvoVv1(--.v1 ~!!
«
v2 = 0 », puis As et A3.
==> -wo! v1 ~ !!).
En effet, par A2 et As : 9'J 1- •v1 ~!!
==> 3v2(v 1 ~ S.v2 A vo! v1
et :
9'J 1- •S.(vo.! v2) ~!! par A 1•
(14)
9'J 1- VvoVvl(vo! v1 ~!! ==> (vo ~!!A v1 ~ !!)). Par (13) et A4.
(15)
9'J 1- VvoVvl(vo! v1 ~ vo ==> v1 ~ !!). Par (12), A4 et (4).
La suite au prochain numéro ...
~ ~(vo!
v2)),
72
Chapitre 6. Théorèmes de Godel
L'ordre sur les entiers 1.4 NOTATION :Dorénavant, v0 ~ v1 sera une abréviation pour la formule 3v2(v2.! vo ~ v1) et vo < v1 une abréviation pour (vo ~ v1 A ,vo ~ v1) ; les expressions vo ~ v1 et vo > v1 seront respectivement synonymes de v1 ~ v0 et v1 < v0 . On va montrer que la relation ~ est une relation d'ordre total dans tous les modèles de .9, et que, de plus, elle est compatible avec l'addition et la multiplication. Evidemment, dans le modèle standard, ~ est l'ordre naturel sur les entiers. Notons que nous confondons abusivement ici ~' abréviation dans le langage ..t0 , et la relation binaire que définit, dans un modèle donné, la formule v0 ~ v1, c'est-à-dire l'ensemble des couples d'éléments du modèle qui satisfont cette formule. On utilisera le fait que, grâce à (4), .9 démontre la formule VvoVv1(vo ~ v1 F=} 3v2(vo.! v2 ~ v1)).
(16)
.9 1- Vvo(vo ~ vo).
Parce que .91- Q.! vo
~
vo.
(17)
.9 1- VvoVvNv2((vo ~ v1 Av1 ~ v2) => vo ~ v2). Par (5).
(18)
.91- VvoVv1((vo ~ v1 Av1 ~ vo) => vo ~ v1). Se déduit de (5), (15) et (4), et (14).
(19)
.9 1- VvoVvNv2(vo.! v2 ~ v1 ! v2 Par (5) et (12).
F=}
vo ~ v1).
.9 1- VvoVv1(vo ~ v1 Vv1 ~ vo). Ici, il nous faut encore utiliser SI : c'est clair pour « vo = 0 » (par (1) ). D'autre part, on a successivement : .9 1- Vvo vo ~ ~vo (par As (en «prenant v1 = 0 ») et A4) ; (•) .9 1- VvoVv 1(v1 ~ vo => v1 ~ ~vo) (par (17)) ; .9 1- VvoVv 1((vo ~ v1 A ,v 1 ~ vo) => 3v2(,v2 ~ Q A v1 ~ vo + v2)) (A4) ; .91- VvoVv 1((vo ~ v1 A ,v1 ~ vo) => 3v3v1 ~ vo + ~v3) (A2) ; .91- VvoVv 1((vo ~ v1 A -,v 1 ~ vo) => 3v3v1 ~ ~vo + v3) (As et (2)) ; (••) .9 1- VvoVv 1((vo ~ v1 A ,v 1 ~ vo) => ~vo ~ v1). On déduit donc, de (•) et (.. ), que : .9 1- Vvo(Vv 1(vo ~ v1 V v1 ~ vo) => Vv1(~vo ~ v1 V v1 ~ ~vo)), ce qui achève l'étape d'induction.
(20)
1. Les axiomes de Peano
73
(21)
.9 ~ VvoVvtVv2(vo ~ v1 Par (9) et (11).
(22)
.9 ~ VvoVv 1(-w 1 ~!! ====> vo ~ v1 ~ vo).
====>
vo ~ v2 ~ v1 ~ v2).
On applique A2 et Ar. (23)
.9 ~ VvoVvl((,vo ~!! 1\ ,yl ~!!) ====> ,vo ~ v1 ~ !!).
On remarque que : .9 ~ Vv2Vv3S.v2 ~ S.v3 ~ S.((S.v2 ~ v3) !: v2) et on applique ensuite A2 et A1.
(24)
(par Ar et As),
.9 ~ VvoVvtVv2(vo ~ v2 ~ v1 ~ v2 ====> (vo ~ v1 Vv2 ~ !!)). Soient rot= M , 0, S , +, · un modèle de .9 et a, b et c des éléments de M
<
>
tels que a · c = b · c. D'après (20), on a a
~
b ou b ~a ; dans le premier cas, par
exemple, il existe d tel que d +a= b, donc ((11) et (9)): b · c = (d · c) +(a· c). Par (4) et (15), d • c = 0, et on conclut en utilisant (23). Ceci termine la preuve du théorème 1. 3.
1.5
NOTATION : On notera .90 la théorie constituée des axiomes A1 à Ar. On
remarquera que cette théorie est extrêmemement faible. On ne peut même pas démontrer que l'addition est commutative avec ces axiomes (voir l'exercice 1). On va cependant montrer que tout modèle de .90 (donc aussi tout modèle de .9) « commence» par une structure isomorphe à IN. On précise d'abord ce que l'on entend par « commence ».
rot et mdeux modèles de .9o et on suppose que mest une sous-structure de rot. On dit que mest un segment initial de rot, ou d'une façon équivalente que rot est une extension finale de msi, pour tous points a appartenant à met b appartenant à rot : 1) si rot 1= b ~a, alors b appartient à m; 2) si b tm, alors rot!= a~ b. DEFINITION : Soient
1.6
Il faut être vigilant, car .90 ne démontre pas que la relation
d'ordre (exercice 1). Cependant :
~
est une relation
74
Chapitre 6. Théorèmes de Godel
THEOREME : Soit rot un modèle de 9'J0 suivant:
;
alors le sous-ensemble de rot
{ a ; il existe un entier n tel que a soit l'interprétation den. dans rot } est une sous-structure de rot qui en est un segment initial et qui est isomorphe à IN.
r;;J Les faits (25) à (29) qui suivent montrent que l'application cp de IN dans rot qui à n E IN fait correspondre l'interprétation de n. dans rot est un homomorphisme injectif.
Les propriétés (30) et (31) montrent que l'image de cet homomorphisme est un segment initial de rot. Une petite remarque avant de commencer la preuve : ces faits feront intervenir les entiers (les vrais !) et le fait que 9'J 0 ne contienne pas SI ne nous empêchera absolument pas de faire des démonstrations par récurrence sur ces entiers.
(25)
Pour tout entier n, on a : 9'Jo 1- n±l ~ ~ !!.· En fait, il n'y a rien à démontrer : n±l et ~ n. représentent le même terme,
constitué den + 1 occurrences du
(26)
symbole~,
puis d'une occurrence du symbole Q.
Pour tous entiers rn et n, on a: 9'Jo 1- m :!: n. ~
m..±n..
Cela se fait par récurrence sur n : Pour n = 0, on a bien:
9'Jo 1- m:!: ll ~ m (par A4). Pour n+ 1, en supposant 9'J 0 1- m.:!: n. ~
m..±n., on a
:
9'Jo 1- n±l ~ ~!!. et 9'Jo 1- !!!.±n.±l ~ ~ !!!±..!1 9'Jo 1- m :!: ~ n. ~ ~(m :!: n.)
et :
(par (25)),
(par As) ,
et tout cela réuni donne :
9'Jo 1- m :!: n±l ~ !!!.±n.±l .
(27)
Pour tous entiers rn et n, on a : 9'Jol-m~n.~rn·n.
On raisonne encore par récurrence sur n : pour n = 0, c'est A6 • D'autre part : 9'Jol-m~n±l~(m~!!.):!:m
par hypothèse de récurrence : 9'J 0 1-m~n.~rn·n,
et par (26) :
9'Jo 1- rn· n :!: m.~ rn· (n+ 1).
(parA7et (25));
1. Les axiomes de Peano
(28)
75
Pour tout entier n non nul, on a :
.9'o 1- •n ~ .Q. Soit rn = n - 1 ; d'après ( 25) : .9'o 1- n ~ S. m. ; on conclut grâce à A1•
(29)
Pour tous entiers rn et n distincts, on a :
.9'o 1- •m. ~ n. Par récurrence sur inf(m,n): si l'un des entiers rn ou n est nul, c'est le lemme précédent. Sinon, par (25): .9' 0 1- m.~ n ==>S. m-1 ~S. n-1, et donc, avec A3 : .9'o 1- m.~ n ==> m-1 ~ n-1 ; on conclut grâce à 1'hypothèse de récurrence.
(30)
Pour tout entier n, on a :
.9'o 1- Vvo(vo :s:;; n ==> (vo ~!!v Vo ~lv ... v vo ~ n)). Par récurrence sur n : voyons d'abord pour n =O. Il faut montrer que : .9'o 1- VvoVv 1(v 1 .:!: vo ~!! ==> vo ~ !!). On utilise (14) (dans lequel on remarque que SI n'intervient pas, pas plus que dans (13): on peut donc y remplacer .9' par .9'0 ) ; on a donc : .9'o 1- VvoVvl(vo.:!: v1 ~!! ==> (vo ~!! 1\ v1 ~ !!)). Supposons donc la propriété vraie pour n et montrons-la pour n+ 1 ; soient donc mt un modèle de .9'0 et a un point de mt, tels que mt 1= a :s:;; n±!. Il suffit de montrer qu'il existe p E IN tel que p ~ n+1 et mt 1= a~ Q. Il existe un point b de mt tel que mt 1= b .:!: a ~ S.n ; si a = .Q, c'est fini ; sinon, par A2 , il existe un point c de mt tel que mt 1= a ~ S. c ; par A5 et A3, on voit que mt 1= b .:!: c ~ n, donc mt 1= c :s:;; n, et on peut utiliser 1'hypothèse de récurrence : il existe rn :s:;; n tel que mt 1= c =m., d'où mt 1= S.c =Sm, c'est-à-dire mt 1= a = m±l. (31)
Pour tout entier n, on a:
.9'o 1- Vvo(vo ~ n V n :s:;; vo). Par récurrence sur n : pour n = 0, c'est immédiat par A4 et la définition de :s:;;. Supposons la propriété vraie pour n. Considérons un modèle mt de .9'0 et un point a E mt. Il s'agit de montrer que mt 1= a ~ n±! ou mt 1= n±! ~a. Si a= .Q, c'est clair. Sinon, il existe b E mt tel que mt 1= a = S.b ; par hypothèse de récurrence, on a alors mt 1= b :s:;; n ou mt 1= n :s:;; b : dans le premier cas, il existe c E mt tel que mt 1= c .:!: b = n, donc, par A5 et (25), mt 1= c.:!: a= n±!, d'où mt 1= a :s:;; n±!; dans le deuxième cas, il existe d E mt tel que mt 1= d.:!: n = b, donc mt 1= d.:!: n±! =a, d'où mt 1= n±1 :s:;; a. (;;)
On trouvera dans l'exercice 2 quelques propriétés supplémentaires des modèles de .9'.
76
Chapitre 6. Théorèmes de Godel
2. LES FONCTIONS REPRESENTABLES
2.1
Rappelons que jp désigne l'ensemble des fonctions totales de !NP dans IN.
DEFINITION 1 : Soient fE jp et F[v 0 ,v 1,v2,... ,vp) une formule de ..t0 qui n'a variables libres en dehors de v0 ,v 11 v2,... ,vp. On dit que F[vo,v 1,v2,... ,vp) représente f si, pour tout p-uple d'entiers (nhn 2,... ,np), on
pas de
a: !/Jo 1- Vvo(F[vo,.!ll,fl.2, ... ,n.p) {=::) vo ~ f(n,,n2·····"P)). On dit que la fonction f est représentable s'il existe une formule qui la représente.
Dire qu'une formule F représente f, c'est donc dire que, pour tout modèle rot de !fJ0 et toute suite d'entiers (nhn 2,... ,np), il existe un et un seul élément x de
rot
satisfaisant F[x,n.1,fl.2, ... ,n.p) et que cet élément, c'est l'élément (standard) qui interprète le terme f(n,,n 2.... ,np) qui, rappelons-le, est constitué du symbole .S. répété f{n 1,n 2,... ,np) fois suivi de .Q. On peut adapter cette définition aux sous-ensembles :
DEFINITION 2 : Soient A Ç INP et F[v1,v 2,... ,vp] une formule qui n'a pas de variables libres en dehors de v1,v 2,... ,vp. On dit que F représente A si, pour tout p-uple d'entiers (n 1,n2, ... ,np), on a: • si (nhn 2,... ,np) E A alors !/Jo 1- F[.!1hfl2, ... ,n.p) ; • si {n 1,n2, ... ,np) ~A alors !/Jo 1- -,F[n.l,fl2, ... ,n.p)· On dit que l'ensemble A est représentable s'il existe une formule qui le représente.
REMARQUE : Un ensemble A Ç INP est représentable si et seulement si sa fonction caractéristique l'est : on vérifiera que, si F représente A, la formule (F[v 1,v 2,... ,vp) A vo ~ 1) V {-,F[vl,v2,···,vp] A vo ~ .Q) représente la fonction caractéristique de A ; réciproquement, si G[vo,vl,v2,···,vP] représente la fonction caractéristique de A, alors G[l,v 1,v2,···,vp) représente A. Donnons quelques exemples de fonctions représentables avec les formules correspondantes :
2. Les fonctions représentables
77
• La fonction successeur est représentée par la formule v0 ~ .S,v1 (1.4, (25)). • L'addition >.xy .x+ y est représentée par la formule v0 ~ v1 ~ v2 (1.4, (26)). • La multiplication >..xy .x· y est représentée par la formule v0 ~ v1 ~ v2 ( 1 . 4, (27)). • Les fonctions projection sont aussi représentables : la fonction PJ est représentée par la formule v0 ~ Vj. • La fonction constante égale à n est représentée par la formule v0 ~ n.. 2.2
En fait, toutes les fonctions récursives sont représentables :
THEOREME DE REPRESENTATION: Toute fonction récursive (totale) est
représentable.
~
Avec ce que l'on a déjà vu, il suffit de montrer que l'ensemble des fonctions représentables est clos par composition, par le schéma 1J. total et par récurrence (voir la dernière remarque de 3.14 au chapitre 5). C'est l'objet des lemmes qui suivent.
LEMME 1 :
L'ensemble
des
fonctions
représentables
est
clos
par
composition.
~
Soient fhf2,... ,fn E a-Pet gE a-n et supposons que, pour chaque i compris entre 1 et n, fi soit représentée par F i[vo,v1,v2, ... ,vp) et que g soit représentée par G[vo,v 1,v2,... ,vn]· Une vérification immédiate montre que g(fhf2, ... ,fn) est représentée par : 3w13w2... 3wn(G[vo,whw2, ... ,wn) A 1<0n Fï[Wï,Vl,v2, ... ,vp]).
LEMME 2 : Soit A Ç INP+l un ensemble représentable tel que la fonction
f(xhx2, ... ,xp)
~
= J.LY (y,x 1,x 2,... ,xp) E A) soit totale; alors fest représentable.
Soit F[vo,vh ... ,vp) une formule représentant A ; on va voir que la formule : G = F[vo,vl,v2, ... ,vp) A Vw < vo -.F[w,vhv 2, ... ,vp) représente f. En effet, soit rot un modèle de .9o et n1,n 2,... ,np des entiers. Il s'agit de montrer que b, interprétation de f(n,n 2..... np) dans rot, est le seul élément de rot qui satisfait la formule G[vo,n.1,fu, ... ,n.p). Premièrement, puisque F représente A, on a :
78
Chapitre 6. Théorèmes de Godel
!!Jo 1- F(b,.!lh!l2, ... ,.!lp], et, puisque rot est un modèle de !fJ 0 , b satisfait F[vo,.!lhfu, ... ,.!lp] dans rot. De plus, si c est un élément de rot qui est inférieur à b, alors, d'après le théorème 1.6, c est un élément standard et, par définition de f, il ne satisfait pas F(v 0 ,n1,fu, ... ,.!lp], donc b satisfait G[vo,.!lhfu, ... ,.!lp). Par ailleurs, soit d un élément de rot qui satisfait G[vo,.!lhfu, ... ,.!lp) : on ne peut alors avoir, dans rot, ni d < b ni b < d ; mais comme b est standard, on doit avoir, en vertu du théorème 1.6, d ~bou b ~ d, d'où finalement b = d. ~
2.3 On en vient maintenant au point le plus délicat qui est la définition par récurrence. On doit introduire pour cela une fonction astucieuse, connue sous le nom de fonction fJ de Gôdel, dont le rôle est de coder les suites finies d'entiers :
LEMME 3 : Il existe une fonction fJ à trois variables, qui est récursive primitive et représentable, telle que, pour tout p E IN et toute suite (nhn 2, ... ,np) E INP, il existe des entiers a et b tels que, pour tout i compris entre 1 et p, on ait {J{i,a,b) =ni.
Avant de démontrer ce lemme, terminons la démonstration du théorème de représentation à l'aide du lemme 3 ; il nous reste à montrer :
LEMME 4: Soient gE a'p eth E a'p+ 2 deux fonctions représentables; alors la
fonction f définie par récurrence à partir de g et h par : • f{x 1,x2, ... ,Xp,O) = g(xt,X2, ... ,xp) • f{xhx 2,... ,xp,Xp+t+1) = h{x1,x2, ... ,xp,Xp+t,f{xt,X2, ... ,xp,xp+1)) est aussi représentable.
~ Pour écrire que y= f{x 1,x2,... ,xp,Xp+t), on va écrire qu'il existe une suite d'entiers (z{O),z{1), ... ,z(xp+t)) telle que : z{O) = g(x1,x2, ... ,xp) , z{xp+t) =y, et, pour tout i compris entre 0 et xp+t - 1, z{i+1) = h{x1,x2,... ,xp,i,z{i)) . Evidemment, pour dire «il existe une suite ... », on dira qu'il existe deux entiers codant cette suite au moyen de la fonction {J. Soient G[v 0,v1,... ,vp) et H[v 0 ,v 1,... ,vp+ 2) des formules représentant respectivement les fonctions g et h. Pour la fonction {J, il faut être un peu plus précautionneux ; soit
2. les fonctions représentables
79
B[vo,vhv 2,v3] une formule représentant fJ. Cette fonction est aussi représentée par la formule B' suivante : B'[vo,vhv2,v3] = B[vo,vhv2,v3] A Vv4 < vo-, B(v4,vhv2,v3]. L'avantage de B' par rapport à B, c'est que, si rot est un modèle quelconque de .90 , si x est un élément standard de rot (interprétation de n. pour un certain entier intuitif n), et si a,b et c sont trois points de rot tels que : rott= B'[x,a,b,c], alors il n'y a dans rot aucun autre point, standard ou pas, satisfaisant B'[v 0 ,a,b,c]. On va vérifier que la formule F[v0,vhv2,... ,vp,vp .. 1) qui suit représente la fonction f: 3w13w2(3wo(B'[wo,l,w 1,w2) A G[wo,v1,v2,···,vp]) A B'[vo,vp ..1.:!:l,whw2) A Vw3 < Vp+13w43ws(B'(w4,~w3,w 17 w2] A B'[ws,~~w3,w1,w2] A H[ws,v 1,v 2,... ,vp,w3,w 4])). (Quelques explications pour aider à la lecture de cette formule : les variables w1 et w2 représentent des entiers a et b tels que, pour tout i compris entre 0 et xp ..1, f(x 17 x2,... ,xp,i) est égal à {J(i + l,a,b), w0 doit prendre la valeur g(x1,x2,... ,xp), et si, 0 ~ w3 < np .. 1, alors w4 doit être égal à f(x 1,x2,... ,xp,w3) et ws à f(xhx2, ... ,xp,w3+l).) Soient donc nhn 2,... ,np ..1 des entiers, rot un modèle de .90 , et c un point de rot. On voit d'abord clair que, si : rott= c ~ f(n,n2·····np.nn+J), alors rott= F[c,n.1,fu, ... ,n.p .. 1)· Les valeurs qu'il faut donner aux variables w1 et w2 pour témoigner que cette formule est vérifiée, ce sont précisément les interprétations de ~ et .Q, où a et b sont des entiers codant la suite : (f( n1,n 2,... ,n p,O),f( n1,n2, ... ,n p,l ), ... ,f( n1,n2, ... ,n p,n p.. 1) ), au moyen de la fonction {J, et dont 1'existence est assurée par le lemme 3. Réciproquement, supposons que : rot t= F[c,n.1,fu, ... ,n.p+1) ; il s'agit de montrer que c est l'élément standard qui interprète f(n,,n?,. .. ,np+') . Parce que F[c,n.1,fu, ... ,n.p .. 1) est vraie dans rot, on sait qu'il existe des éléments a, b et d dans rot tels que rott= B'(d,l,a,b) A G[d,n.1,fu, ... ,n.p) A B'[c,n.p .. 1,a,b) et pour tout entier i tel que 0 ~ i < np .. 1, il y a des éléments ri et Si dans rot tels que rott= B'[ri,.s.!,a,b) A B'[sï,~Sj,a,b) A H[si,D.1,fu, ... ,n.p,i,ri]). Parce que G représente g, rott= d ~ g(n,,n 2.... ,np). Puisque la formule B' a été choisie de sorte que pour tous x, y, z dans rot, il y ait au plus un point satisfaisant B'[v 0,x,y,z), on voit que d = ro, que c = s _ et que, pour tout entier i tel que 0 ~ i < np .. 1, ri+l =Si. En np+1 1 utilisant la définition de H, on voit ensuite, par récurrence suri < np .. 1 que : rott= ri ~ f(n,,n? ... .,np.i), et donc que rott= c ~ f(nJ.n 2,.. .,nP*'). ~
80
Chapitre 6. Théorèmes de Godel
Remarquons que, dans le lemme 3, c'est le fait que p soit représentable qui est difficile à assurer : sinon la fonction ~ introduite au chapitre 5, 1.12 conviendrait parfaitement. Cette fonction ~ est récursive primitive, et on pourra conclure à la fin qu'elle est représentable, mais pour l'instant, on ne peut l'affirmer. 2.4 ~ Revenons à la démonstration du lemme 3 : pour définir cette fonction {J, on doit utiliser quelques faits élémentaires d'arithmétique et en particulier le résultat classique suivant connu sous le nom de théorème chinois :
THEOREME : Soient (bo,b 11 ••• ,bn) une suite d'éléments de IN premiers entre eux deux à deux et (ao,a1, ••. ,an) une suite de même longueur d'éléments de IN. Alors il existe a E IN tel que pour, tout i compris entre 0 et n, on ait : a congru à ai modulo bi.
(La preuve de ce théorème est donnée dans 1'exercice 3.) Par définition, {j(i,a,b) est le reste de la division euclidienne de b par a(i+1)+1. On voit d'abord sans peine que pest représentée par la formule :
B[vo,v1,v2,v3] = 3v4 VJ ~ (v4 ~ ~(v2 ~ ~v 1 )).:!: vo Avo < ~(v2 ~ ~v1). Elle posssède d'autre part la propriété voulue: soit (ao,a1, ... ,an) une suite d'entiers. On choisit un entier rn supérieur à n+ 1 et tel que, si on pose a =rn!, a soit au moins égal à tous les ai. On voit que les entiers a(i + 1) + 1 pour i compris entre 0 et n sont premiers entre eux deux à deux : supposons 0
~
i
~
n, et soit c un diviseur
premier commun à a(i + 1) + 1 et a(j + 1) + 1 ; c doit diviser la différence
a(i - j) =rn! (i - j) et doit donc être inférieur ou égal à rn, ce qui est impossible puisqu'il doit aussi diviser rn! (i + 1) + 1. Le théorème chinois nous dit alors qu'il existe un entier b tel que, pour tout i compris entre 0 et n, on ait : et, puisque ai~
b congru à ai modulo a(i+1)+1, a< a(i+1)+1, on a bien fj(i,a,b) =ai.
(;;)
Ceci termine la démonstration du théorème de représentation.
On en déduit de façon évidente que tout ensemble récursif est représentable. D'autre part, soit 9'J' une théorie quelconque contenant 9'J 0 (par exemple 9'J). Il est bien clair que, si fE ~P est représentée par la formule F, et si (n 11 n2,... ,np) est une suite d'entiers, alors 9'J' 1- Vvo(F[vo,nl,fu, ... ,np) {:::::::::} vo ~ f(n1.n2·····"P)).
3. Arithmétisation de la syntaxe
81
3. ARITHMETISATION DE LA SYNTAXE
Codage des formules
3.1 Dans cette section, on va coder les termes et les formules d'un langage fini par des entiers. On pourrait faire ce travail pour n'importe quel langage fini, et même certains langages infinis, mais pour éviter des notations trop compliquées, on se contentera du langage ..t0 . Notre but est surtout de montrer que l'ensemble des formules universellement valides est récursivement énumérable. Le codage va utiliser les fonctions ll'i et introduites au chapitre 5, en 1.11. On a aussi besoin du petit lemme suivant :
Pi
LEMME: Soient p et n des entiers, k1,k2, ... ,kn E -3'1, gE .;fp, hE -ifn+p+t des fonctions récursives primitives, et on suppose que, pour tous y > 0 et i compris entre 1 et n, ki(Y)
• f(0,x 1,x2,···,xp) = g(x 1,x2, ... ,xp) ; • f(y,x 1,x2,···,xp) = h(y,f(kt(y),xhx2,···,xp),f(k2(Y),xt,X2,···,xp), ... , f(kn(y),xt,X2, ... ,xp),xllx2,···,xp)) si y > 0 ; est récursive primitive.
e;;J Il s'agit d'une définition par récurrence qui n'entre pas tout à fait dans le cadre de la définition de 1.2 du chapitre 5. Pour la normaliser, on va utiliser: la fonction n définie au chapitre 5, en 1 .12 (elle servira à coder la suite des valeurs de f(i,xhx 2,... ,xp) pour i variant de 0 à y), la fonction x- (x-( n) est le ( n + 1)-ème nombre premier), et la fonction 6 (qui permet de décoder {}). Définissons la fonction 1P par :
cp(y,xhx2,···,xp) = !l(f(O,xhx2, ... ,xp),f(1,xt,X2,···,xp), ... ,f(y,xhx2,... ,xp)). On voit que IP peut être directement définie par : ~(Xt,X2, ... ,xp) . • cp(o ,x 1,x2,... ,xp ) -_ zu , où 1 = h(y
• cp(y + 1,xt,X2,···,xp) = cp(y,x1,x2,···,xp). x-(y + 1) 1, + 1,.5{kt(Y + 1),cp(y,x1,x2,... ,xp)),t5(k 2(y + 1),cp(y,x1,x2,... ,xp)), ... , t5(kn(Y + 1),cp(y,xt,x2,···,xp)),x1,x2,···,xp).
La fonction IP est donc récursive primitive, de même que f puisque :
f(y,xhx 2, ... ,xp) = .5(y,cp(y,xhx2,... ,xp)).
82
Chapitre 6. Théorèmes de Godel
3.2 On peut maintenant passer au codage des termes. L'idée est de coder un terme t par un triplet d'entiers (a,b,c) où la dernière composante c permettra de distinguer si t est un terme élémentaire, ou s'il est de la forme ~t 11 ou s'il est de la forme t 1 :!: t 2 , ou s'il est de la forme t 1 ! t 2 ; les composantes a et b coderont, suivant le cas, le terme élémentaire auquel t est égal ou les termes t 1 et t 2 à partir desquels t est construit. Evidemment, le triplet (a,b,c) sera réduit à un seul entier à l'aide de la fonction a:J. On définit par induction sur le terme t un entier qu'on notera #t et qu'on appellera le numéro de Gôdel de t, par les conditions suivantes : • si t = .Q, • si t = Vn,
alors alors
• si t = ~t 1 , • si t = t 1 :!: t 2,
alors alors
• si t = t 1 ! t 2 ,
alors
#t #t #t #t #t
= = = = =
a:J(O,O,O) ; a:J(n + 1,0,0) ; a:J(#t 11 0,1); a:J(# t1,# t 2 ,2) ; a:J(# t1,# t 2 ,3).
LEMME: L'ensemble Term={#t; test un terme de .20 } est récursif
primitif.
r;;J
En effet, g, la fonction caractéristique de Term, peut être définie de la façon
suivante:
• g(O) = 1 ; g(1) = 1 ; et, si x> 1 : • si {J~(x) = 0 et {J~(x) = 0, alors g(x) = 1 ; • si {J~(x) = 0 et {J~(x) + 0, alors g(x) = 0 ; • si {J~(x)
= 1 et {J~(x) + 0,
alors g(x)
=0 ;
• si {J~(x) = 1 et {J~(x) = 0, alors g(x) = g({J~(x)) ; • si {J~(x) = 2, alors g(x) = g({J~(x)).g({J~(x)) • si {J~(x) = 3, alors g(x) = g({J~(x)).g({J~(x)) • si {J~(x) > 3, alors g(x) =O. Or, en se reportant au chapitre 5 (1.11 ), on voit que, si x > 1, {J~(x), {J~(x) et {J~(x) sont strictement inférieurs à x, et on peut donc appliquer le lemme 3 .1. (;;)
Ce codage est injectif : si #t =#t', alors t =t'. Le lecteur qui n'en est pas convaincu peut vérifier cela par induction sur t. 3.3
On peut maintenant passer au codage des formules. On utilise le même principe.
Les formules atomiques seront repérées par une troisième composante égale à 0 ; la
3. Arithmétisation de la syntaxe
83
troisième composante des négations sera égale à 1, celle des conjonctions à 2, etc. Le code d'une formule F sera encore noté# F et appelé numéro de Gôdel de F. Voici donc la définition par induction de # F : alors • si F = t1 ~ t2, # F = tr:J(# t1,# t2,0) ; alors # F = tr:J(# F1,0,1) ; • si F = •F11 alors # F = tr:J(# F1,# F2,2) ; • si F = (F1 A F2), alors • si F = (F1 V F2), # F = tr:J(# F1,# F2,J) ; alors # F = tr:J(# F1,# F2,4) ; • si F = (F1 ~ F2), alors • si F =(F 1 (::::::::) F2), # F = tr:J(# F1,# F2,5) ; alors # F = tr:J(# F1,n,6) ; • si F = VvnFl, alors # F = tr:J(# F1,n,7). • si F = 3vnF1, On a encore:
LEMME :
L'ensemble Form = { # F; F est une formule de .2'0 } est récursif
primitif. (;; ) C'est toujours le même type de preuve. étant g, celle de Form, h, peut être définie par : • si P~(x) = 0, alors • si P~(x) = 1 et P~(x) 0, alors • si P~(x) = 1 et P~(x) = 0, alors • si P~(x) = 2,3,4 ou 5, alors • si P~(x) = 6 ou 7, alors • si P~(x) > 7, alors
*
La fonction caractéristique de T erm h(x) = g({J~(x)).g({J~(x)) ; h(x) = 0. h(x) = h({J~(x)) ; h(x) = h({J~(x)).h({J~(x)) ; h(x) = h({J~(x)) ; h(x) =O.
On remarque que, comme pour les termes, on a un codage injectif. 3.4 Il faut aussi montrer que les opérations que l'on sait effectuer sur les formules, comme les substitutions ou la reconnaissance des variables libres ou liées, correspondent à des fonctions récursives primitives sur les numéros de Gôdel.
:Les ensembles suivants: • So = { (#t,n); test un terme dans lequel Vn n'a pas d'occurrence} , • 8 1 = { (#t,n); test un terme dans lequel vn a une occurrence}, • 4»o = { (# F,n); Fest une formule dans laquelle Vn n'a pas d'occurrence}, LEMME 1
84
Chapitre 6. Théorèmes de Gôdel
• •1 = { {# F,n); F est une formule dans laquelle vn n'a pas d'occurrence libre} , • • 2 = { (# F,n) ; F est une formule dans laquelle Vn n'a pas d'occurrence liée} ' • • 3 = { # F ; F est une formule close} , • • 4 = { (# F,n); F est une formule dans laquelle vn a une occurrence libre} , = {(# F,n); Fest une formule dans laquelle vn a une occurrence liée} , sont récursifs primitifs.
••s
(;;) On se contentera de traiter le cas de 8 0 et de • 1. Les fonctions caractéristiques de Ter rn et de For rn seront encore appelées g et h respectivement. La fonction caractéristique de 8 0 , qu'on notera g0 , peut être définie par les conditions suivantes : • si P~(x) = 0, alors go(x,y) = 1 si et seulement si P~(x) = 0 et P~(x) =t:-y • si P~(x) = 1 et P~(x) =t:- 0, alors go{x,y) = 0;
+ 1;
• si P~(x) = 1 et P~(x) = 0, alors go{x,y) = go(P~(x),y) ; • si P~(x) = 2 ou 3, alors go(x,y) = go(P~(x),y).go(P~(x),y) ; • si P~(x) > 3, alors go{x,y) =O. Soit maintenant h1 la fonction caractéristique de •
P~(x) P~(x) P~(x) P~(x) • si P~(x) • si P~(x) • si P~(x) • • • •
si si si si
1•
Alors :
= 0, alors h1{x,y) = go(P~{x),y).go(P~(x),y) ; = 1 et P~(x) =t:- 0, alors h1{x,y) = 0 ; = 1 et P~(x) = 0, alors h1{x,y) = h1{P~{x),y) ; = 2, 3, 4 ou 5, alors h1{x,y) = h 1 {P~(x),y).hl{P~(x),y) ; = 6 ou 7 et P~(x) =t:- y, alors h1{x,y) = h 1 {P~(x),y) ; = 6 ou 7 et P~(x) =y, alors h1{x,y) = h{P~(x)) ; > 7, alors h1{x,y) =0.
C'est évidemment le lemme 3 .1 qui permet de conclure que les ensembles considérés sont récursifs primitifs. ~
Passons aux substitutions. On obtient sans surprise :
LEMME 2 : Il existe deux fonctions récursives primitives Subst et Subsr à trois variables telles que, si t et u sont des termes et si F est une formule, alors, pour tout entier n : Subst{n,#t,#u) =#utfvn; Subsr(n,# t,# F) = # Ftfvn.
3. Arithmétisation de la syntaxe
85
(Pour la définition de ut/ vn et Ft
, voir chapitre 3, 1. 8.) 1vn ~ On utilise encore le lemme 3 .1. On définit d'abord la fonction Subst par les conditions suivantes : • Si ,B~(x) = 0, alors : Subst(n,y,x) =x si x+- ll'J(n + 1,0,0), et
Subst(n,y,x) =y sinon ; • si ,B~(x) = 1 et ,B~(x) = 0, alors Subst(n,y,x) = ll'J(Subst(n,y,,B~(x)),0,1) ; • si ,B~(x) = 2 ou 3, alors Subst(n,y,x) = ll'J(Subst(n,y,,B~(x)),Subst(n,y,,B~(x)),,B~(x)) ; • dans les autres cas, on pose arbitrairement : Subst(n,y,x) =x. Pour la fonction Subsr, c'est un peu plus compliqué, car la substitution ne doit
se faire que pour les occurrences libres de la variable : • si ,B~(x) = 0, alors Subsr(n,y,x) = ll'J(Subst(n,y,,B~(x)),Subst(n,y,,B~(x)),O) ; • si ,B~(x) = 1 et ,B~(x) = 0, alors Subsr(n,y,x) = ll'J(Subsr(n,y,,B~(x)),0,1) ; • si ,B~(x) = 2, 3, 4 ou 5, alors Subsr(n,y,x) =
ll'J(Subsr( n,y ,,B~(x) ),Subsr( n,y ,,B~(x) ),,B~(x)) ; • si ,B~(x) = 6 ou 7, alors : Subsr(n,y,x) =x si ,B~(x) = n, et
Subsr(n,y,x) = ll'J(Subsr(n,y,,B~(x)),,B~(x),,B~(x)) sinon ; • dans les autres cas, on pose arbitrairement : Subsr(n,y,x) =x.
Codage des démonstrations
3.5
On en arrive à un point légèrement plus difficile qui est la décidabilité du calcul
des propositions. On va revenir à ce calcul momentanément. On a donc, en plus des connecteurs propositionnels, une infinité de variables propositionnelles A1, A2 ,
...
On
commence par établir un codage des formules propositionnelles analogue à ceux qui précèdent. A une proposition P, on fait correspondre son numéro de Gôdel, noté # P et défini comme suit : alors • si P =An, # P = ll'J(n,O,O) ; • si P =,P1,
alors
• si P = (P1 A P2),
alors
• si P = (P 1 V P2),
alors
• si P = (P1 ===) P2), • si P =(Pl~ P2),
alors alors
#P = #P = #P = #P = #P =
ll'J(# P1,0,l) ; ll'J(# P1,# P2,2) ; ll'J(# P1,# P2,3) ; ll'J(# Ph# P2,4) ; ll'J(# P1,# P2,5).
86
Chapitre 6. Théorèmes de Godel
Comme c'est maintenant une habitude, on voit que l'ensemble: Prop = { # P ; P est une proposition} est récursif primitif.
THEOREME (Décidabilité du ca.lcul propositionnel): L'ensemble: !7 = { #P ; P est une tautologie}
est récursif primitif.
~ A chaque entier k, on fait correspondre la distribution de valeurs de vérité .Àk définie de la façon suivante: .Àk(An) = 1 si w(n) (le (n + 1)-ème nombre premier) divise k; .Àk(An) = 0 sinon. Soient .À une distribution de valeur de vérité et c un entier. On trouve facilement un entier k tel que, pour tout i ~ c, .Àk(Aï) = .À(Aï)- Il suffit de prendre:
k=
n
-'.>).(Aj) 1
o<; i<;c "\
'
et on voit que k peut être choisi inférieur ou égal à w(c)!. Soit P une formule propositionnelle. On veut déterminer si P est une tautologie ou non. Il est d'abord clair que, si An est une variable propositionnelle apparaissant dans P, alors n ~ #P. Il découle de tout ce qu'on vient de dire que P est une tautologie si et seulement si, pour tout entier k inférieur ou égal à w(# P)!, .Àk(P) = 1. On commence donc par montrer :
LEMME: La fonction E définie de la façon suivante: -si x n'est pas le numéro de Godel d'une proposition, alors E(k,x) = 0; - si x est le numéro de Godel d'une proposition P, alors E(k,x) = .Àk(P) ; est récursive primitive.
~
C'est encore le lemme 3.1 qui va nous tirer d'affaire. En effet, E peut se
définir de la façon suivante : • si x f:. Prop, alors E(k,x) = 0 . • sinon : - si ,B~(x) = 0, alors : • si w(P~(x)) divise k, alors E(k,x) = 1 , • si w(P~(x)) ne divise pas k, alors E(k,x) = 0 ;
3. Arithmétisation de la syntaxe
87
- si P~(x)
= 1, alors E(k,x) = 1- E(k,p;(x)) ;
- si P~(x) = 2, alors E(k,x) = E(k,p;(x)).E(k,/l~(x)) ; - si P~(x)
= 3, alors E(k,x) = sg(E(k,p;(x)) + E(k,/l~(x))) ; + 1- E(k,p;(x))) ;
- si P~(x) = 4, alors E(k,x) = sg(E(k,/l~(x)) {
3
- si /IJ(x) = 5, alors E(k,x) =
1 si E(k,p;(x)) = E(k,/l~(x)) ; 0 sinon.
(;;)
Pour terminer la preuve du théorème, il suffit donc de remarquer que :
x E !T si et seulement si Vk
3.6
~
w(x)! E(k,x) =
1.
THEOREME: L'ensemble: Ta ut= { # F ; Fest une formule et une tautologie du calcul des prédicats} est récursif primitif.
r;;l
A chaque formule F, on va faire correspondre une proposition PF obtenue de la
façon suivante : on écrit F sous la forme P[F 11 F2, ... ,Fk), où P est une proposition dont les variables propositionnelles sont A1,A 2, .•. ,Ak et les formules F11 F2, ... ,Fk ne peuvent pas être de nouveau décomposées à l'aide des connecteurs propositionnels, autrement dit, chaque formule Fi est : soit une formule atomique, soit une formule commençant par un quantificateur (pour une définition de la formule P[F 1,F 2, ... ,F k], voir chapitre 3, 1. 22). Posons, pour chaque i, #Fi
= c(i), puis : PF = P[Ac(l) ,Ac(2) , ... ,Ac
Alors F est une tautologie du calcul des prédicats si et seulement si PF est une tautologie : dans un sens («si»), c'est simplement le lemme 3. 5 du chapitre 3 ; pour l'autre («seulement si»), on suppose que F = J[G 1,G 2, ... ,Gm], où les Gj sont des formules et où J[B1,B 2, ... ,Bm] est une formule propositionnelle qui est une tautologie; l'important est alors de remarquer qu'il y a évidemment une relation entre
du langage $
0,
les formules propositionnelles J et PF : précisément, PF s'obtient à partir de J en y substituant aux variables propositionnelles 8 11 8 2, ... , Bm, des formules propositionnelles adéquates, construites avec les variables Acu>, Ac< 2>, ... , Ac
88
Chapitre 6. Théorèmes de Godel
Il suffit donc de construire une fonction récursive primitive 1 telle que, pour toute formule F, 1(# F) = #PF. On aura alors : xE Ta ut si et seulement si xE Form et 'Y(x) E !7. Comme d'habitude, on utilise le lemme 3.1 en définissant la fonction 1 comme suit : • Si ,B~(x) = 0, 6 ou 7, alors ?(x) = tr:~(x,O,O) ; • si ,B~(x) = 1, alors ?(x)= tr:~( 1(,8~(x)),0,1) ; • si ,B~(x) = 2,3,4 ou 5, alors ?(x)= tr:~( 1{,8~(x)), 1(,B~(x)),,B~(x)) ; • si ,B~(x) > 7, alors on pose arbitrairement 'Y(x) =O.
3.7 On a maintenant tout ce qu'il faut pour montrer que les axiomes logiques forment un ensemble récursif primitif.
a) L'ensemble: Ax 1 = { # (3vF
F=)
-,Yv-,F) ; Fest une formule et v est une variable}
est récursif primitif.
En effet, un calcul simple montre que :
# (3vn F F=) -,Vvn-,F)
= tr:J( tr:~(# F,n, 7),tr:J( tr:J( tr:~(# F,0,1 ),n,6),0,1),5).
Donc, x E Ax 1 si et seulement si il existe y < x et n < x tels que y E Form et
x = tr:~( tr:J(Y ,n, 7), tr:J( tr:J( tr:J(y,0,1 ),n ,6),0,1 ),5). b) L'ensemble: Ax 2 = { # (Vv(F ==> G) ==> (F ==> VvG)) ; F et G sont des formules et v est une variable qui n'a pas d'occurrence libre dans F } est récursif primitif. Même chose: xE Ax2 si et seulement si il existe y, z et n inférieurs à x tels que (y,n) E • 1 (voir 3.4), z E Form et:
x= tr:J( tr:J( tr:J(y,z,4),n,6),tr:J(Y,tr:J(z,n,6),4),4).
c) L'ensemble: Ax3 = { # (VvF ==>Ft/v); v est une variable, F est une formule, t est un terme et, dans F, aucune occurrence libre de v ne se trouve dans le champ d'un quantificateur liant une variable de t } est récursif primitif.
Il faut d'abord se persuader que l'ensemble: B = { (#F,n,m); aucune occurrence libre de vm dans F ne se trouve dans le champ d'un quantificateur Vvn ou 3vn } est récursif primitif. Cela se fait, comme d'habitude, en utilisant le lemme 3 .1. La
89
3. Arithmétisation de la syntaxe
fonction caractéristique g de B peut être définie de la façon suivante : • si x;. Form, alors g(x,n,m) = 0; • si xE Form, alors : - si /J~(x) = 0, alors g(x,n,m) = 1 ; -si /J~(x) = 1, alors g(x,n,m) =g({J~(x),n,m); - si /J~(x) E { 2,3,4,5 }, alors g(x,n,m) = g(/J~(x),n,m) · g(/J~(x),n,m) ; -si /J~(x) E { 6,7}, alors, • si /J~(x) =net (/J~(x),m) E •
4
(voir 3 .4), alors g(x,n,m) = 0;
• sinon, g(x,n,m) =g({J~(x),n,m)). Ensuite, il suffit de traduire : x E Ax3 si et seulement si il existe y, z et rn inférieurs à x tels que y E Form, z E Term, pour tout n < z, ((z,n) E 9o ou (y,n,m) E B) et: x= l.tJ(l.tJ(y,m,6),subsr(m,z,y),4). De tout cela il découle :
THEOREME: L'ensemble Ax = { # F
F est un axiome logique } est
récursif primitif.
3.8
DEFINITIONS :
1) Soit T une théorie; on dit queT est récursive si l'ensemble: #T={#F;FET}
est récursif. 2) On notera Th(T) = { # F ; F est une formule close et T 1- F } (Th (T) est l'ensemble des numéros de Godel des théorèmes de T ). 3) On dit queT est décidable si Th(T) est récursif. Une théorie indécidable est une théorie qui n'est pa.s décidable.
REMARQUE : Etre récursive, pour une théorie, est une condition raisonnable ; on peut même dire que ce sont les théories non récursives qui sont artificielles : comment peut-on espérer faire une démonstration si on ne connaît pas effectivement les axiomes ? En revanche, on va voir que beaucoup de théories naturelles et intéressantes ne sont pas décidables. EXEMPLE : La théorie vide est récursive; l'ensemble de ses théorèmes est tout simplement l'ensemble des formules closes valides. Les théories finies comme !1' 0 sont aussi récursives. Il n'est pas difficile de voir que !J'est récursive.
90
Chapitre 6. Théorèmes de Godel
NOTATION : Soit d = (Fo,F 1,... ,Fk) une suite de formules du langage .2'0 ; par ##d , on désignera l'entier : ## d = !l((# Fo ,# F1 ,... ,# Fk )) (encore une fois, n est la fonction introduite au chapitre 5, en 1.12). On appellera encore numéro de Gôdel de d l'entier ##d.
PROPOSITION : Soit T une théorie récursive; alors l'ensemble: Dem(T) = { (n,m) ; n = # F, m = ##d, F est une formule et d est une démonstration de F à partir de T } est récursif primitif.
~
Il suffit de se reporter à la définition d'une démonstration (chapitre 4, 1.3) et de se rendre compte que le procédé permettant de vérifier si une suite de formules est une démonstration est effectif : (n,m) E Dem(T) si et seulement si les trois conditions suivantes sont vérifiées : 1) pour tout i < lg(m), t5(i,m) E Form ; 2) 6(1g(m)- l,m) = n ; 3) pour tout i < lg( m), t5(i,m) E Ax U# T, ou bien il existe j < i et p < m tels que 6{i,m) = t.tJ(6(j,m),p,6), ou bien il existe j < i et k < i tels que t5(j,m) = t.tJ(t5(k,m),6(i,m),4). (où lg(m) désigne la longueur du mot codé par m.) La clause 3) exprime que chaque formule de la démonstration est, soit un axiome (si t5(i,m) E Ax U # T), soit une formule déduite par généralisation d'une formule déjà démontrée (s'il existe j < i et p < m tels que 6(i,m) = t.tJ(t5(j,m),p,6)), soit une formule déduite par modus ponens de deux formules déjà démontrées (s'il existe j < i et k < i tels que t5(j,m) = t.tJ(6(k,m),t5(i,m),4))). ~
COROLLAIRE : Soit T une théorie récursive; alors Th(T) est récursivement énumérable. En particulier, les ensembles suivants sont récursivement énumérables: • { #F ; F est une formule close valide} ; • { #F ; F est un théorème de .910 } ; • { # F ; F est un théorème de .9l }.
4. Les théorèmes d1incomplétude et d1indécidabilité
~
(n,m)
E
91
En effet, n E Th{T) si et seulement si n E •3 et il existe un entier rn tel que Dem(T); Th{T) est donc l'intersection d'un ensemble récursif avec la projection
d'un ensemble récursif, et est donc récursivement énumérable (voir chapitre 5, 4.3). (:;;)
3.9
Concluons par un autre corollaire:
COROLLAIRE : Si T est une théorie complète et récursive, alors elle est
décidable.
~
On sait déjà que Th{T) est un ensemble récursivement énumérable ; on va
montrer que son complémentaire l'est aussi, et on pourra conclure par le théorème 4. 2 du chapitre 5. Parce que T est complète, si F est une formule close qui n'est pas un théorème de T, alors ·Fest un théorème de T, ce qui se traduit par:
rn ~ Th{T) si et seulement si rn ~ •3 ou a:J{m,O,l) E Th{T).
4. LES THEOREMES D'INCOMPLETUDE ET D'INDECIDABILITE
Indécidabilité de l'arithmétique et du calcul des prédicats 4.1
Les derniers corollaires de la section précédente laissent béantes les questions
suivantes : la théorie vide est-elle décidable ? $J 0 est-elle décidable? et $J? Dans cette section, on va voir que, les trois fois, la réponse est non et montrer les théorèmes les plus célèbres de la logique mathématique. Dans toute cette section, les théories considérées sont exprimées dans un langage fini contenant .2'0 (voir les remarques introductives à la section 3).
92
Chapitre 6. Théorèmes de Godel
THEOREME : Soit T une théorie cohérente contenant .9'0 indécidable.
;
alors T est
~ On va supposer que T est une théorie décidable contenant .9'0 et on va construire une formule close F de $ 0 telle que T 1- F et T 1- ·F. On va se servir pour cela de la section 2 sur la représentation des fonctions récursives. Considérons l'ensemble :
8 = { (m,n); rn est le numéro de Gôdel d'une formule F(v 0) dont v0 est la seule variable libre éventuelle et T 1- F(n.] }. Il est d'abord clair que, puisque T est décidable, 8 est récursif: en effet, l'ensemble A des numéros de Gôdel des formules dont v0 est la seule variable libre éventuelle est certainement récursif: rn E A si et seulement si, pour tout p compris entre 1 et rn, (m,p) ~ 9 4 (voir 3.4, lemme 1). La fonction ~n.#n. est aussi récursive: elle se définit par récurrence par:#!!= ltl(O,O,O), et# (.!L±.l) = ltl(#n.,O,l). On voit alors que: (m,n) E 8 si et seulement si rn E A et Subsr(O,# n. ,rn) E Th(T). Il en résulte que l'ensemble:
B = {nE IN ; (n,n) ~ 8} est aussi récursif, et, d'après le théorème de représentation (2. 2), il existe une formule G[v 0] qui le représente. On a donc, pour tout n E IN : ( *)
n E B implique .9'0 1- G(n.] , donc T 1- G(n.] ;
(**) n ~ B implique .9' 0 1- •G(n.], donc T 1- •G(n.). Par ailleurs, #G(v 0] est un entier appartenant à A que nous appellerons a. On voit d'abord qu'il est impossible que a appartienne à B : par définition de B, cela impliquerait que (a,a) ~ 8, et par définition de 8, qu'il est faux que T 1- G[~), et ceci contredit l'assertion(*) ci-dessus. Il faut donc en déduire que a~ B et que (a,a) E 8. D'une part, par définition de 8 on a T 1- G[~]; d'autre part, (**) implique T 1- ·G[~] : T n'est pas cohérente. ~
4.2
calcul
Le corollaire suivant est le théorème de Church. Il montre l'indécidabilité du de~
prédicats.
COROLLAIRE : L'ensemble: T 0 = { F ; Fest une formule close de $universellement valide}
n'est pas récursif.
4. Les théorèmes d'incomplétude et d'indécidabilité
93
~ Soit G la conjonction de tous les axiomes de .90 (c'est ici qu'on se félicite d'avoir travaillé avec une théorie finie !). Il est alors clair que, pour toute formule close F de 2 0 , .9o ~ F si et seulement si (G ===> F) ET O· On voit donc que, si T0 était récursive, .9o serait décidable, ce qui n'est pas vrai, d'après le théorème précédent. ~
REMARQUES : L'énoncé du dernier corollaire n'a de sens que si l'on a arithmétisé la
syntaxe de ..l', mais sa démonstration est indépendante de cette arithmétisation, dès lors qu'elle prolonge celle que nous avons détaillée sur $ 0 . L'indécidabilité du calcul des prédicats a été démontrée seulement pour les langages contenant le langage de l'arithmétique. On verra dans l'exercice 11 qu'il suffit de supposer que le langage contienne un symbole de prédicat binaire. Mais le théorème est faux pour les langages trop pauvres ne contenant que des symboles de prédicats unaires.
Les théorèmes d'incomplétude de GOdel 4.3
Voici maintenant le premier théorème d'incomplétude (de Gôdel-Rosser) :
THEOREME: Soit T une théorie récursive et cohérente contenant .90 .
Alors T n'est pas complète. En particulier .9 n'est pas complète.
~ Avec ce que l'on sait déjà (théorème 4.1), il suffit de se rappeler qu'une théorie récursive et complète est décidable (corollaire 3. 9). ~
Il y a donc des formules closes de ..z'o qui ne sont ni démontrées ni réfutées par les axiomes de Peano. En suivant la démonstration du théorème d'incomplétude, on arriverait, si on le désirait, à construire une telle formule. Mais cela ne nous dirait pas si cette formule a une signification, ni, le cas échéant, laquelle. Le second théorème d'incomplétude de Godel répond à cette question de façon frappante : c'est une formule exprimant que les axiomes de Peano sont cohérents. Cette formule est vérifiée dans le modèle standard, mais comme elle n'est pas démontrable, d'après le théorème de complétude du chapitre 4, il y a des modèles des axiomes de Peano dans lesquels elle est fausse.
94
Chapitre 6. Théorèmes de Godel
4.4 L'énoncé même du second théorème d'incomplétude demande quelques notations et un peu de travail. Soit T une théorie récursive contenant !fJ ; considérons les deux ensembles récursifs Dem et Dem 0 définis par : Dem
= { (a,b)
; a est le numéro de Gôdel d'une formule close F et b est le numéro de Gôdel d'une démonstration de F dans T } ;
Dem 0 = { (a,b); a est le numéro de Gôdel d'une formule close F et b est le numéro de Gôdel d'une démonstration de F dans .90 }. D'après le théorème de représentation, il existe deux formules du langage de l'arithmétique à deux variables libres qui représentent ces ensembles. On va choisir deux telles formules que l'on notera 'Demet
'Dtmo respectivement
(on reviendra plus loin sur la
façon de faire ce choix). La cohérence de la théorie T peut alors s'exprimer par une formule de
..t0 .
Il suffit de dire qu'on ne peut pas démontrer quelque chose et son
contraire. Définissons pour cela la fonction récursive primitive Neg de IN dans IN par : • si n est le numéro de Gôdel d'une formule close F, alors Neg(n) est le numéro de Gôdel de ·F, c'est-à-dire Neg(n) = LtJ(n,O,l) ; • sinon, Neg(n) =O. Soit mtQ[v 0 ,v 1) une formule représentant cette fonction. La formule Coh(T) est par définition la formule : Coh(T) = •3vo3v13v23vJ('Dem[vo,v2] 1\ 'Dem[v1,v3) 1\ mtg[vo,vl]) La formule Coh(T) mérite bien son nom: supposons que la théorie T ne soit pas cohérente ; alors il existe une formule close F et deux démonstrations formelles do et d1, respectivement de F et de •F. Si n0 ,n 1 ,m 0 et m1 sont les numéros de Gôdel respectifs de F, •F, do et d 11 alors on voit que: IN 1= 'Dem[no,mo) 1\ 'Dem[n11m1] 1\ mtQ[no,nl], et donc: IN 1= -,(oh(T). Réciproquement, si : IN 1= -.Coh (T ), alors on peut trouver des entiers no ,n 1 ,mo et m1 tels que : IN 1= 'Dem[no,mo) 1\ 'Dem[n11m1) 1\ mtQ[no,nl], et donc (n 0 ,m 0) E Dem, (n 1,m 1) E Dem et (n 0 ,n 1) E Neg : n0 est le numéro de Gôdel d'une formule qui est démontrable, ainsi que sa négation. On va voir qu'il est toutefois possible d'avoir un modèle rot de !fJ dans lequel la formule -,(oh(T) est vérifiée, bien que la théorie T soit cohérente. Cela veut tout simplement dire qu'il existe des éléments a 0 ,a 11 a 2, a3 dans rot tels que:
rot 1= 'Dem[ao,a2] 1\ 'Dem[ahaJ] 1\ mtQ[ao,al] ; le fait que a 11 a 2, a 3 et a 4 ne sont pas nécessairement des entiers standard nous empêche d'aller plus loin et de conclure, comme dans le cas de IN, à la non cohérence de T.
4. Les théorèmes d'incomplétude et d'indécidabilité
95
Cependant, dans tout modèle de .9', les formules~ et 'Jteg continuent à avoir certaines propriétés auxquelles nous sommes habitués. Par exemple, un fait qui découle formellement de la façon dont Coh(T) a été définie et dont on se servira par la suite est le suivant : supposons que bE IN soit le numéro de Godel d'une formule close F et que d soit le numéro de Godel de -,F (c'est-à-dire d = c:tJ(b,O,l)) . Alors: .9'o 1- (3vo~[Jl,vo] A 3v,~[.d.,v 1 ]) ===> -,(oh(T)).
4.5 Nous sommes maintenant d'incomplétude de Gôdel:
en
mesure
d'énoncer
le
second
théorème
THEOREME : Soit T une théorie cohérente, récursive et contenant .9'. Alors T ne démontre pas Coh(T).
Il faut toutefois être un peu prudent. En effet, si les ensembles Dem et Dem 0 sont parfaitement définis, on a déjà remarqué qu'il n'en était pas de même des formules ~et 'Dmlo, et, par voie de conséquence, de la formule Coh(T). La seule chose que nous sachions, a priori, sur ces formules est qu'elles représentent les ensembles Dem et Dem 0 ; on connaît exactement les entiers qui les vérifient, mais on ne sait pas grand chose de leur comportement en dehors des éléments standards ; de fait, on peut trouver (voir exercice 8) deux formules D[v 0 ,v 1) et D'[vo,v 1) qui, toutes deux, représentent Dem 0 , mais qui ne sont pas équivalentes, dans le sens où .9' ne démontre pas la formule : VvoVv 1(D[vo,vt] Ç::::::} D'[vo,vtD· Comme on a besoin de la formule~ pour énoncer le second théorème d'incomplétude (pour écrire Coh(T)), il faut bien savoir à laquelle on a affaire. Pour résumer, le théorème d'incomplétude énoncé ci-dessus n'est vrai que si on a fait le bon choix pour la formule ~' et il semblerait bien qu'il faille se résoudre à l'écrire effectivement. Cela pourrait se faire, en la construisant pas à pas et en suivant la preuve du théorème de représentation et la preuve du fait que l'ensemble Dem est récursif. On obtiendrait ainsi une formule ~ plus ou moins canonique, dans le sens (approximatif) suivant : si deux personnes de bonne foi faisaient cette construction, elles tomberaient sûrement sur deux formules équivalentes modulo .9'. Mais ce n'est pas ce que l'on fera, car cela exigerait des écritures et des vérifications beaucoup trop longues et ennuyeuses. Il est plus facile d'isoler les propriétés, peu nombreuses en fait, que doivent vérifier ces formules pour permettre la preuve du second théorème d'incomplétude. On verra ensuite comment se débrouiller avec ces propriétés.
96
4.6
Chapitre 6. Théorèmes de Godel
Pour cela, nous avons besoin d'une définition:
DEFINITION : L'ensemble E est le plus petit ensemble de formules du langage ..i'o qui : i) contient toutes les formules sans quantificateur ; ii) est clos par conjonction et disjonction (si F et G sont dans E, il en est de même de F 1\ G et de F V G) ; iii) est clos par quantification existentielle; iv) est clos par quantification universelle bornée (si F est dans E, alors Vvo(vo < v1 ~ F), qu'on écrira (Vv0 < v1) F, est aussi dansE). On dira qu'une formule F est sigma (on écrira : « F est E ») si F appartient à E.
(Remarque : cet ensemble fait partie d'une célèbre famille et est en général appelé E~ (lire «sigma zéro un») ; comme c'est le seul membre de cette famille qui sera considéré ici, on ne s'embarrassera pas d'indices.) Par exemple, on peut voir sans difficulté que les relations « n divise rn » ou « n est un nombre premier» s'expriment par des formules E. Il faut prendre garde cependant au fait que l'ensemble E n'est pas clos par négation. Voici les propriétés que l'on exige des formules 'Demet
'Dmlo:
(Pl) (P 2)
1- VvoVv1('Dmlo(vo,v1] ~ 'Dem(vo,vl]); 'Demet 'Dm1o sont des formules E ;
(P 3 )
si F est une formule close E, alors !J' 1- F ~ 3v1'Dmlo(ll ,v 1].
La première n'est pas très difficile à justifier. Elle est on ne peut plus naturelle puisque T contient .9'0
.
De toute façon, si la propriété (P 1) n'était pas vérifiée, il
suffirait de remplacer 'Dem(vo,vl] par 'Dem(vo,v 1] V 'Dmlo(vo,vl]· Pour la seconde, il suffit de reprendre la preuve du théorème de représentation ; on s'aperçoit en fait que cette même preuve donne un théorème de représentation bis:
THEOREME : Toute fonction récursive totale est représentable par une
formuleE.
4. Les théorèmes d'incomplétude et d'indécidabilité
97
En conséquence, on supposera que les formules 'Dml, 'Drmo et toutes les formules dont on peut avoir besoin pour représenter un ensemble ou une fonction récursive sont E. Voici un autre résultat qui donne de l'importance aux formules E et un début de justification à (P3) :
PROPOSITION : Soit F une formule close E de .2'0. Alors :
IN t= F =::::} 3v{Demo[ll ,v1].
(Autrement dit, si Fest une formule close E, IN t= F si et seulement si 9J 0 1- F.) ~
Si F est fausse dans IN, évidemment, la formule F =::::} 3v1'Drmo[ll,v1) y est vraie. Si elle est vraie, on va montrer qu'elle est démontrable dans 9J 0, et pour cela, on va utiliser le théorème de complétude: il suffit de voir que F est vraie dans n'importe quel modèle de 9J0 . Mais tout modèle de 9Jo peut être considéré comme une extension finale de IN (théorème 1.6). Le lemme suivant terminera donc la preuve:
LEMME : Soit m une ..t'o-structure, rot une extension finale de m, F(vhv 2,... vp) une formuleE et aha2, ... ,ap des points de m. Alors:
mt= F[aha2, ... ,ap)
~
implique
rott= F[aha2, ... ,ap).
On raisonne par induction. On considère l'ensemble des formules G qui sont
telles que, pour tous a1,a 2,... ,ap de
m(pétant le nombre de variables libres de G) :
mt= G[aha2, ... ,ap)
implique rott= G[aha2, ... ,ap). On voit facilement que cet ensemble contient toutes les formules sans quantificateur et est clos par conjonction et disjonction ; il est aussi clos par quantification existentielle parce que m est une sous-structure de rot, et il est clos par quantification universelle bornée parce que rot est une extension finale de m. Cet ensemble contient donc toutes les formules E. ~
4.7
Posons:
9J1 = 9Jo U { F =::::} 3v{Dmlo[ll ,v1) ; Fest une formuleE close}. On vient de voir que IN est un modèle de 9J 1. Il découle aussi facilement de tous les lemmes que l'on a démontrés à la section 3 que 9J 1 est une théorie récursive. Le second théorème d'incomplétude se déduit alors des deux lemmes suivants :
98
Chapitre 6. Théorèmes de Godel
LEMME 1 : Toute formule de .9> 1 est conséquence de .9>.
LEMME 2: Soit T une théorie récursive cohérente qui démontre toutes les formules de .9> 1• Alors T ne démontre pas Coh(T).
Remarquons que le lemme 2 implique immédiatement qu'une théorie récursive cohérente qui contient .9> u .9>1 ne démontre pas sa propre cohérence, ce qui constitue déjà une bonne approximation du second théorème d'incomplétude. (On peut montrer que .9>1, qui est syntaxiquement plus simple que .9>, est en fait bien plus faible que .9> ; par conséquent, le lemme 2 donne une version forte du second théorème d'incomplétude). La preuve de lemme 2, on va le voir, n'est pas trop difficile. La preuve du lemme 1 n'est pas très difficile non plus, mais elle est longue et ennuyeuse. Elle exige un grand nombre de vérifications fastidieuses. On va donc laisser le choix au lecteur : s'il insiste pour avoir la preuve complète, il faudra qu'il démontre le lemme 1 par lui-même ; on se bornera ici à donner quelques indications sur cette démonstration. Sinon, soit que notre lecteur admette le lemme 1, soit qu'il se contente d'une forme légèrement affaiblie du théorème, on lui donne rendez-vous quelques lignes plus loin pour la démonstration du lemme 2. 4.8
Indications pour la preuve du lemme 1 :
(;;)
Une mise en garde avant tout ; voici l'énoncé exact du lemme 1 : il existe une
formule 'Demo[v 0 ,v 1] de .ZOo qui est :E, qui représente l'ensemble Demo et qui est telle que, pour toute formule sigma F de .2'0 , on ait : .9> 1- F ==) 3v1'Dmlo[JLE,v1]· L'idée qui va nous servir de fil conducteur est simple : on reprend 1' argument qui nous a
permis d'affirmer que pour toute formule F qui est close et :E, IN 1= F ==) 3v1'Dmlo[JLE,v1], et on va le formaliser dans .9>. Voici quelques rappels et remarques avant de s'engager dans cette voie : soient n E IN et rot un modèle de .9>. Appelons M l'ensemble sous-jacent à rot. Un sous-ensemble X de M" est définissable s'il existe une formule F[vo,v 1,... ,vn-1] de L telle que : X= { (ao,a1, ... ,an-1) E M" ; rotl= F[ao,a1, ... ,an-1D· Une application de M" dans M est définissable si son graphe l'est ; un élément a est définissable si {a } est définissable. Si F[v 0 ,v 1, ... ,vn] est une formule de .2'0 , le fait que, dans tout modèle de .9>, l'ensemble défini par Fest le graphe d'une application de IN" dans IN s'exprime par : .9> 1- VvNv2 ... Vvn3!voF[vo,vh···,vn]. La formule VvNv 2... Vvn3!voF[vo,v 1,... ,vn] sera désignée par l'écriture: « F définit une
4. Les théorèmes d'incomplétude et d'indécidabilité
99
application de Mn dans M ». On fera de même pour d'autres propriétés s'exprimant par des formules de ..z'o: l'énoncé de la propriété écrit entre guillemets représentera la (ou plutôt une) formule qui l'exprime. Les raisonnements par récurrence nous sont permis puisque le schéma SI est inclus dans .9. On peut aussi définir des applications par récurrence. Très exactement :
Soient F et G des formules de .2'0 , n un entier et supposons que: .9
~ «
F définit une application de Mn dans M » 1\ « G définit une application de Mn+l dans M ».
Alors, pour tout modèle mt de .9, si on appelle f et g les fonctions définies respectivement par F et G dans mt, alors il existe une et une seule fonction définissable h de Mn+l dans M telle que: • pour tous éléments a 1, a 2, ... , an de M, h(O,a1,a2, ... , an) =f(a 1,a2, ... , an); • pour tous éléments ao, a1, ... , an de M, h(ao + l,a1, ... ,an) =g(ao,a 1, ... , an,h(ao,a 1, ... ,an)). Cette fonction est définie par une formule H dépendant récursivement de F et G (mais pas de mt). De plus, si F et G sont des formules E, alors H peut aussi être choisie E. On établit ce résultat en démontrant d'abord dans .9 quelques faits simples d'arithmétique, afin de pouvoir généraliser le lemme 4 de 2 .3. On peut alors construire des formules E : « v0 est le code d'une formule close de
.2'0 », «vo est le code d'une formule de .2'0 ayant une seule variable libre», «vo est le code d'une formule close de .2'0 et v1 est le code d'une démonstration de celle-ci», etc. L'avantage de ces formules par rapport à celles que l'on obtiendrait en appliquant le théorème de représentation, c'est qu'un certain nombre de faits concernant la propriété écrite entre guillemets se traduisent par des théorèmes de .9. Par exemple le lemme de déduction (chapitre 4, 1. 7) et la proposition 2 .4 du chapitre 4. Il reste le plus difficile, qui est le théorème de complétude. On se bornera au langage ..z'o. Etant donnée une suite de cinq formules dl = (Ho[vo],H 1[v0],H 2[v0 ,v1], H3[v 0 ,v 11 v2],H 4 [vo,v 11 v2]), on peut facilement trouver une formule close G (dépendant récursivement de dl) qui exprime que, dans tout modèle de .9 : l'ensemble X0 défini par Ho n'est pas vide, que l'ensemble défini par H1 est réduit à un élément a qui appartient à X0 , H2 définit une fonction de X0 dans lui-même, H3 et H4 définissent des fonctions de X0 x X0 dans X0 . Si dl satisfait ces conditions et si mt est un modèle de .9, alors on E M ; mt 1= H0 [a]}, où .0 est l'unique élément de M vérifiant H11 et où les interprétations de ~'.:!et~ sont les fonctions définies dans mt par H2, H3 et H4 . Etant données une suite dl
appellera mt( dl) la .2'0-structure dont l'ensemble de base est {a l'interprétation de
comme ci-dessus et une formule F[v0 ,v 1, ... ,vk] de ..z'o, on peut, par récurrence ordinaire sur la hauteur de F (voir aussi l'exercice 11), construire une formule de $ 0 que l'on notera « (v0 ,vh ... ,vk) satisfait la formule F dans mt( dl)» et qui est telle que : pour tout modèle
mt de .9, pour tous éléments a0 , a 11 ... , ak de M vérifiant H0 , on a:
100
Chapitre 6. Théorèmes de Godel
rot{ eN)
1= F[ao,al, ... ,ak) si et seulement si
rot 1= « (ao,ah···,ak) satisfait la formule F dans rot( eN)». La formule « (vo,vh···,vk) satisfait la formule F dans rot( eN)» dépend récursivement de F et de eN. On peut maintenant énoncer la version du théorème de complétude dans Peano:
Pour toute formule close F, il existe une suite de cinq formules dl
= (H 0 [v 0],
Hl[vo),H2[vo,vl),H3[vo,vhv2),H4[vo,vhv2]) (dépendant récursivement de F) telle que: .9'J 1- Coh(F)::::} « F est vérifiée dans rot( eN)».
(Ici, Coh{F) est la formule : --.3v0 ( « v0 est le code d'une démonstration de --.F ») et « F est vérifiée dans rot( eN)» est la formule «la suite vide satisfait la formule F dans rot( eN)».) La preuve de ce théorème se fait en suivant la preuve du théorème de complétude (voir chapitre 4, 2.6). Nous n'insisterons pas sur ce point. On termine maintenant la preuve du lemme 1 : la formule 'Demo[v0 ,v 1) est la formule « v0 est le code d'une formule close de
..t0 et v1 est le code d'une démonstration
de
celle-ci dans .9'J0 ». Pour montrer que, si F est une formule close E, alors on a :
.9'J 1- F::::} 3v{Dmlo[ll,v1], on utilise le théorème de complétude ordinaire: on montre que la formule F::::} 3v{Dmlo[ll ,v 1) est vraie dans tout modèle de .9'J. Considérons un modèle rot= < M , 0, S, +, x > de .9'J. Si 3v{Dmlo[ll ,v1) est vraie dans rot, alors la formule F ::::} 3v 1'Demo[ll ,v 1) y est vraie aussi. Sinon, appelons G la conjonction des formules de .9'J0 et de --.F. La formule --.3v 1'Demo[ll ,v 1) est équivalente à Coh{G), et donc: rot 1= Coh{G). On applique alors la version du théorème de complétude dans Peano : il existe une suite de cinq formules dl comme ci-dessus définissant une ..t0 -structure: rot{ eN)=
101
4. Les théorèmes d'incomplétude et d'indécidabilité
REMARQUE : Cette preuve utilise le théorème de complétude, (nous parlons ici du vrai théorème de complétude, et non de celui qui a été démontré dans .9) pour lequel la notion d'ensemble infini et même l'axiome du choix sont nécessaires. Les démonstrations syntaxiques de ce lemme (il en existe) présentent l'avantage de ne faire appel qu'à des notions finies (nombres entiers, suites finies, etc.).
4.9 ~
Preuve du lemme 2: Considérons la fonction g de IN dans IN définie par : • si n est le numéro de Gôdel d'une formule F[v 0] à une variable libre, alors g(n)
est le numéro de Gôdel de la formule F[n.] ; • sinon, g(n) =O. Cette fonction est manifestement récursive primitive, et soit G[v 0 ,v 1] une formule qui la représente. Pour tout entier n, on a donc :
(1)
.9lo ~ Vvo(G[vo,n.] ~ vo ~ g_{u)).
On définit la formule t:[vo] par :
t:[vo] = 3v13v2('Dtm[v2,v1] A G[v2,vo]). Remarquons que si n est le numéro de Gôdel d'une formule F[v0] à une variable libre, alors : IN 1= t:[n.] si et seulement si F[n.] est démontrable. Soient a le numéro de Gôdel de la formule -.t:[v 0] et b = g(a), le numéro de Gôdel de -.t:[~]. De la définition de t: et de (1), on déduit :
(2)
.9lo ~ t:[~] ~ 3v11)em[Q.,v1]·
On voit d'abord que T ne démontre pas -.t:[~]. On suppose le contraire, et on en déduit que T est contradictoire. En effet, il existe un entier c qui est le code d'une démonstration de
-.t:[~]
dans T, et donc : .9lo ~ 'Dtm[Q.,ç],
ce qui, avec (2), prouve que .90 ~ t:[~]. Comme T contient .90 , T ~ t:[~] et T est donc contradictoire. Ensuite, on montre que T puisqu'on va montrer que .91 ~ t:[~] déduit que:
~
Coh(T) ==::) -.t:[~]. En fait, on va faire mieux -,(oh(T). Posons T1 = .9 1 Ut:[~]. De (2), on
==::)
T1 ~ 3vl'Dtm[Q.,v1]· Mais t:[~] est une formule close E. Appelons d le numéro de Gôdel de t:[~] ==::) 3v2'Dm1o[.d.,v2] E .91 et : T1 ~ 3v2'Dm1o[.d.,v2]· Or, on a supposé que~ VvoVv 1('Dm1o[vo,v 1] ==::) 1)em[vo,v1]), et donc : T1 ~ 3v11)em[Q.,v1] A 3v21)em[.d.,v2],
t:[~].
Alors
102
Chapitre 6. Théorèmes de Godel
ce qui, en se reportant à la définition de Coh(T), montre bien que : T1 1- -,(oh(T), et, grâce au lemme de déduction : .9 1 1- t:[~] ~ -,(oh(T).
e REMARQUE 1 : En supposant que la formule 'Dtm vérifie quelques propriétés tout à fait anodines et naturelles (essentiellement que : .9 1- (3vo'Dtm[li,vo) A 3v{Dem[# (F ~ G),v1]) ~ 3v2'Dem[i§.,v2] ), on peut voir que la formule Coh(T) est équivalente à -,3v0'Dtm[# (.Q ~ l),v0). REMARQUE 2 : La formule t:[~] affirme que sa négation est démontrable. Elle est évidemment fausse dans IN. REMARQUE 3: Le théorème de Godel affirme qu'une théorie récursive et cohérente ne peut démontrer sa propre cohérence ; en revanche elle peut très bien démontrer sa propre incohérence, comme c'est le cas pour la théorie .9 U { -,(oh( .9) } par exemple. Toutefois, ce n'est pas le cas pour la théorie .9 elle-même: il y a un modèle de .9 u Coh( .9) (à savoir IN) ; ceci se généralise à toute théorie récursive dont IN est un modèle.
Exercices
103
EXERCICES
1.
Soient X un ensemble non vide et f une fonction de X x X dans X. On considère
la $ 0-structure mt dont l'ensemble de base est M =IN U (X x 7l) et où les symboles .S. , .:!: et ~sont interprétés par les fonctions S, +et x définies par les conditions suivantes :
• mt est une extension de IN ; • si a= (x,n) EM-IN, alors S(a) = (x,n + 1); • si a = (x,n) E M -IN et rn E IN, alors a + rn = rn + a = (x,n + rn) ; • si a= (x,n) et b =(y, rn) sont des éléments de M-IN, alors (x,n) + (y,m) = (x,n +rn); • si a= (x,n) EM-IN et rn E IN, alors (x,n) • si a= (x,n) EM-IN et rn E IN, alors rn
x
x
rn= (x,n
x
(x,n) = (x,rn
rn* 0, et (x,n)
rn) si
x
x
0 = 0;
n);
• si a= (x,n) et b =(y, rn) sont des éléments de M-IN, alors (x,n)
x
(y,rn) = (f(x,y),n x rn).
a) Montrer que mt est un modèle de .9'o. b) Montrer qu'aucune des formules suivantes n'est conséquence de .9' 0
iii)
VvoVv 1 vo.:!: v1 ~ v1.:!: vo; VvoVvNv2 vo ~ (v1 ~ v2) ~ (vo ~ v1) ~ v2; VvoVv 1((vo ~ v1 A. v1 ~ vo) ==:::} vo ~ v1) ;
iv)
Vvo!!~vo~!!.
i) ii)
:
c) Construire un modèle de .9'0 dans lequel l'addition n'est pas associative. 2. Soit mt un modèle de .9' et on suppose que IN est une sous-structure propre de mt. On définit sur M, l'ensemble sous-jacent à mt, la relation ~ suivante : x~ y si et seulement si il existe deux éléments n et rn de IN tels que : mti=X.:!:.!l~Y.:!:.!!l·
a) Montrer que la
relation~
est une relation d'équivalence.
b) Soient a, a', b et b' des éléments de M, tels que
a~
a' et b ~ b'. Montrer que
a+b~a'+b'.
c) On appelle E l'ensemble des classes de M relativement à la relation
~.
On
définit sur E la relation R par : si x et y sont dans E, alors xRy si et seulement si il existe a E x et b E y tels que mt 1= a
~
b.
Montrer que la relation Rest une relation d'ordre total. Montrer que E, muni de cet ordre, a un plus petit élément mais pas de plus grand élément. Montrer que R est un ordre dense sur E. 3.
Démontrer le théorème chinois (théorème 2 .4).
104
Chapitre 6. Théorèmes de Godel
4. Montrer la réciproque du théorème de représentation (théorème 2. 2) : si une fonction de !NP dans IN est représentable, alors elle est récursive. 5. Soit T une théorie dans un langage fini, et on suppose que T est récursivement énumérable, c'est-à-dire que l'ensemble :
{#F;FET} est récursivement énumérable. Montrer qu'il existe une théorie T' récursive et équivalente à T (c'est-à-dire telle que, pour toute formule G, G est démontrée par T si et seulement si G est démontrée par T'). 6.
Montrer que, si le «grand théorème de Fermat » :
•(3x > 0)(3y > 0)(3z > 0)(3t > 2)(xt
+ yt ~ zt)
n'est pas réfutable dans 9> 0 , alors il est vrai dans IN. (Il semble bien que ce «grand théorème de Fermat » ait été démontré depuis la parution du premier tirage de ce livre, après avoir défié les mathématiciens durant plus de trois siècles. Il deviendrait ainsi le théorème de Wiles-Fermat :voir l'avant-propos de ce deuxième tirage). 7.
Dem
Dans cet exercice, 1)em[v0,v 1) est une formule qui représente l'ensemble:
= { (a ,b) ;
b est le numéro de Go del d'une démonstration dans 9l de la formule dont a est le numéro de Godel }.
Dire quelles sont, parmi les assertions suivantes, celles qui sont vraies pour toutes les formules closes F : a)
IN 1= 3v 11)em[li,v1]
=:::}
F;
c)
IN 1= F =:::} 3v{Dem[li,v1) ;
b)
9l 1- 3v11)em[li, v1]
=:::}
F;
d)
9l 1- F =:::} 3v{Dem[li,v1) .
8. Montrer qu'il existe une formule F(v 0) de .2'0 telle que IN 1= ·3voF(vo) et 9l ne démontre pas ·3v0 F[v 0). En déduire que, pour toute formule G(vo,v 1,... ,vn), il existe une formule H[vo,v 1,... ,vn) telle que : VvoVvl ... Vvn(G[vo,vl, ... ,vn) {=::=::) H[vo,vl, ... ,vn]) soit vraie dans IN mais non démontrable dans .9-l. 9.
Montrer que, si Fest une formule close et si : .9>1- 3vo1)em(li,vo) =:::} F,
alors : .9>1-F. (Voir l'exercice 7 ; on pourra appliquer le second théorème d'incomplétude à la théorie
9l U { ·F }.)
Exercices
105
10. Cet exercice utilise la notion d'extension élémentaire qui sera introduite au chapitre 8 (théorie des modèles) . Soient rot un modèle non standard de .9', M l'ensemble sous-jacent à rot, et A Ç M. On dit qu'une fonction f de MP dans M est définissable à paramètres dans A s'il existe une formule F[v0 ,v 11 v2,... ,vp] de ..z'o à paramètres dans A telle que, pour tous a11 a2,... ,ap appartenant à M, on ait :
rott= Vvo(F[vo,a 1,a2,···,ap) <===> vo ~ f(a 11 a2,... ,ap)). a) Soit mune sous-structure de rot, dont l'ensemble sous-jacent, noté N, est clos pour les fonctions définissables à paramètres dans N (c'est-à-dire tel que pour p E IN, pour toute fonction f de MP dans M définissable à paramètres dans N, et pour tous a1,a 2,... ,ap de N, f(a 1,a 2,... ,ap) E N ). Montrer que est une sous-structure élémentaire de rot (et donc un modèle
m
de !J'). (Indice : montrer par induction sur la hauteur de la formule G à paramètres dans
G est vraie dans
mque
msi et seulement si elle est vraie dans rot.)
b) On dit maintenant qu'un sous-ensemble X de MP est définissable à paramètres dans A s'il existe une formule G[vhv 2,... ,vp) à paramètres dans A telle que, pour tous aha 2, ... ,ap de M,
(aha 2,... ,ap) EX si et seulement si rott= G[aha 2,... ,ap). Montrer que l'ensemble des sous-ensembles de M définissables à paramètres dans A forment une sous-algèbre de Boole de l'algèbre de tous les sous-ensembles de M. Montrer que, si f et g sont des fonctions de M dans M définissables à paramètres dans A, alors l'ensemble {a E M; f(a) =g(a)} est définissable à paramètres dans A.
f
c) Soient f et g deux applications de M dans M. On définit les applications Sf, x g de M dans M par :
+ g et f
Sf(x) = f(x)
+ 1 ; (f + g)(x) = f(x) + g(x) ; (f x g)(x) = f(x) x g(x).
Montrer que l'ensemble des fonctions définissables à paramètres dans A est clos pour ces opérations. d) Soient ~ l'algèbre de Boole des sous-ensembles de M définissables à paramètres dans M, U un ultrafiltre de cette algèbre et .:1 l'ensemble des fonctions de M dans M définissables à paramètres dans M. Montrer que la relation ~ sur ::1, définie par :
f ~ g si et seulement si { a E M ; f( a) = g( a) } E U, est une relation d'équivalence et que, si f ~ f' et g ~ g', alors : Sf ~ Sf' f + g ~ f' + g' et f x g ~ f' x g'. Si fE .:1, on note f/U la classe de f relativement à~ et .:1/U l'ensemble des classes relativement à la relation ~ . On voit donc que 1'on peut définir sur .:1/ U les opérations 5, +,x. L'élément 0 de .:1/ U sera par définition la classe de la fonction
106
Chapitre 6. Théorèmes de Godel
constante égale à O. Cela permet donc de considérer .:YfU comme une $ 0-structure. e) Soit, pour chaque a E M, l'élément de la fonction constante égale à a.
a de .:YfU égal à la classe relativement à~
Montrer que 1' application de rot dans .:YfU qui à a E M fait correspondre un homomorphisme de $ 0-structures. f) Montrer que, pour tout p E IN, pour toute formule F[v 1,v 2, ... ,vp) de $ tous f1,f2,... ,fp de .:Y on a :
0
a est
et pour
.:YfU t= F[f1/U ,f2/U , ... ,fp/U) si et seulement si {a EM; rott= F[f1{a ),f2{a ), ... ,fp(a )]} E U. En déduire que 1' application de rot dans .:YfU qui à a E M fait correspondre aest élémentaire (voir chapitre 8). g) On suppose que IN est une sous-structure élémentaire de rot. Montrer que, si f est une fonction de M dans M, définissable à paramètres dans rot, et si a E M, alors il existe b E M tel que :
rott= Vvo(vo < a ==> f(vo) < b). h) Soit rot une extension élémentaire propre de IN. Montrer qu'il existe une extension élémentaire propre 'Jt de rot de base N telle que : pour tout a E N, il existe bE M tel que:
'Jtt=a
Soient $un langage fini, rot une $-structure et M son ensemble sous-jacent.
On dit que rot est fortement indécidable si toute théorie dans $dont rot est modèle est indécidable. a) Montrer que IN est fortement indécidable. b) On fixe cinq formules de $: Go[vo], G1[vo], G2[vo,v1], G3[vo,v1,v2], G4[vo,v1,v2], et on considère la théorie T 0 dont les axiomes sont les formules suivantes :
Vvo{Gl[vo) ==> Go[vo]); (2) VvoVv1(G2[vo,v1) ::=} {Go[vo] A Go[vl])) ; (3) VvoVvNv2(G3[vo,v1,v2] ::=} (Go[vo] AGo[vl] A Go[v2])) ; (4) VvoVvNv2{G4[vo,v1,v2] ==> (Go[vo] A Go[vl] A Go[v2])); (5) 3!voG1[vo) ; (6) Vv1(Go[v1) ::=} 3!voG2[vo,v1]) ; (7) VvNv2((Go[v1) A Go[v2]) ==> 3!voGJ[vo,v1,v2]) ; (8) VvNv2((Go[v1) A Go[v2]) ==> 3!voG4[vo,v1,v2]). Si rot est un modèle de T 0 , on définit la $ 0 -structure 'Jt de la façon suivante : l'ensemble de base de 'Jt est N = {a E rot; rott= G0 [a] } ; la constante .Q est interprétée par l'unique élément a de rot satisfaisant G1[a ], le symbole ~est interprété par la fonction qui à a E N fait correspondre l'unique élément b tel que rott= G2[b,a ], le symbole :!: par la (1)
fonction qui à deux éléments a et b de N fait correspondre l'unique élément c tel que
107
Exercices
~ par la fonction qui à deux éléments a et b de N fait est définissable correspondre l'unique élément c tel que rot 1= G4 [c,a,b]. On dira que
mt 1= G3 [c,a,b], le symbole
m
dans rot (attention à ne pas faire de confusion avec la notion de sous-ensemble définissable). Montrer que, pour toute formule F[v 1,v2, ... ,vp) de ..l'o, il existe une formule mt est un modèle de T o et mest la $ 0-structure définie dans mt, et si a 1,a 2,... ,ap sont des éléments deN, alors: F*[~ 1 ,v 2 , ... ,vp) de ..l'telle que, si
m1= F[a 1,a2, ... ,ap) si et seulement si rot 1= F*[a 1,a 2,... ,ap). Montrer que F* peut être trouvée effectivement à partir de la formule F, c'est-à-dire : il existe une fonction a récursive primitive telle que, sin=# F, alors a(n) = # F* . c) Soit Tune théorie de ..l'contenant T 0. On pose : T- = { F ; Fest une formule close de $
0
et T ~ F* }.
Montrer que si G est une formule close de ..z'o, les trois conditions suivantes sont équivalentes: 1) GE T-; 2) T- ~ G ; 3) T ~ G*. d) Montrer que si IN est définissable dans e) Montrer que la structure
"U.
mt, alors mt est fortement indécidable.
dans le langage des anneaux ..l'= Hk:,~} est
fortement indécidable (utiliser le théorème de Lagrange : tout entier positif est la somme de quatre carrés). Montrer que les théories suivantes sont indécidables : la théorie des anneaux, la théorie des anneaux commutatifs, la théorie des anneaux intègres. f) On suppose que ..l'est le langage ne contenant qu'un seul symbole de prédicat
R. On considère la $-structure mt dont M =IN U {IN x IN) et où Rrot est égal à :
binaire
l'ensemble sous-jacent
est
{(a,{a,b)); a EIN, b EIN} U {((a,b),b); a EIN, b EIN} U {((a,b),{a+b,a·b)); a EIN, b EIN}. Montrer que IN est interprétable dans
mt. Montrer que l'ensemble des formules
universellement valides du langage ..l'n'est pas récursif. g) Cette fois, ..l'est le langage contenant un symbole de prédicat binaire D et un symbole de fonction binaire.:!:. Soit rot la $-structure dont l'ensemble sous-jacent est IN, où .:!: est interprété par l'addition et D par la relation «divise» (Dxy est vrai si et seulement si x divise y). Montrer que l'élément 1 et la relation x=y·(y + 1) sont définissables dans mt. Montrer que 12.
mt est fortement indécidable.
Soient f une fonction récursive totale de IN dans IN et F[vo,v 1] une formule
~
la
représentant (voir théorème 4.6). On a alors: IN 1= Vv 13vo F[vo,vl)· On dit que fest prouvablement totale s'il existe une formule ~ la représentant et telle que:
108
Chapitre 6. Théorèmes de Godel
Le but de cet exercice est de montrer qu'il existe des fonctions récursives totales qui ne sont pas prouvablement totales. a) Soit F(vo,v1,... ,vk] une formule E. Montrer que l'ensemble: { (no,nll···,nk); IN F F(no,nl,···,nk] } est récursivement énumérable. b) Soit f une fonction totale de IN dans IN ; montrer que les deux conditions sui vantes sont équivalentes :
i) fest récursive ;
ii) il existe une formule E qui représente f. c) Montrer qu'il existe une fonction partielle récursive h à 2 variables telle que, pour tout entier n : • si a est le numéro de Gôdel d'une formule E, disons F(v0,v1), et s'il existe un entier m tel que 9' 1- F(m,n.], alors : 9' 1- F(lli.Jù,n.) ; • si a est le numéro de Gôdel de la formule F(v 0 ,v 1), et s'il n'existe pas
d'entier m tel que 9' 1- F(m,n.], alors h(a,n) n'est pas définie ; • sinon, h(a,n) =O. d) On définit maintenant une fonction g de IN 3 dans IN de la façon suivante : pour tout entier n : • si a est le numéro de Gôdel d'une formule sigma F[v0,v 1) et si b est le numéro de Gôdel d'une démonstration dans 9' de la formule: Vv13voF[vo,v1], alors g(a,b,n) = h(a,n) ; • sinon, g(a,b,n) =O. Montrer que g est une fonction totale récursive. e) Montrer qu'il existe des fonctions récursives totales qui ne sont pas prouvablement totales. 13.
Cet exercice doit être fait après la lecture du chapitre 7 sur la théorie des
ensembles. En particulier on doit savoir ce qu'est le cardinal
.Jo.
a) Montrer que, si T est une théorie cohérente obtenue à partir de 9' en y ajoutant un nombre fini de formules, alors T n'est pas complète. b) Construire, pour chaque entier net chaque s = (s{O),s(1), ... ,s(n-1))
E {
0,1 }",
une formule close F5 , de sorte que, pour touts:
i) F
0
cohérente.
109
Exercices
c) Montrer qu'il existe équivalentes.
.Ja
théories contenant ~ et deux à deux non
14. Pour cet exercice aussi, il faut avoir des notions de théorie des ensembles. Il faut également connaître un peu de théorie des modèles (extensions élémentaires et méthode des diagrammes). Soient rot une extension élémentaire de IN et X un sous-ensemble de IN. Rappelons (5.12, chapitre 3) que X est définissable dans rot s'il existe une formule F de $ 0 à une variable libre et à paramètres dans rot telle que, pour tout n E IN, n EX si et seulement si rot 1= F[n). a) Montrer que, si rot est dénombrable, l'ensemble des sous-ensembles de IN définissables dans rot est dénombrable. b) Montrer que, pour tout sous-ensemble X de IN, il existe une extension élémentaire dénombrable rot de IN dans laquelle X est définissable. c) Montrer qu'il existe deux non isomorphes.
.Ja extensions
15.
paradoxal
a) Qu'y
a-t-il
de
élémentaires dénombrables de IN deux à
dans
l'affirmation
d'Epiménides
(voir
l'introduction) ? b) Dans un village des Carpates, vit un barbier qui rase tous les hommes qui ne se rasent pas eux-mêmes et seulement ceux-là. Que pouvez-vous dire de ce barbier?
Chapitre 7
Théorie des enseDJbles
112
ù but de la tiiJéarie des ~ aiie a difbaJtt drm ~ J»1f G. Cu.ttor, estt de permettre de ~ !tœltta a mattlluénruaftiÇlJIIf!! em l~BftBJ~iBl;mtt 2111lDememlt h ~ d·'appaztœ;mœ.
On erpœera dam œ clJJapïltre b uiOllllDl de 'Z.ermf'JD-~ ((ZF» :ID1!lS ffiœJnme d·'une théorie du premier ardre, ~ mJJ. ~ œ mtJIJljJIUJl1talt qœ demi .~ de predicat b~ l'ipliité et P~ A put JJ"~té qm a 1iU1l .r.We partiœlier]) lm ~ de ZF .i1llinrmemît llneDs!tœœ d"~ ~ W1I1f!l!!n'e l·'a.riamf de 11 paire œ œlm .della .Rfumiœ1l, œ ~tt par~~ d'JLuit!'es pe!fi'Efit paraitre m.où.œ m?litm'fÙ.. lJl fil11II1t mmprmdJœ qml'm DllJ1t jje .ifnrit d 1r.mD. ~ : m; !Ï!Jivœt, d''WJte part}! pete:meltftre de CDIJJStmire ltœ!1$ 1lœ ~ dœmt i1a pc~t;i.qœ :ma;thérna!JjÇi"le a~ er}l d''aJllitire ~" illE drJiwemtt pa ètre CŒllltTÜ~ wmme c·'mt le !:471$ ((et œ1a $''m1t ~ pmdmtt ~it) .sa. s ~ m111:t
mltrodmu am ~11.. L''Dlioime œ ~ œ, s
~tt ~bile u ~ ~ B mdemt qrill 1'1ll ~ Inl!Ô1I1le m1J1lttH1le œ Je JI1111'f!1!1~- A œ propœ, jjJ h'IIIIÏ ibn CfJi1'111pRJilldre qœ JJ"œn .~~ft, ·et ~ 'tD11Im!Me 11 re me dérimt pu 005; :aiiii1treS W~ iD la!Pllt biiem ile R~- Ps ~ iJ a des ~cm ,tom-ii-mit $il!IJ1ffJ1la111imrets et IDII✠~ ~Je ~ de
paiaitt
œ effJfelt
t~t
Bam.clft- Tum q:Illii .permert de ~ 1Jf
Ï001t4:'
iaçam}l ~
qlJile
Jllll1}e
.$Jp]~Iire :5
œ t1i1tau ~~~S.
Dit Jl''~ dam ~
Œil
1Jilemtt œJt
~
ill ibvmrt :swŒlr
~ ilm maitluémrnaitii~ P.~rt WJiil1'il11llll
0111l ferJJ, I1ll!a!~~
1..111
Œlb>.m .rJe œ
~
Je mmD
mlf!lelJ~ ·~ JE ~
r~j~11 o~~. iiJétiJ.irJ_fiH .Jml ~Lir»m, ;1re$
de5·
êJf'mEllJ;1,:, po;TJ~~t pret~ndre .;l }CJUf!f
.;ppJljll4litJi«J11I'l$ ;; œ
lt' mie
œ J.JR pl!ls.sdbdJiJ,te de ·~œe ·1, {, .'f1
CCJU;J'trm!{;";.'re
~1t
.il 1tntc1hiiff.re le5 1'Dtli:CJm
.file J.;,a ~ ··rB em~les .:
·Q)mJ
V1elTil
JllD11liflrerdi ~xrL
:détimâ:r
d'm.~.
et
}f» Joct.fml" pOLIIT:él Se
1t.00u.re :st.inmrWltJ1rre rlOO!It il JP1cmrrai1 a..lc..(J)ir
~.
l~F .~ ~les foomr.ami!L 'lJl11Jl .~ ~ rai·'~ ((][JiliE
La
J'œ .Tilrtil'ÏSe en
~~ .~rt
fl F a, œ p!I"tfflJJier li.fJJil, ile ~ de Zœ:rm.. Oiil il 'V1!1., iJ11ll ~tre .5, .dai BmrtlYen ~,l:errt ï!l"œ~ iil1tE$ ~~ ~rt pJJilS
WIIII!lpihiqr.ué"
Wli1Illiiii1le 1
:.: ttJ,
Jl'~ike «
mita ~ ŒI·~ œ
Jll1l1imrJlE J~le .:dB;
~-~La~1JfiiiiimmŒUll111Ae~11ie~1Jkesm~ ~ttœtt~
œ
.~ $IÏ
œ
~ 1"~
•
~ !fli·m~
~blle. L~1 ~re 51~ 'IJI!1Ixe ~ ~œ:: •
11DJIJ1llbre d''~!Œi
«il"fii1111l ~1f'.. .~ ·~D œ.lt
!Ifl . ~
.~ •
.wumJ
·~Je
Je ~ 11Ill»1l1CCl.d Ji'~ :(œ dlitt -c
1. les théories l et ZF
113
bijection. O!tte notion nous .réeve amsi mmbre
d~éJéments
des~
: un emenble peut avoir le même
qu tune de s.eJ parties pcopce5.
E.min. qrritta.nt les mathématiqrJeS classiques. on fen aussi une brève étude des
moŒ.bes: de la théorie des emenbla Là., l~ootil essentiel est la hiérarchie des Va;, qui just;ifieca l"introduction d'rm IJOflrel axiome. l'axiome de fondation. Il permet not.a.mment de répondre ~ativement à rme question lU1.tnrel1e (existe-t-il un eruemble a IE~apparlelwlt
.à lui-même ?) i laquelle les axiomes' de ZF seuls ne peuvent apporter de ~~ Cela aboutira à. quelques rémltats de ron.mtanœ relative~ par exemple : si ZF est rme théorie coosistan~ aloa ZF plus raxiome de fondation est aussi une théorie coosistante
1.
Noœ allons
LI ordre~
Le
L~
prêsm~
THEORIES Z ET ZF
la théorie del" ensembles comme une théorie du premier
~
rr·~anté ~~ q_u~mt
2 de œtte théorie ne comporte. en plus de t"habituet symbole de $Yffiboie de prédicat biiWre ~ appéé symbole de l' appartelwlœ. En
fait, oo domren les: uioiDeS de )iuSeun; théories des ensemble$. pl us ou moins fortes. Dam tom œ chapitre et :wd mention du mntraire.. ll désignera une modèle de ia théorie
ZF
«wnr ptm loin)
(avant
2.7~
dmgnera un mod-èle de œux
ce
point où sera introduit le dernier a.riome de ZF. ll
de ZF qui auront été j1Isque ià introduits). et sera appelé mri~ Lorsqu''on dira qu~une furmwe est, vraie., orr soœ-e~.tendn roujou.rs : « dam ll». On :re· he:rrte à tme diffiadté que ron a déjà rencontrée piusieun fois : ies mots <
Vensemblie de houe de .Usera lliOlté
~
les" textes' mathématiqlle$. Or. le but de œ chapitre en de forinafuer ces notions. et on
wit qœ ron aura besoin de deux niveaux de ~~ et de raimnnement : ~
d~une
part le
forrnafu!é .:f utifulé pour faire des ciémonmatiom qui. théoriquement du
moins~
poorraient être ~ dans le sem du chapitre -t ; et dr:antre part, ie métalangage qui liOn$
permettra de parler de .2. de$ interprétations des $YIIIboies: de 2 dans
~
des
théories: exprimées: dam .:f ou de leon IJJOdèles. Par exempie. la formule 1v0Vv1-.tV1 E vo
114
ChapÎtre 7. Théorie des ensembles
fait partie du langage formalisé
~ par contre~ lorsqu 'on parle de la longueur de cette
formule ou du fait qu'elle est démontrable dans ZF,, il s'agit du métalangage. En fait~ ces deux langages s'appliquent à deux univers différents : le premier à !1, le second à l 1univers familier aux mathématiciens, le méta-univers, qui comporte, entre autres, la notion d'entier,, de suite finie,, et même d'ensemble. Il est essentiel d 1éviter toute confusion. Pour cela, un certain nombre de mots et de symboles seront réservés à un usage
purement formel: ainsi, tout d 1abord. le symbole E qui désignera toujours la relation entre points de tt (on se permet tout de même la confusion entre E et œ que nous aurions. au chapitre 3, noté conséquence~
E~.
Un ensemble sera toujours un point de ft (en
on s"interdira de parler de rensemble 1t ). Lorsqu1on dira que x est un
élément de y. œla voudra toujours dire que x et y sont des ensembles (i.e. des points de
1t) et que 1U~xEy.
Mais cela ne
s~arréte
pas là. On veut aussi. en se servant de la théorie des ensembles.,
formaliser toutes les mathématiques. On sera amené à définir la. notion de relation, d'application, et même d 1entier naturel. Aussitôt que les définitions seront données, les mots correspondants seront réservés à Pusage formel. Il arrivera que l'on doive utiliser des objets du méta-univers. par exemple les entiers pour faire une récurrence sur la tongueur d'une formule de :t: dans œ cas, on emploiera Padjectif «intuitif» ou le préfu:e «méta» (entier intuitif. méta-relation, etc..). A t'exception de œux de la dernière section. tous les théorème énoncés dans ce chapitre sont des théorèmes de ZF, ou., lorsque c'est
précisé~
de ZFC (ZF pius raxïome
du choix). En œ sens. il s'agit d 1un exposé axiomatique de la théorie des ~lais.
bien
évidemment~
en...~mbles.
1
nous adopterons l attitude habituelle en mathématiques : notre
oouci sera de convaincre le lecteur de la véracité des théorèmes plutôt que d'en donner un démonstration formelle. Pour ne pas ajouter de complications au..x problèmes de langage. on se dispensera de distinguer. comme on i'a déjà signalé, le symbole E et son interprétation dansllou dans Les autres modèles que l'on aura à manipuler. On écrira x t y comme abréviation de la formule -« E y. On emploiera aussi librement tes abréYiations sui,·antes :
Vx E
F pour Vx(x E y==} F) et. 3x E y F pour 3x(x E y (x et y étant des symboles de variabies: et F une formule!. L2
y
A F)
Voici la liste des axiomes que l'on va énoncer et commenter: l'axiome
d'extensionnalité.
l~axiome
de la paire. l'axiome de la réunion. l'axiome
d~ parties~
les
axiomes de compréhension. les axiomes de remplacement. L'axiome du choix (AC) et l'axiome de l'infini (In!) seront présentés un peu plus tard. Les axiomes d'extensionnalité, de la paire, de la réunion. des parties. de
rompréhension et de l'infini constituent œ qu'on appelle habituellement la théorie der
1. les théories Z et ZF
~
de Zer:melo._ notée
dle5 parties. de
ren:DpliaœmenU
Zenœlo-~
ZF' penr:œt
m
115
z : les memes d'enensionnalité. de ia paire. de la réunion, et de Pinfini forment uœ théorie plus forte..
~a
théorie de
((oot:ée ZF}. A pan I'e:."'rtensimmalite. chacun des axiomes de Z ou de
na. ml!ll.rtrndioR d~un ensemble à
partir d'autres : t'a..riorne. d'extensionnalité
g.ucm1tË1t !"mricitré.
1001ten. respea.inme~tt
z·
et ZF- ies théories obtenues en mppriu.1ant
lir;mome de i"iliDfini de Z et d.e ZF'. Enfin ZF'C
est.
la. t001rie Zf plus t'a..-ciome du ch.oi.x.
• L'axiome d'erleusjonnaJité exprime que deux. ensembies
a~·ant
Ies mërnes
él~nts soo1l ~am:
: Vvo'Vv,(Yvi.v2 E vo
~ v2
E v1)
===)
vo ~v,).
So.nentt. a et b deux emenblies. On dit que • ~"t un: sous-ensemble de b. ou bien que a est. indus dans b. ou mœre que a est une part.ie de b. ~: wr_:.t ~i:én:t:"nt
éténment de b. A ti1tr6'11ent dit. si. dam: ll.., a et b satisfum : Yvrl._vo E a===) ve E b). Cettte fommle sen ab~ée par a Ç b ~ a Ç b est la formule a Ç b A • a ~ b. L''axiome d'ene-nsioonalité sera mŒ!fiè Eorsqu'on voudra ~nnr;::-'èr qt:e detL'{ ~mbEes
a et. b ront œau."< : on montrera que a Ç b et. que b Ç a.
• Axiome de la paire : YvoVv11v,VvJ{vl E v2 <::::==:) {YJ ~ vo V v1 ~ v1)). Et:aJmtt dol!lil!lés deux
é1ém6ltrs :somtt
~
emL~les
a et b. il existe
mi
en:5€IDMe dont !es re:uls
et b. D"a.près l'morne d'extensionnalité. il n'y en .a
qu~un
S6ll: on ie
oote { a.b }. et on. Pappelle la paire a.b.
ll est
~bile qœ
a soit
~à
b. Daru: œ cas. on
obtien~ ~ etL~mbie
qui n'a
qr.I"tm ~ énémeltt: on he note {a} au bru de { a.a} et on l'appelle~ a.
On rm:IIMqme qu~ :
t:t
que:
{ a.b} = { a'.b 1 } si et. seulernœt si! ta =a' {a}= {a~} si et seulement si a= a'.
et
b = b'1 ou 1 a =b' et b =a[r.
• Axiome de la réunion :
'fhfi1vw'tvi{v2 E Yt ~ 3YJ{v3 E Yo A Y2 E Y3)). En.am dormé un msemblle a. œt:. axwme affim:~te l'exts-&enœ d'l.ill en:.5emble dont Iles OOne!rits ml!lt
nes élémeltrs des éllêmmts de a. autrement dit qui est la réunion de tous
te emembk5 qui appartimnmt à a. Toojoun par extensionnalité. œt ensemble est
umnqœ : on le oote u x . 00 phu simplement •~a
u
a.
13 Voyons. avant d"alift plus loin. quelques c:on.séquenœs de œff trois axiomes. Soi.mtt a et b deux emenbk5. Griœ à l"axiome de la~ on peut fœmer reruenble
116
Chapitre 7. Théorie des ensembles
c = {a:,b }~ puis, avec avec rmome de la réunio~ U c. Cet ensemble est appelé la I6mion de a et b et est noté a u b. n vérifie : Vva(vo E a U b F=) (vo E a V v0 E b)). Considérons maintenant trois ensembles a,. b et c. On peut former les ensembles { a,b} et { c}, puis la réunion de œs deux derniers ensembles { a,b} u { c },, que Pon note { a,b~c }. On voit alors que: Vvo(vo E { a,b,c} (::::::::) {vo ~a V vo ~ b Vvo ~ c)) est vraie. On peut itérer le procesmJS et voir que, si n est un entier strictement positif (dans le sens intuitif) et si a1~ a2,---, a. sont des ensembles, alors il existe un ensemble, noté { a 1 ,al'l>··-~a•}, vérifiant, :
Vvo(vo E { aha2,···,an l ~ (vo ~ar V vo ~ a·2 V •.. Y vo ~a.)). On peut aussi former U {aha:b····a" }. que l'on note a, u a2 u ... Ua. et on a: Vvo(vo E a1 U a2 U ... U an: ~ (vo E at V vo E a2 V ..• V vo E a.)). 1.4
• AüJme dei partiel: Pa.xîome des parties affirme que, étant donné un ensemble
a, il existe un ensemble b. unique par ex.ten.sionnalité, noté ~a), dont les éléments sont exactement les parties de a. :
VviJv1Yv.J.v2 E YJi
(::::=:::}
'fv~(v3 E Vz ==::) Y:J E Vg,)} •
• Schéma. d'uiome de mmpl'ébmsif:n n S1agit cette fois, non pas d 1 UD axiome mais dJune infinité d'axiomes. Ce sont toutes les formules qui peuvmt s'écrire sous la forme: Vv1Vv2-··Vvu13v...2Vvo{vo E v...,~ (vo E v....1 A F(vo,v.,... ,v.])) où n est un mtier et F[vo,vh---~v.} est une formule de $. Ce schéma signifie donc que, étant donnés un ensemble a et une formule H[vo) à une variable libre et avec des paramètres dans ft~ il y a un ensemble~ unique par extensionnalité, dont les éléments sont précisément œux des éléments de a qui satisfont H. On notera {xE a ; H(x]} cet ensemble. On peut se demander pourquoi on s 1embarrasse de l'ensemble a: i1 semblerait plus f.acile et plus naturel de considérer le schéma d«axiome suivant: pour toute formule H[vol à une variable libre et à paramètres dans 1t ~ il existe un ensemble dont les éléments sont les ensembles vérifiant H : Vv1Vvz...Yv.~ ••lVva(vo Ev..., (:=:::::} F(vu,v1,... ,v.]} (n mtier~ F[va,v:b···~v.] formule de .2'). En fait 1 il y a une bonne raison pour ne pas admettre ce schéma : la théorie que Pon obtiendrait est contradictoire. En effet, avec la formule F = vo t va, on obtient :
Vv"'
lv1 vo E v1 {:::::::) vo t vo)ll existerait donc un ensemble a tel que, pour tout ensemble b, bE a{:::::::) b tb.
1. les théories Z et Zf
117
En particulier, pour b =
3~
œ obtient :
a Ea ~a ta" œ qui est :manifestement rontradictoire. Le lecteur ama évidemment remnnu ~~~t
~nal
cher anx lcWciens. La
contradiction apparente qu~il produit est connue 5lOOS le nom de pandmœ de ~ Cett
argmnmt peut être employé pour
montre~" qo~il n~exm.e
pas d'«emenble de t.oœ les
emenbles ». Exactement :
THEOREME: Si llest un modèle de z-, alan Ht= -,3!teYv1(v1 Ev,).
Suppœoos le oontraire : appelom a rmsemble tel que
el
Yveve E 3"
et appliqtlOD$ le schéma de mmpréheœion awc v1 =a et F = v1 un ememble b tel que
t. v•
On obtient encore
Yvt(ve E b oC==) ve t ve)" œ qui mêne encore à une contradiction, lonque "• prend ia valem b. el
On a dit que ron est
parioo
~ait
pomu de W'. POIIDI"ta;mit» ill mn mm;--ememilile m eD$
le mot « em;emhk » a;ux
oommode de pader de 1a collection
~c''est-â-ffire
JXJints de J( Arisfair.:.ant telle ou t.elie j)l'Opriété du p~ mdre. Oi1ll mifuera le mot «classe» pour désigner œs collJœtiom : ii F(v.) en lll~]mporte queill~ fOJrmrue de $à une variable libre,. avec ~ dam; ~, Olill pomra éwoqmer la ~ des emembles a Atmmant F{a]. Les daw5 ne SOJmt domc rim d''mtre que Ja c< mw;--emembiJes inlmti& >> rléfinissahile$ a-rec paramêt:re dam la n:rnotm"e .U { WOlii intuitif) des
00 pourrait. m prix d'l!m ~1t tml$!Ïdérah}e de l'exposé, ériter t'utifu;ation de ia notion de « ~ ». Pmnr miter e malennt.œdru. oo.
cln.aphre 3. 5.12))- En wt, mi~a
les ma~ Kri1J1t i( .- ~ Y etc.. j pom àé5Ji~ ce; ~- Sn f{v.j att uœ
fmmrule et  la~ de$ ~e rle
emembe
a
QrtDWlliAlllllt
.A, oo qœ .A cootiemt b :PCJW" ilire que b
mœî$tant à
identffi.~
mn msembJle a avec l1a
l'exœptiml de !"axiome d 1extemiomWité,. :présmt {er il œ ~ 501lll1
1.5 d~a.bOJrd,
Rn
e
f{.Jj,
Ol!D.
~1
~
mra qrru'mn ~Jle
b W1
F_ On fera i'albm de ~e
des ~la b ~1t à a. A
axiome qne
lllOIIll$
awom; éDoncés jœ;qn.u'à
de mème des axiome5 de rempùacennermt » expnlimemti
q111e ~
des emembJlts.
Voici maintenant qoellque coméquemœs des; .uitoJrJne Œ en prenant poor F ]a iommle -.ve ~ v.., oo obtiern1 :
~a
Tom
118
Chapitre 7 _Théorie des ensembles
Vv;Jv'l.Vvo(vo E v'l t===) (va E v, A --.. ~ vo)). Or~
quelque soit rememble
a~
il. n"y a pu «rememble a;ltlislfaiiun:tt la ionmme
{vo E a A -ovo ~ vo)- ll y a donc un ememble qui :œ po!E!Iàie ancun élément (pane que
l"univers n~est pas vide). Par e:xt.eœionnali~ il n"y ma qu"un eall~ qui œ dépmd donc pas de l"ense.mble 411. Cet ensemble est appelé rmwmhle Yide et il estt noté ,_ Soient maintenant deux eruenbles a et b. Le schéma de compréhemiion
F[vo,v1] =Vo E "• et en prenant 'V2=a» eruenble c tel que :
YJ
~avec
=b) penne1t de montœl' rexmttm.œ duum
VvJ..vo E c t==) (ve E a A vo E b)). Vunicité est~ comme d«habitude.. assurée par !"axiome d"exteœiomlaliité.. Cet emembne c,
dont les élémenu mnt donc exactement les eœ!lembles apparterumit à Da fois à a et à b" est appelé rintenection de ,a et. b et ooté a n b.
Soit a on ensemble non vide. AlcJn ü ex:i$1te um mùque ememblle b d'mit les; élémenu sont les ensembles qui appartiennent à tous les élémentts de a : Vvo(vo E b ~ Vv3(v1 E a ==) vo E vl}}Pour montrer l'existence d"un tel ememble {!"unicité déroule de IWeneœiomDalité))~ œ choisit un élément c de a (a n"estt pu vide) et oo ~ qœ lia formulle Vv3(v1 E a==) vo E v3) est équ.ùvallente à la fOJrmule vo E cA Vv3(v1 E a:==) va E v3). On applique alors le schéma de mmprébmsîon avec F = YvJ.v3 E v1 =:::) v8 E v1) ett en pll"eeiDallllit v2 =c et v, =a. On note r'l x, ou p1m mnplement Î\ a œit emembDe. Avec ces oota1ÙO.Im$~ oo J[f;i
voit que:
n
n
{a ,b} =a n b '
(1 {a 1,a'Zr····a 11 }
= a1 n a2 ... na •.
{a} =a
r
et pour tout entier intmtH n,
formule Vvz{v2 E @~ v1 Ev,) est vérifiée par tous les en..~bles (p~e \'2 E 0 n 1est jam.ai$ vraie), et oo a vu QiiÙl
n'existait pas d'ensembàe de tous ]es ensernhJes. Si a et b som des en..'lembles" on n~appartiennent
!IJIOte
.a - b l'eruemhle des éilémemts de .a qui
pas à b: a -b={xEa ;x tb}.
Si b e:st 1lllldus dam
a, a -
b est appPlé ile mrnpjémentaire de b dam .a.
On défimt, ~ Ja d:ifiémDœ symétrique de deiD: ensembles :
:a Ab= (a - b} u (b - a) .
1. Iles tllêories Z et ZF
119
REMARQUE: Les propriétés
d~a.B)CiarivitA
de COIDIIllltativité on de distributivité des
c:omJlŒitems A et Y montimt que les propriétés correspondantes sont vraies pour
n et u.
Puexemp.tie:
a: nb= b ni ; (t~ nb} n c =tl n (b n c} ; aUb=bUa; (aub}Uc=aU{bUc); a n {b u c) =(a n b} u (a n b} ; a u (b n c) ={a u b) n (a u b} . (Voir exerciœ 2 dn chapitre 2. )) 1.6 mift.Dte:
YveYv1•••Yv.(VweYw1Vw2((F(w-.w 1 1,v,r.Y~---~v•J A F(w."'2,.v1,v21 ..• ,v.]) ~ w 1 ~ w2) ~ :Jw...,Yv••l(v...z Ev••, C===) 3we(w, E vo A F[we.vu-:z,Yt.Y21 ••• ,v.l))) .
oo n œ
un entier et F(we,.,w1 ~v1 ~v:z, ... ~v•] une fonnule de $. Ces follllllles méritent quelques explications. Tout d'abord, donnons une
définition:
OEANITION: On dit quwune formule F[w.,w,~ 1 ~n,···,aa] de .Z .à deux variables libres et à paramètres dans ii est fonrtionnelle œ w0 daœ lL si la
formule suivante est vérifiée : YweVw1Yw2{(F(w•• 1 ~ 1 h---,a.] A F[w.,~hall;··-,a.]} ~ w1 ~ wl).
La plupart du teiilp$, on omettra de préciser «dans it fummie fonctionnelle en
».
Si F[w.,.w1]
est
une
w~or elle
:ooœ; appel.lerom fPF~ de~
1tdle que F[b,c], aion f11F
permet de définir une fonction partielle (intuitive). que dans it :si b est un ememble et s:~il n 1existe pas d"ensemble c
n~est
pas définie en b ; ~~il en. existe un, alors il en existe un
iSeiiÏ, et f!F(b) est pu définition œt ememble.
Le schéma de remplacement affirme donc que si F[wo,w1] est une formule
fooctiotmelle en w 0 (les variables v1 .,~ ... ,v. mnt à nmplaœr par des paramètres de te)~ et s:i a est un ememble,, aJon la cias!!e des~ par fPF des éléments de a est en fait un ~ On ootera {x ; lwe E a F[v.,x)} œt emembie. n n"est pu tl'è$ difficile de roir que le Khéma de œmplaœment implique le schéJ:na de COIIlpl'éhensioo.. Soient F[v.,a 1 ~:z, ••• ,a.] une formule de $à paramètres dans ft et b un mse.mbie. Montroo.1t à l~aide du sdléma de remplacement qu 1 il existe un emsenbiie c dont les éllémenu sont exactement les élément~ de b satisfaisant F[v~,,al;,---~·1- On COII$Ïdère
na formnle: ,a.J =wo ~ •• A. F[wo,~lr.a2,-·.,a.J.
H[w~tr:wha,.,a:z, ...
120
Chapitre 7. Théorie des ensembles
Cette fommle est éridetmwfilt fondionnelle en •• et l"eosemble des images des élé.ments de b par .,. est l"emenble cheKhé.. La autres uiOII'.IeS ne seront énon.Œs qu~un pen plu loin..
Couplœ, relations et applicatiOIJB 1.7
DEANITION 1 : Soimt a et b deux ensembles. Ltensemble
{{a},{ a,b}}
est appelé œuplea,b et est œté (a,b).
C"est l"uiome de la ~ appliqué trois fois, qui permet d"affirmer que (a,b) est un emenble.. Cette définition un pen compliquée trouve sa justification dans la proposition suivante (d'ailleurs~ toute antre définition conduisant à la même propriété
aurait aussi bien mnvenu) :
PROPOSITION: Soient a, b, a' et b' dm ensembles et supposons que (a,b) = (a',b'). Alors a =a~ et b = b'.
e
Par hypothè!re, on a : {{a },{a,b}} =
{{a'}~{ a',b'} }.
On distingue deux cas :
1'") a =b; alon { {a'},{ at,b'}} =(a,,b) = { {a}}, et par mnséquent: {a'~b'} E {{a}}. La remarque faite en 1. 2 après l'énoncé de l'axiome de la paire montre donc que
a =a' =b'. 2~)
a *b; alors {a 1 } *{a,b} (sinon, comme préœdemment, a =a' =b); donc {a'}={a} et a'=a (en utilisant toujoms la remarque 1.2). D'antre part {a,b}= {a',b'}etb=b'.
e Cette proposition justifie le nom de paire ordonnée que l'on emploie quelquefois à la plaœ de couple. Si (a,b) est un couple, alors, par définition, sa p:müèœ projŒûon (on dit quelquefois nMIIJMBUit.e ou monloonée) est a et sa semnde projection est b.
121
1. les théories Z et Zf
DEFINITION 2 : Soient a et b des ensembles. On appelle
1iD1D1De
disjJinte
de a et b l'ensemble
{ (~1); xE a} U {(y,{ 1}); y Nous noterons a D b la somme disjointe de a et b.
E
b }.
La somme disjointe est donc la réunion des deux ensembles { (x,l); xE a} et {(y,{ 8 }) ; y E b }. D fant mnsidérer, intuitivement, que œs msembles sont des copies de a et b respectivement. L'intérêt de œs oopies, c•est qu•elles sont nécessairement disjointes (c•est-à-dire que leur intersection est vide), œ qui n 1est pas toujours le cas pour a et b. NOTATION : On écrira 0 an lieu de t et 1 au lieu de { 1}. Ces notations seront justifiées par la suite.
1.8
PROPOSITION : Soient a et b deux ensembles. Alors il existe un ensemble
c tel que:
Autrement dît, étant donnés deux ensembles a et b, il existe un ensemble c dont les éléments sont les couples dont la première projection appartient à a et Ja seconde appartient à b. Cet ensemble est appelé le produit canésien de a et de b et est noté a x b.
e
n suffit de voir que
c={u E~~a U b)); 3vo3v1(voE a Av, E bAu~ {vo,v1 ))}. On utilise donc l'axiome de l'union. l'axiome des parties et un axiome de compréhension.
e Si a, b et c sont des ensembles, le tripJet (a,b,c) est, par définition, l'ensemble (a,(b,c)). Plus génŒa.Iement, si n est un entier intuitif striclmlent positif, on définit par récurrence la notion de n-uplet (ou n-Dple): si a1, a2 , ... , a. sont des ensembles, le n-uplet (a 1,a 21 ••• ,a.) est l'ensemble (a1,(a 21aJ, ... ,a.)) ; a1 est la première projection de œ n-uplet, a2 la deuxième etc. On voit comme ci-dessus que, si a,.., ~. ... , b. sont des ensembles, il existe un ensemble dont les éléments sont les n-uplets dont la première projection appartient à ~»,, la deuxième à ~ etc., et cet ensemble est noté
122
b., •
~x ___ x
b•. Si tom; la bi. pour i oompm entre 1 et n, :sont égtmx à b, on écrira b•
an lieu de b
x
b
x . .. •
b e1t on J)iilflena de poisanœ ·art.ésierme an tiœ de prodmt
carté:sien.
1.9
DEFINITIONS : 1") Soient .a un ememble et n m1 mtier (intwltif) stricremmlt positif; une .relation n-aire sur a est Dl! mœ- emenble de a•.
2") Si n est un entiert et R une relation n-aire :sur a et b un som ensemble de a, la restriction de R à b en nmsemble Rn b• ; oo mte œttœ restriction R fb~)
Une applit2tiœ est un eœemble dœd loos les éléments mnt des
couples et qui vérifie la formule :miv.mlte =
App{vo) = Yv1~Vv·J{((v1 ]v-z) E vo A (v1,v3) Eva) =:::::) v-z ~ vl)Si f est une application" aJon le tbnaine de délinitiaD àe f ( OIIJ, plœ simplement, le domaine de f). noté vérifiant la formule
dom(f)~
F{vo) = 3v1 (v.v1)
estt iwemembBe des eml?mbles
E f. L~~
emembles vériiiant la formule G[vo) = 3v1 (v1"v0 )
E
de f est l*ememble des
f. Une ~ de
dans b est une application dont He domaine mt a ett doo.tt
dans b. Elle mt .smjrdi ve de a sur b si" de pl~ Elle est injŒti?e Ei. pour tout b appéU1eDan.lt à unique élément a tel que ( a.b) E f.
$lO!I
œ mdWJE est ip1e à b. de f" il J' a W1l
1'~
~
r~
n fant une petille jmtificaition à la défimtion de domafume de défunitioo de f êt de rimage de f : il fant montrer que œ sont des menb!es;. Pu
exempl~
lie domrnafume de
définition de f esJt l ~ememblle :
{x E U U f ; 3v1 {x,v1)
E f}.
I:ruristom un peu : une application est donc m1 emenble de couples. En rewmmt;, on continuera dnempioyer le moit foodion dam; le :sem
intuitif~ ett
mn pomn
pader~
pu
exemple~
de fonction de runîvers ti dam; ti. On peut continuer à traduire dam le langage de la théorie des; emembles 11ooil:.e$ les; notions œnella conœrnan.t les appllicatiom. Omt :se ronitœiielra de dœmer lm définitiom; suivantes; :
• Si fest une application e1t si a appartient au domame de f" allon on oote f(a) runique ensemble b œ1 que {a"b)
E f.
On l"appelle l"imar;e de a pu f_
L les théories Z et Zf
123
• L1ensemble \ide est une application dont le domaine et l'image sont tous les deux égaux à l'ensemble \ide. Pour tout ensemble b. 1 est donc une application de 1 dans b. On parlera d'application vide. • Si fest une application de a dans b et si g l'application oompœée gof est l'ensemble:
{ u E a xc ; 3vo3v13v2(u C'est une application de a dans c.
~
~•
une application de b dans c, alor:s
(vo.v2) A (vo,v1) E fA (v1.v2) E g) }.
• Une bijection de a sur b est une application surjective de a sur b qui est aussi injective. Si fest une bijection de a sur b. l'application réciproque f-\ définie par : f-l = { (vo,.v 1) E b x a ; (v1,vo) E f} est une bijection de b sur a. • Si fest une application de a dans b et si c est une partie de a, on notera f( c) = {x E b : 3y E c f(y) ~ x } ;
f(c) est appelé l'~ directe de c par f (on se contentera de parler d'image de c par f à ne pas confondre avec l'image de f, qui est l'image de a par f). Lorsqu'aucune confusion n'est à craindre, on écrira f(c) au lieu de f(c). Dans les mêmes conditions, si d est une partie de b, on définit 1'~ inverae ou ~réciproque de
d par f :
J-1(d) ={xE a: f(x) E d} Ainsi, on peut associer à toute application de a dans b une application de ~a)
dans $(b) et une application de ~b) dans ~a).
• Soient a et b deux ensembles. L'exponentiation de a par b, notée
ab
(lire a
puissance b) est l'ensemble des applications de b dans a. Cette définition exige une justification : il faut montrer qu'il s'agit bien d'un ensemble. On utilise encore la compréhension : ab est l'ensemble des éléments de ~b
x
a) qui satisfont la formule Ffvo)
= Vv,(vl E b ~ 3!v2 (vhv2) E vo)-
• Soit 1 un ensemble; une famille
d'ensemble~
indexée par 1 est une application
de domaine 1. Cette notion, d'usage courant, n'est introduite que parce qu'elle conduit à un langage et à des not.ations plus commodes. Si a est une famille indexée par 1 et si i E 1, on écrit généralement ai au lieu de a(i) ; la famille a elle-même est notée (ai; i
mieux, (aï);~.r
E
1) ou,
124
V U]
• Soit a= (a:i)Kll une famnille d·1emembiœ; .ia ·léun:ioD de œltte famill~ notée ai ) est la :réunion des élérœnb de l'~ de a. Autrement dit : pour tout ememble b" b E ··~ ilï si et eliememt :si :il ·ex:ine 1 E 1 tel que b E ai· 1 t.
Si 1 :n·1est pas vide (œtte -restriction est es~~e~~ wir L5)" oo. définît de :même
l~intmn:tiœ de 1a famille (:ai}" J~ que roo note() ai: j tc~
1{.
JX>ur tom en..
0
a.l
:a1
si et ~t si~ pom ·tmrt i Et, bE :a 1•
• Soit encore a= {ai)-. 1me famille d"emmmble. Le )IIOibrlt de cette famille., .gœ tl.JJ Fon note
TJ ah est l'ensemble des apphcatioœ f de 1 dam V ·~1
1~f
pour tout. î E lb f(i) E ai. 1.10
aî qui sont telles qDen
On peut mainteruml émmcer l 1aiœœ dD diois:: le produit d'1nne famille
1
d ensemb1es non videi!l est non yjde ; antrement dit :
(AC)
Soit (ai)id UDe famille d' ~ et on ;mppœe ~ pom- toot i E 1,, .ai n 1œt
pas vide. Alors
1
'fT ai nftest pas vide.. Hl
Nous ne diiCUteroms pas 1a quœtion de savoir $i œt uiome est justifié ou non. Ce qui est $Ûr~ mais qui ne sera pas démontré dans œ ~ c~est qu~il ne peut pas se
dédnire de la théorie ZF" vas plu d~ailleors que sa mption (dn moins ii ZF est consistant) (voir 5 .8). Pax ailleurs il est :néœssaire pour montrer certains thoo:rèmes imj)Ortants de mathématiques (par eœmple: existmœ dwune base dans un espaœ vertoriel, théorème de Ralm-Bmadl (YOir <
MIR. éditions de
Mœcou)~
théorème de K:nill (roi-r chapitre 2.,
2. LES ORDINAUX ET LES ENTIERS
2..1
n introduire Da mtilon d';ordilmal : c"est un oottil importMt m théorie des eDI!BDbiie! et œ mat&rÂrulltiques; œ ~
1lmls cette IBtioo, oo.
~
Eli1le peut èlre aJIII9.cflérœ aJmJŒ une ~ de la motion dftemtier. On commenœ pu~
défimtioœ..
DEANtTION : Soient X 1m fDR'IIIble et R rme relation biiWre mr X. On dit qœ R est rme ~ d'onbe mc X (oo que X e1t anbmé pac R) si : • elie est fniD.flitire: si (x,y) ER et {y,z} E ~alea (x,z) ER ; • elie est mmi!llaï.re : pour tora x E ~ (x.,x) t R • 01m dit que R ClEt rme œla&ïrJ. d'ardœ IDtal (oo que X est tntalemmt
m:doaaé par R) ~ en ootre : • poor tlxi$ x,. y apparte~WJ.t
i X. si x et
y s-ont distincts. alocs
(x,y) E R ou (y~) E R. Un • ,,.... (,_.,_} caillœié est rm muple (X,R} où R est une relAtion d'occire (total} mc X.
la
mations: dwordre que mm COIISidêm-08! dans œ chapitre sont donc strictes,
(c''at. ~t Je contraire dans le reste de œ livre). Vantisymétrie (pour tous x et y appartœant à X, (x,y) t. R ou (y,x) t R) se déduit de ta transitivité et de E"antiréfiexi~ité:
si (~y} et (y,x) appartenaient tom !es deux à R~ alors. par transitivitér(x,x:) appartimdrait amllli à ~ œ qui est ÎlllpOI!tSÎbie par antiréflexivité.. On nti.liœra le ~ ha.bit.uel : si R est une reJaüon d~onire mr X et si x et. y HOO.t des points de ~ on etira qœ x es:t inê ian à y pour R pour dire que (x,y) E ~ et on écrira x < 1 y ; on ~ auDi les notations x > 1 y, x ~~ y et x ~~ y. On se permettra de ne pas mentiolmel" R lonqtùmame ambWDfé n•est po!ll!ible Si (X..R) et (Y.S) sont deux emembles Œdonnés, un i&umuqJiù&me de (X.,R) sur (Y ,5} est une application f bijective de X mr Y qui atis&it : pour tœs x, y dam X., x
Bémeat ""•ill•"* {ou pa. petit élemeld) de Y (pour R) est nn élément de Y qui est mférieur ou ~al à tœs les éJémmts de Y ; un Bémeat minimal est un élément qui nRest mpêrieur à anam élément de Y (il n'y a pu de difJélmœ entre cer deux notions si R est
126
Chapitre 7. Théorie des ensembles
un ordre total). On définit de façon analogue un élément maximum et un élément muimal. ll y a au plus un élément minimum {ou maximum) mais il peut y avoir plusieurs éléments minimaux (ou maximaux). Un minorant de Y est un élément de X qui est inférieur ou égal à tous les éléments de Y ; une borne inférimre de Y est un élément maximal de l'ensemble des minorants de Y. Lorsque Pordre est total, il y a au plus une borne inférieure. On définit de même un majorant de Y et une borne supérieure de Y . Supposons maintenant que X soit totalement ordonné par R. Un
~t
initial
de X est un sous-ensemble Y de X possédant la propriété suivante: si y E Y et x
Sx = {y E X ; y <1t x} est un segment initial propre de X. On remarque ;
(1)
Si Y est un segment initial de X et si x est un élément de X~ alors on a Sx Ç Y (si
t Y) ; en effet,
2.2
si xE Y~ il est clair que
s.. Ç Y
; sinon~ pour tout élément y de Y, on ne peut avoir x~ y (car cela implique xE Y)~ donc Y Ç s... (2) L'ensemble des segments initiaux de X est totalement ordonné par la relation Ç: en effet, si y et z sont deux segments initiaux de x~ et s'il existe un élément x de z tel que x t Y, on a, d'après (1) : Y ç Sx Ç Z, et donc Y Ç Z ; dans le cas contraire~ Z Ç Y. (3) L'ensemble des segments initiaux de X ainsi ordonné admet un plus petit élément (l'ensemble vide) et un plus grand élément (X lui-même).
xE Y) ou Y Ç Sx (si x
DEFINITION 1: Soient X un ensemble et Rune relation binaire sur X. On
dit que R est une relation. de bon onlre, ou que R est un bon onlre suc X, ou encore que X est bien onfonné par R si : r) R est une relation dfordre total sur X. Z ) tout sous-ensemble non vide de X admet un élément minimum.
(On peut remarquer que la première condition peut être remplacée par : R est une relation dwordre sur X; en effet, si x et y sont des éléments distincts de X, alors x~~ y ou y~~ x suivant que l'élément minimum de {x,y} est x ou y.) Comme exemple
intuitif de bon or~ il y a tous les ensembles finis totalement ordonnés et l'ensemble des entiers munis de la relation d'ordre habituelle. On va voir qu'il y en a beaucoup d'autres.
2. les ordinaux et les entiers
127
Soit X un ensemble bien ordonné par une relation R. On remarque d'abord que, si Y est un sous-ensemble de X, alors Rty est un bon ordre sur Y. Si X n'est pas vide, il
admet un élément minimum Xo (on dira un premier élément). Si X n'est pas égal à {Xo}. alors X - { :xo}, l'ensemble des éléments de X différents de xo, admet lui aussi un élément minimum, x1, le «deuxième élément » de X ; on peut continuer ainsi. Un autre propriété des ensembles bien ordonnés est la suivante :
PROPOSITION : Soient X un ensemble bien ordonné et Y un segment
initial de X. Alors soit Y= X, soit il existe un (unique) élément x de X tel que Y =Sx.
e
Supposons Y* X et considérons l'élément minimum de X - Yl que nous appellerons x. On montre que Y= Sx : si y E Y, alors y < x (sinon x ~ y et xE Y)! et donc y E Sx- Si z E Sx. alors z < x~ et~ parce que x est minimum dans X -Y, z E Y.
e DEFINITION 2 : Soit X un ensemble. On dit que X est transitif si tout élément de tout ensemble appartenant à X appartient à X (autrement dit, si la formule est satisfaite).
Un ensemble X est donc transitif si et seulement si tout ensemble appartenant à X est inclus dans X. Cette condition est encore équivalente à : U X Ç X.
Les ordinaux
2.3
DEFINITION : Soit a un ensemble. On dit que a est un ocdinal si les
propriétés suivantes sont satisfaites : 1·) a est transitif: T) la relation d'appartenance sur a est une relation de bon ordre
128
Chapitre 7. Théorie des; ~15
(c'est-à-dire que 1'ensemble { (x,y) E a ordre sur a.)
x
a ; x E y} est une relation deo bmiJ
Ces propriétés peuvent évidemment se traduire par des formules de: .:L 01ili notera On[v0) la formule de .:t exprimant que v0 est un ordinal. Si a et tf ::r
{J).
REMARQUE 1 : Si a est un ordinal, alors a
f: a, parce que l'appartenance, nm lei
éléments de a est une relation d'ordre (strict) : si on suppose que a appartient à;, tJt,.
est transitif : si 1 E {J et {jE 7, alors {J , 1 , li sont des éléments de a (parce. que transitif), et, par transitivité de la relation E sur a, {jE {J.
ct; fit:
REMARQUE 3 : Si a est un ordinal et si {JE a, alors {J = S~ : c'est une conséqmmœ de. l'axiome d'extensionnalité, puisqu'il est équivalent de dire que xE {J ou que xE S11REMARQUE 4 : Soient a et {J deux ordinaux. Alors a Ç {J si et seulement si a~ fi.. En
effet, si a est inclus dans {J, alors, parce que a est transitif, a est un segment imtw de: ,1. Donc, soit a= {J, soit il existe 7 E {J tel que a= S"Y {proposition 2. 2), et (rema;nq'lle l); a= 7, donc a< {J. Réciproquement, si a~ {J (c'est-à-dire a E {J ou a= {J), et !li 7'E a,. alors par transitivité de {J, 1 E {J; cela montre que a Ç {J.
PROPOSITION : Soit X un ensemble transitif d'ordinaux tel que, pour éléments x et y de X, xE y ou y Ex; alors X est un ordinal.
t'arŒ
(On verra un peu plus loin (corollaire 2. 5) que la condition «x E y orr J' e: x::,:. est superflue parce qu'elle est toujours satisfaite). ~
Il suffit de vérifier la seconde condition de la définition 2. 3. Si a E X,, aloEt at a (remarque 1). Si a, {Jet 1 sont des éléments de X et si a E {Jet {JE 7, alors la ~
129
l. tes œdinaux et les entiers
de 7 impilique que a E 'Y· L'appartenance définit bien une relation d'ordre sur X, et cet cilrilhte 'eSt ·:tonal par hypothèse. Mmntrons qu'il s'agit d'un bon ordre: soit Y un sous-ensemble non vide de X, et m1 wa woir que Y admet un élément minimum (pour E) ; soit a E Y : -si an Y= 0, alors a est l'élément minimum de Y: si fJ E Y, il est faux que IlE a{paace que an Y= 0) et donc a E fJ; -si an Y =1= 0, alors, parce que a est un ordinal, an Y admet un élément :miœfunnm fJ; si 1 E {J, alors 1 E a (a est un ordinal) et 1 ~ an Y ({J est minimum dans œt ensemble). Par conséquent, 1 ~Y, et donc, aucun élément de Y ne peut être inférieur
à {J. Puisque l'ordre est total, cela implique que fJ est l'élément minimum de Y. (;D
COROLLAIRE 1 : Si a est un ordinal et si fJ est un segment initial de a, :ailurs {J est un ordinal ; si, de plus, fJ est un segment initial propre de a, ~n{JE a.
(;ll La première partie découle de la proposition ci-dessus : fJ est transitif parce que c'est un .BagiD.ent initial de a, et fJ est totalement ordonné parE parce que a l'est. Supposons de plus que fJ ne soit pas égal à a; par la proposition 2. 2, il existe
1 E a tel que {J = S'l, et par la remarque 3, 1 = S'l. (;D
L'ensemble vide est manifestement un ordinal. C'est même le plus petit de tous les :ordinam : si a est un ordinal non vide, alors 0 E a: en effet a contient un élément I:l!lÎ!D:ÏJI:mm!l, que l'on appellera {J. Tous les éléments de fJ appartiennent aussi ql!le a $
à a (parce
transitif), et sont strictement inférieurs à {J, ce qui est incompatible avec la
de fJ : fJ = 0. L'ensemble { 0 } est aussi un ordinal, comme cela se vérifie facilement sur la .~.Les ensembles suivants sont aussi des ordinaux: :tilliÎ:miiÎmBlité
{0,{0}} ; {0,{0},{0,{0}} }.
Pm généralement : COROLLAIRE 2 : Si a est un ordinal alors fJ =au {a} est aussi un ordinal.
el
On utilise encore la proposition ci-dessus. Montrons d'abord que
fJ est un
eiilB.el'llllble transitif: si 1 E {J, et 6 E 1 alors : soit 1 E a, et 6 E a parce que a est transitif;
130
Chapitre 7. Théorie des ensembles
soit 7 = a et évidemment 1 E a. Par ailleurs si x et y sont deux éléments distincts de /l. alors : soit ils appartiennent tous les deux à a et on a bien x E y ou y E x parce que a est un ordinal ; soit l'un des deux est égal à a et l'autre appartient à a et on obtient la même conclusion.
e L'ordinal aU {a} sera noté a• et sera appelé le successeur de a. On dit qu'un ordinal est limite s'il n'est pas égal à 1 et s'il n'est pas le successeur d'un autre ordinal. 2.4 On en vient maintenant à un théorème un peu plus difficile, et dont les corollaires seront extrêmement importants. On va utiliser, sans le dire. les démonstrations et les définitions par induction. On fera une analyse plus précise et plus systématique de celles-ci à la section suivante.
THEOREME: Soient X et Y deux ensembles bien ordonnés par les relations
R et S respectivement. Alon au moins un des deux cas suivants se produit : a) il existe un et un seul segment initial Y1 de Y et un et un seul isomorpmsmef de {X,R) sur {YhSty ) ; 1
b) il existe un et un seul segment initial X1 de X et un et un seul isomorphisme g de (Y~S) sur (X1 ~Rtx ).
1
De plus, si a) et b) ont lieu simultanément, alors X1 =X, Y1 =Y et
les applications f et g sont inverses l'une de J'autre.
e
Dans cette preuve, on va considérer des segments initiaux de X et de Y. On les
considérera toujours comme des ensembles ordonnés par la restriction de R ou de S. Lorsqu'on parlera d'isomorphisme entre de tels ensembles, il s'agira toujours d'isomorphisme d'ensembles ordonnés. On montre d'abord l'unicité. Supposons par exemple que Y1 et Y2 soient deux segments initiaux de Y et que f 1 et f 2 soient des isomorphismes de X sur Y1 et Y2~ respectivement. Considérons l'ensemble: Z ={xE X; f 1(x) =1=fl(x) }. On va montrer que Z est vide. Raisonnons par l'absurde: si Z n'est pas vide, il existe un élément minimum Xo (pour R) dans Z. Supposons par exemple que f 1(Xo)
f2{x1) = fl(Xo)
2. ILes ordinaux et les entiers
131
L'unicité en b) se démontre de la même façon. Supposons maintenant que a) et lD'i) 'ffiient lieu simultanément. On voit facilement que g(Y 1) est un segment initial de X, et ·d:rmc gof est un isomorphisme de X dans un de ses segments initiaux. Or, l'application
identique sur X est aussi un isomorphisme de X sur un de ses segments initiaux (à savoir X lui-même), et en appliquant l'unicité déjà démontrée, on voit que gof est égale à J'application identique sur X. Comme fest injective, on en déduit que f et g sont inverses tl'l·Ime de l'autre.
ffi
Il reste à montrer l'existence. Considérons les ensembles : A= { (x,y) EX x Y ; il existe un isomorphisme de Sx sur Sy} .A*= { (y,x) E Y x X ; il existe un isomorphisme de Sx sur Sy} Supposons que (x,y) et (x,z) appartiennent tous les deux à A ; il existe donc deux
frsmn:ID:rphismes de Sx sur Sy et Sz respectivement, qui sont des segments initiaux de Y. :(}m
vient de voir que cela implique : Sy = Sz, donc y = z. Autrement dit, A est une dont le domaine, que nous appellerons A1, est inclus dans X et dont l'image,
,~cation
appellerons A2 est incluse dans Y. On montre de même que A* est une
-1jJI!le noUB
~.lication, ~e
et comme (x,y) E A si et seulement si (y,x) E A*, on en conclut que le de A* est A2 , que son image est Ah et que A et A* sont des applications
~es
l'une de l'autre. Ce sont donc toutes les deux des bijections.
llJne petite remarque: supposons que h soit un isomorphisme d'un ensemble ~emen:t
ordonné U sur un ensemble totalement ordonné V. Il est alors très facile de
Miffii.er que, pour tout u E U, l'image par h de l'ensemble { t E U , t < u } est égale à [~EV:; v< h(u)}; autrement dit n(Su) = Sh. Ceci montre que A1 est un segment initial de X : si x E A1 et z
On voit aussi que A, non content d'être bijectif, est un isomorphisme: supposons affet .que (x,y) et (z,t) appartiennent à A et que z
~me
f de Sx sur Sy, et ft 5z est un isomorphisme de Sz sur un segment initial de Y •-qtri, par l'unicité déjà prouvée, ne peut être que St: donc t
.'Si A1 =X, la conclusion du théorème est vraie parce que a) est vrai ; si A2 =Y, 1l1k!:m> c'·est b) qui est vrai. Montrons par l'absurde qu'il n'est pas possible que A1 =t:- X et ~*y : par la proposition 2. 2, il existerait x E X et y E Y tels que A1 = Sx et A2 = Sy. MJüE &ors, A est un isomorphisme de Sx sur Sy, ce qui prouve que (x,y) E A et que x E A,1 = Sx, ce qui est absurde. r;}l
132
Chapitre 7. Théorie des ensembles
2.5 On va appliquer œ théorème au cas des ordinaux. On a déjà remarqué qu'un segment initial d'un ordinal est un ordinal (voir corollaire 1, 2.3). D'autre part:
PROPOSITION : Soient a et {J des ordinaux et f un isomorphisme de a sur {J. Alors a= Il et f œt l'identité sur a..
e
Considérons l'ensemble:
X= {xE a; f{x) *x}. Si œt ensemble n'est pas vide, il admet un plus petit élément, Xo- Examinons f(xo): si
y E xo, alors y E a (a est transitif) et f(y) E f(xo) (fest un isomorphisme) ; par minimalité de xo, y =f(y). On en déduit: :xo Ç f(:xo)Réciproquement, si y E f{:xo), alors y E fJ ({J est transitif) et il existe z E a tel que y =f{z) (fest surjective sur {JJ. Puisque fest un isomorphisme, z E xo, et par minimalité
de xo, z =f{z) =y. Donc f(xo) ~ :xo et, par extensionnalité, XQ=f(xo). Nous avons obtenu
une contradiction, donc X est vide et la proposition est démontrée.
e COROLLAIRE : Soient a et fJ des ordinaux. AJon une et une seule des trois
éventualités suivantes se produit:
r)aE/l; 2")/JEa; :r) a={J.
e
n n'est pas possible que deux de ces éventualités se produisent en même temps:
œ1a découle facilement de la remarque 1 de 2. 3 et du fait que les ordinaux sont des ensembles transitifs.
On applique le théorème 2 .4 ; supposons, par exemple qu'il existe un isomorphisme f de a sur un segment initial S de fl. Si œ segment initial est propre, alors,
d'après le corollaire 1 de 2.3, S est lui-même un ordinal et appartient à fJ.. D'après la proposition 2. 5, S = o, et donc a E fJ. Sinon, f est un isomorphisme de a sur {J, et on applique directement la proposition 2.5 pour obtenir a= fJ. On fait un raisonnement analogue s'il existe un isomorphisme de {J sur un segment initial de a..
e REMARQUE : La proposition 2.3 devient : tout ensemble transitif d'ordinaux est un ordinaL
2. les ordinaux et les entiers
133
2.6 On mnsidère maintenant la classe des ordinaux (c'est-à-dire la classe des emembles satisfaisant la formule On(v8)). On s'apprête à montrer que cette classe n'est pas on eruenble. Cependant.JKapparteoanœ sur cette classe possède les propriétés d'une relation de bon ordre :
• (transitivité) : Si o, fJ et 7 sont des ordinaux et a (parœ que 7 est un eruenble transitif} ;
E
fJ et IlE 7, alors a E 7
• (anfuéflexivité): si a est un ordinal, alors at a (remarque 1 de 2.3); • (totalité) : si a et
fJ sont des ordinaux alors a E {J ou fJ E a ou a= fJ (corollaire
2.5); • Soit F[ve) une fommle avec paramètres dans 1t, et supposons qu'il existe des ordinaux satisfaisant F[ve). Alors, il y en a un plus petit; plus précisément: il existe un
ordinal a tel que F(oJ soit vrai, et pour tout ordinal fJ., F(M implique a E fJ ou a= fJ.
Pour montrer ~ on considère un ordinal 7 satisfaisant F[7) (il en existe, par hypothèse). Alors l'ensemble : {{JE,.: FIA} n'est pas vide, puïsqu•il contient 7, et possède donc un élément minima) puisque un ordinal Cet élément minima) est l'ordinal cheFché.
rest
On dira que l'appartenance, sur la classe des ordinaux, est une méta-relation de bon ordre.
PROPOSITION 1: La cla.sse des ordinaux n'ett pas un ensemble..
e Supposons le contraire, et appelons X l'ensemble de tous les ordinaux ; si a E X et fJ E a, alors {JE X (remarque 2 de 2. 3). Ceci et la remarque 2 .5 nous permet d 1appliquer la proposition 2.3: X est un ordinal, donc XE X, œ qui œntredit la remarque 1 de 2.3. e PROPOSITION 2 : Si A est un ensemble d'ordimwx, alors P=Ua CMA
est un ocdinal.
en est à peu près immédiat de vérifier que toute réunion d ensembles transitifs 1
est un ensemble transitif; donc
d'appliquer la remarque 2.5.
e
fJ est un ensemble transitif d'ordinaux; il suffit enœre
134
Chapitre 7. Théorie des emœmnlhile
Considérons un ensemble A d'ordinaux et posons {J = U a. Supposons. q1m: tt:
On voit donc que {J est la borne supérieure de A. On notera {J = U a =sup /4•. at: A
PROPOSITION 3 : Soit X un ensemble bien ordonné par une relation IR;, alors, il existe un et un seul ordinal a isomorphe à (X,R). De plus, il n't' él qu'un seul isomorphisme de a sur (X,R).
e;;J
Les unicités ont déjà été prouvées au théorème 2 .4. On raisonne par
~nwltr!mm:Œ.
En appliquant le théorème 2. 4, on voit que chaque ordinal a est isomorphe à un
s~
initial de X. Considérons l'ensemble : T = {xE ~(X) ; x est un segment initial de X et x est isomorphe à un ordïn.all}, et la formule:
F[v0 ,v 1] = vo ET
1\
On[v1]
1\ il existe un isomorphisme de
vo dans v1.
Cette formule est fonctionnelle en v0 (définition 1. 6) (c'est encont ~ conséquence du théorème 2 .4). Le schéma de remplacement permet donc d'affirmer~ l'ensemble 0 = {a; 3v0 ET F[v 0 ,a]} existe. Or, par hypothèse, pour tout ord.inaill a,., iill existe un isomorphisme de a sur un segment initial de X, et on
3v0 (v0 ET
1\
a_
F[v 0 ,a]). Autrement dit, 0 est l'ensemble de tous les ordinaux, ce qurii elGt
impossible d'après la proposition 1. ~
REMARQUE: Soient a un ordinal et X un sous-ensemble de a. ; on a vu que X est, 1b.œm ordonné par E. Par conséquent, il existe un ordinal {Jet un isomorphisme f de tl mm: X Montrons que {J
~
a. Ceci découlera du lemme suivant :
LEMME : Soit f une application strictement croissante d'un ordinal {J damr
un ordinal a; alors, pour tout ordinal1 E {J, f( 1) ~ 'Y·
e;;J
< 7~· Pomr < f(1) (parce que fest strictement croissa.rttte')J;,
On raisonne par l'absurde: soit 1le plus petit ordinal tel que f( 1)
tout 6E 1, 6 ~ f(b), et, d'autre part, f(b)
donc 6 E f( 1). Il en résulte donc que 1 Ç f( 1), et avec la remarque 4 de 2 .3, 1 ~ f{-r)•
CJ
2. Ile; l.au:dina ux et les entiers
135
On introduit maintenant le dernier axiome de ZF, l'axiome de l'infini :
!!.71
DEHNITION : Soit a un ordinal. On dit que a est fini si, ni lui-même, ni lliucun de ses éléments, n'est un ordinal limite. Un ordinal infini est un CJTdinal qui n'est pas fini.
On remarque que si a est un ordinal fini et {J E a, alors {J est aussi un ordinal ffiimiD ..Par :exemple, 0, { 0 }, { 0, { 0}} sont des ordinaux finis. Plus généralement, si a est 'ml iiDrilinal fini, alors a• est aussi un ordinal fini. En fait, l'existence d'un ordinal infini .:nr~te l'introduction d'un nouvel axiome, naturellement appelé axiome de l'infini :
ŒW:)
il existe un ordinal infini.
1Ill il.gmvant clairement à : « il existe un ordinal limite » qui est la formule :
3vo(On(vo) A -wo ~ 0 AVv1 -wo ~ v1 U{ v1}) O!l.Imio:rmément à ce que nous avons dit en 1.1, on suppose à partir de maintenant que
œ
'ruciome est vérifié dans 11 . On verra à la dernière section que cet axiome ne peut pas se déduire des
~ents.
'fii
: On note w le plus petit des ordinaux infinis.
Bn tel ordinal existe, parce que la classe des ordinaux est une classe bien
donnée (voir 2 .6). Remarquons que west aussi l'ensemble des ordinaux finis : si a est m1 ordinal fini, alors aucun ordinal inférieur à a n'est infini et donc, a E w. :Réciproquement, si a E w, alors, par minimalité de w, a est fini.
Opérations sur les ordinaux 2.8
On va maintenant définir quelques opérations sur les ordres et les ordinaux. • Soient a= (a,R)
et b = (b,S) deux ensembles ordonnés. On va définir un
nouvel ensemble ordonné, que l'on appellera la somme directe de a et b et que l'on notera
a ID b. L'ensemble de base de a œb est a 0 b (la somme disjointe de a et b) (voir 1. 7, cl8finition 2). Posons c =a 0 b. On définit sur cet ensemble la relation binaire T par : Pour tous (xo,Yo) et (x 1,y 1) dans c, ((xo,Yo),(xl,Yl)) ET si et seulement :
Yo = 0 et Y1 = 1 ;
136
Chapitre 7. Théorie des ensembles
Yo = Y1 = 0 et Xe
on on
Intuitivement, l"ensemble a 0 b est constitué dwun œpie de a et reJaüon que l"on vient de définir~ les éléments de ia copie de
d~une
,il
copie de b. Dam; la
sont ordonnés entre eux
comme ils le sont dans • et précèdent les éléments de la œpie de ordonnés entre eux comme ils le sont dans b.
b~
qui, eux, sont
ll fant vérifier que la relation Test une relation d'ordre. VOJOD$ .la transitivité. Soient (x.,yo), (x1,y1) et (xby~ troî:s éléments de c, et on snppœe que ((x.,y0),(x1,y1 )) ett {(x.,y.),{x2,J2)} appartiennent tous les deux à T. ll y a plu:sienr:s cu poaîbles :
• Y2 =O. Alors la définition de T implique que Yo = Y1 = 0, Xo
11m
bon ordre. e1t par la propœiitioo 3
de 2. 6, il est isomorphe à un runique ordinal D"où la dmmtion :
DEFINITION : Soient tr et fJ des ordimmx.. Alom l"mBiqllle ordinal wmorphe
à a • fi est appelé mmme onliiWe de a et (J ett noté tr + fJ.
2.9
• Passoœ maintenant m produit. SoUmit enrore
ensembles ordonnés. On définit la relattioo. T :sm c =a
x
•= (a,R) ct
b = (b,S) rlemlx
b par :
pom tou (:xo,yo). (x1.y1) appalrtteDDalmt à c, ((:xo,yo).(x1.Y1)} E T $ll ell
eœment :si n"mne des dœx amditiOD$ smwmil:e!!l m Xo
w&ffiée : a)) Yo
soient {:xo,y0). (x1.y1} ett (xbY2) ttnü élléJnrMmu de c. ett on :suuppœe q1111e ((XDr,Yo).(x••y.)) eu ((x1 ~y1 }~(x2-Y2)) appartiennmtt 1tom Aes; demx à T. D déamlle de œ!a qœ Yo ~ Y1 ~ Y7: Ill
137
2. les ordinaux et les entiers
a donc deux possibilités : ou bien Yo
a•
DEFINITION : Soient a et fJ deux ordinaux. Alom l'unique ordinal isomorphe à a • fJ est appelé produit onlinal de a et fJ et noté a x fi.
2.10
THEOREME : Soient a. fJ et 1 de; ordimwx. Alom:
i) ii)
a+ (li+ 7) = (a+ Il) + 1; a x (li x 7} = (a x Il) x 1 ;
ill)
vi)
a x (li + 7) = (a x Il) + (a x 7}; a+ 0 =a= 0 + a; axO=Oxa=l; axl=lxa=a;
vii)
a+ = a
viii)
si a et li sont finis, il en e;t de même de a+ fJ et de
ix)
si a+= Il\ alom a= {J;
iv) ~
a
x
+1;
fJ;
x) si a et fl sont de; ordinaux finis, alors a< li si et seulement si il existe un ordinal7 non nul tel que a+ 1= {J.
e
Les démonstrations dei), ii) et iii) reposent sur le même principe. Par exemple, pour i). on démontre que si a=(a,R). b=(b,S) et c=(c.T) sont trois ensembles ordonnés, alors a • (b • c) est isomorphe à (a • b) • c. Voici l'isomorphisme f de a• (b • c) sur (a• b} • c: si xE a 0 (b 0 c), alors : • soit x= (y,O) avec y E a ; dans œ cas, on pose : f(x) = ((y,O),O) ; • soit x= ((y,O),l), avec y E b ; on pose alors : f(x) = ({y,l),O) ; • soit x= ((y,l),l), avec y E c; alors: f(x) = (y,l).
138
Chapitre 7. Théorie des:ensemiUe
Pour ii), on montre, avec a, b et c comme ci-dessus, que a~ (b ~ c} emt isomorphe à (a~ b) ~ c. L'isomorphisme fest défini par : pour tous x E a, y E b et z E c, f((x,(y,z))) = ((x,y),z). Pour iii), il faut définir un isomorphisme f de a~
(b œc) sur
(a~
b) œ (a~ c}.
LŒ
voici: • si x= (y,(z,O)), avec y E a et z E b, alors f(x) = ((y,z),O) ; • si x= (y,(z,l)), avec y E a et z E c, alors f(x) = ((y,z),l). Les égalités iv) et v) sont à peu près évidentes; vi) se déduit de l'isomorphis:me; f de a sur a~ 1 défini par : pour tout {JE a, f({J) = ({J,O). L'application f définie com.rrllf suit est un isomorphisme de a+ sur a œ{ 0} : • si {JE a, f({J) = ({J,O) ,
• f(a)
= (0,1),
ce qui prouve vii).
viii) Supposons maintenant que a et {J sont des ordinaux finis, et
supposons~
m
raisonnant par l'absurde, que a+ {J est infini. Considérons alors l'ensemble :
A = {x E w ; a
+ x est infini }.
Cet ensemble, n'étant pas vide ({J en est un élément), possède un élément minimum quenous appellerons x0 . On voit que x0 + 0 (parce que a+ 0 =a et que a est fini) ; coiT.11'J:lE: x0 est fini, il n'est pas limite, et il existe donc un ordinal Yo tel que y~= Yo Alors a+ x0 = (a+ y0 )
+ 1 = (a+ YoY (par i) et
+1=
vii)), a+ Yo est fini (parce que xo
l'élément minimum de A), et on a vu (voir le commentaire suivant la définition 2.7) le successeur d'un ordinal fini est fini, donc a
+ x0 est aussi fini
X(l.
P.~t q1IE'
: contradiction.
La somme de deux ordinaux finis est donc un ordinal fini. Raisonnons encore par l'absurde pour prouver que le produit de deux ordinaux finis est fini : supposons qu~ l'ensemble: B = {x E w ; a
x
x est infini }
ne soit pas vide, et considérons-en l'élément minimum x0 . Par v), on voit que x0 n'P.st pas l'ensemble vide, et il existe donc un ordinal y0 tel que x0 voit que a
x
x0 =(a
x
y0 )
+ a.
Or, a
x
= Yo + 1. Par iii) et
vT 1 on
y0 est fini, parce que xo est minimum dans B er. œ.
est fini par hypothèse, et on vient de voir qu'il en découle que (a
x
yo)
+a
est fin± :
contradiction.
ix) Il est à peu près clair que a est l'élément maximum de a+ (et {J est l'élémr.nr. maximum de p+. Donc, si a+= p+ alors a= {J. x) Il est clair que si 'Y est un ordinal non nul, a+ 'Y~ a+ 1 = a+ > a. Cela. montre le sens «si». Pour l'autre sens, on raisonne par l'absurde: soit {J le plus petit ordinal fini tel que : {J
> a et il n'existe pas d'ordinaux 'Y tel que a+ 'Y = {J. P'uisqne
{J > a, {J n'est pas nul, et puisqu'il est fini, il existe un ordinal li tel que {J =li+ 1. On va distinguer deux cas :
2. les ordinaux et les entiers
P= 6 +
139
- 6 > a : par minimalité de fl. il existe un ordinal 7' tel 6 = a+ 7 1 ; d'après i), 1 =a+ (7' + 1): impossible. - sinon. on voit sans peine que 6 = a. et donc P= a + 1 : c'est encore impossible.
REMARQUES : 1) Pour les propriétés i)-vi), on a seulement utilisé le fait que a et fJ étaient des ensembles ordonnés. 2) Il est facile de voir que la somme et le produit ordinal ne sont pas commutatifs : par exemple 1 + w = w < w + 1 et 2 x w = w < w x 2. Cet exemple montre aussi qu'il faut faire attention au sens de la distributivité dans iii) : on a 2 x w= ( 1 + 1)
x
w =1= w + w. On peut voir aussi que la propriété x) est vraie pour tous les
ordinaux. 3) On abandonne à partir de maintenant la notation a• pour la remplacer par
a+ 1, comme nous y autorise viii).
Le; entiers
2.11 On en sait assez maintenant pour construire les nombres entiers. Considérons Pensemble ~ et définissons: l 1application S de w dans w qui à nEw fait correspondre n + l; l'application+ de w x wdans ~qui à (n,p) fait correspondre n + p (on appellera addition cette application) : enfin l'application
x
de w xw dans qui à {n,p) fait
correspondre n x p (on appellera multiplication cette application). La structure ainsi définie jouit des propriétés suivantes : a) l'élément 0 est un élément neutre pour
}~addition
(théorème 2 .10,
iv))~
et 1
est un élément neutre pour la multiplication {théorème 2 .10, vi)) ; b) si n E w et si n n'est pas égal à o. alors il existe un unique élément p de w tel que n = S(p \ : cela découle immédiatement de la définition des ordinaux finis et du t,héorème 2 .10~ ixJ: c) il n'existe pas d'élément p E w tel que O=S{p} {découle immédiatement des définitions): d) Jladdition et la multiplication sont associatives (théorème 2.10, i) et ii)); e) l'addition est distributive par rapport à la multiplication (théorème 2.10, üi));
f) D'après x) du théorème 2 .10, on voit que pour tous n, p appartenant à w., n < p si et seulement si il existe un ordinal fini non vide q tel que n + q = p.
On notera Il la structure
< w, 0, S, +,x> et les éléments de w seront appelés
des entiers. Cette dénomination est justifiée par les propriétés a)-f) et le fait que tout
140
Chapitre 7. Théorie d'es:ensemille
ensemble non vide d'ordinaux (a fortiori d'entiers) admet un élément mirrimu.m: IDn n'utilise pas autre chose pour montrer tous les théorèmes d'arithmétique. Par ~ le lecteur pourra montrer que l'addition et la multiplication sont des opéFaxiflrus: commutatives ; il pourra s'inspirer de la preuve se trouvant au chapitre 6. A partir de maintenant, le mot «entier» signifiera donc «élément de w.>'». On a déjà convenu d'écrire 0 au lieu de 0, 1 au lieu de { 0 }, et cette convention eat jlmti!fi:ée par le théorème 2 .10. Il faudra bien distinguer les entiers, (les éléments de w)' de re que nous appelons les entiers intuitifs, dont nous nous sommes déjà servis plusiem'.s miff.. E:rn. règle générale, c'est quand on parlera du langage (par exemple pour la longueur d'une formule ou le nombre de ses variables libres) que l'on aura besoin de ces entiers intuitifs. On peut aussi remarquer que, si on se place dans un méta-univers;, on: pm1t associer à tout entier intuitif un élément de w en itérant la construction 0 = 0, 1 = {0 }, 2 = { 0, 1 }, etc. Mais il peut très bien y avoir d'autres éléments dans w (der entiers « non standard »). On peut continuer et définir dans ll toutes les structures mathérna.tiquelr habituelles : l'anneau des entiers relatifs "'U. , puis les rationnels, puis les nombres réels, etc. Pour voir comment procéder, il suffit de se reporter à un ouvrage de mathéma;tiq1J:e5 générales, comme par exemple le « cours de Mathématiques de premier cycle: (première année)» de Jacques Dixmier (Gauthiers-Villars (Dunod), 1967). Ce qu'il est important de noter, c'est que les structures que l'on obtient ainsi (la base de ces structures\, et arrœsi les opérations) sont des ensembles, c'est-à-dire des points de U. llien ne nous empêche de définir dans llles suites finies, les formules du premier ordre, les structures et la satisfaction d'une formule dans une structure. On peRt alan. énoncer les axiomes de Peano et s'apercevoir que IN est un modèle de ces axiomes. Mais on n'accomplira ce dernier pas qu'exceptionnellement : en l'absence d'indieatiom. contraire, les mots «formule» , «modèle», etc. garderont leur sens intuitif.
.l. iDimmmstrations et définitions par induction
141
3. DEMONSTRATIONS ET DEFINITIONS PAR INDUCTION
L''induction 3__1
Les ordinaux apparaissent comme une généralisation des entiers. Un des faits qui
rend cette intuition intéressante est que l'on peut faire sur les ordinaux des dfunrnmtrations par induction. On a d'ailleurs employé ce type de preuve plusieurs fois sam; le dire. Le principe est le suivant :
Soit F[v 0] une formule de $ à une variable libre et à paramètres dans U ; Bllp'p.C:lHons qu'au cours d'une preuve, on veuille montrer que pour tout ordinal a, F[a] est
VI1Ji. On se donne un ordinal {Jet on fait l'hypothèse (hypothèse d'induction) que, pour tout ordinal 1
< {J, F[ 7] est vrai. De cette hypothèse, et des autres données que 1'on a à
sa disposition, on déduit que F[PJ est vrai. De là, on déduit que, pour tout ordinal a, F[a] est vrai. Cela s'exprime par les formules suivantes : (~)
Va(On[a]
===:}
(V{J({JE
a=}
F[,BJ)
===:}
F[a]))
===:}
Va(On[a]
===:}
F[a]).
Le principe se justifie de la façon suivante : supposons que Va(On[a]
===:}
(V{J({J E a = } F[PJ)
===:}
F[a]))
soit vrai. S'il y a un ordinal a pour lequel F[a] est faux, alors il y en a un plus petit (voir 2.6), que nous appellerons Qo. Précisément parce que c'est le plus petit, pour tout ordinal {J ({JE
a===:}
F[PJ) est vrai, et donc. par hypothèse, F[a] est aussi vrai. ce qui est
contradictoire. Pour montrer ( *), il faut montrer F[a] en supposant que F[PJ est vrai pour tout fJ E a. Il arrive souvent que cette preuve se scinde en trois cas, suivant que a est égal à O.
qu'il est successeur ou qu'il est limite. Le fait qu'il faille aussi considérer le cas où a est limite constitue une nouveauté par rapport aux démonstrations par récurrence sur les entiers. 3.2
PaHsons maintenant aux définitions par induction, et pour expliquer ce que l'on
mt fair.e, .reprenons l'exemple des définitions des fonctions des entiers dans les entiers par :cilcm:nenrre : pour définir une fonction f par récurrence, il faut définir f(O) et se donner les ·m0yens de calculer f( n + 1) à partir de f( n). Si on essaye de généraliser ce type de
;définition aux ordinaux, on voit qu'on aura un problème aux ordinaux limites: e0mment, par exemple, définir f(w) ? On a vu, par exemple dans l'exercice 13 du
les valems f(i), pour 0 :s;;; i :s;;; n déjà calculées. C'est plutôt de ces récurrences que l'on va
142
Chapitre 7. Théorie des ensembles
s'inspirer: pour définir une fonction rp sur les ordinaux, il suffit. de savoir définir, pour tout ordinal a, v( a) à partir des valeurs 'P(/1) pour fJ E a, c'est-à-dire à partir de l'application de domaine a qui à fJ E a fait correspondre 'P(/1). La fonction rp que l'on cherche à définir n'est pas une application, puisque son domaine est la classe des ordinaux qui n'est pas un ensemble (voir les remarques qui font suite à la définition 1.9 ; voir aussi la remarque 1 plus loin). Elle sera définie par une formule G(vo,v1] telle que:
Vvo(On[vo] :=:::) 3!v1G(vo.v1]) et si a est un ordinal, v( a) sera l'unique ensemble x satisfaisant G(a,x]. En revanche, la restriction de cette fonction à un ordinal a est une application : par remplaœment. on peut définir un ensemble A = {x ; il existe un ordinal fJ < a tel que G[IJ,xl }, et la restriction de rp à a, que l'on notera rpf 02 est égale à: { (/J;c) E a x A; G(P,x]}.
n faut
maintenant expliquer ce que l'on entend par « y( a) peut être définie à
partir des valeurs y(/1) pour fJ
THEOREME: Soit F[vo,vhv2] une formule (éventuellement avec paramètres dans fJ) telle que : (**) Vv0Vv1({0n[v0] Av1
domaine vo) :=:::) 3!v2.F{vo,vhv2]) , alors, il existe une et une seule fonction 'P dont le domaille est la dasse des est
une
application
de
ordinaux et telle que : (*) pour tout ordinal a, y( a) est l'unique ensemble x tel que F{a.!pt n..x].
e
Considérons la condition suivante portant sur l'applicat.ion f:
(•)
le domaine de fest un ordinal, et pour tout. {JE dom(f}, on a : F{(JJt~f(P)].
n est
complètement évident que, si f satisfait (•) et si {JE dom(f). alors Hp
satisfait aussi (•)- On Yoit auss1 que 1 pour tout ordinal o, il y a au plus une application f de domaine a satisfaisant cette condition ; on raisonne par 1' absurde : soient f et r deux applications différentes de domaine a qui satisfont (• ). Soit fJ le plus petlt ordinal tel que
143
3. Démonstrations et définitions par induction
f({J) :t;f'({J). Alors (minimalité de {J), ftJJ=f'tJJ, et on a: F[/l,ftJJ,f({J)] et F[/l,ftJJ,f'({J)]; ceci contredit ( ** ). L'unicité annoncée dans le théorème en découle : si cp et cp' sont des fonctions dont le domaine est la classe des ordinaux et satisfaisant (*), et si a est un ordinal, alors cpt
+1
satisfaisant (•) et telle que v1 = f(vo). Il est clair, d'après l'unicité que l'on vient de montrer, que cette formule est fonctionnelle en v0 . Appelons
~
la fonction partielle que cette formule définit.
Supposons un instant que a soit un ordinal et que la fonction ~ soit définie sur a, c'est-à-dire: pour tout Il< a, il existe un ensemble x tel que G[/l,x). Par remplacement, l'image de a par~ est un ensemble A: A= {y; il existe un ordinal
IlE a tel que G[/l,y) },
et 1'ensemble : g = { (/l,y) E a x A , G[/l,y)} est une application de domaine a. Montrons que cette application satisfait (• ). Il s'agit de montrer que, pour tout ordinal {J, {J < a implique F[{J,g tl},g({J)). On raisonne encore par l'absurde, et considérons encore le plus petit ordinal
fJ <
a tel
que F[{J,g tJJ,g({J)] soit faux. A cause de la minimalité de {J, g tiJ satisfait ( • ). Puisque g({J) satisfait G[{J,g({J)] (par définition de g), on sait qu'il existe une application f de domaine
{J+ 1 satisfaisant (•) et telle que f({J) =g({J). On en déduit, d'une part que ftjl=gtll (toutes deux satisfont (•)), et d'autre part que F[fJ,ftJJ,f({J)] (f satisfait (•)). Cela montre que F[{J,g tJJ,g({J)], ce qui est contradictoire. On peut maintenant montrer par induction que : pour tout ordinal a, il existe une ensemble x satisfaisant G[a,x) : supposons que ce soit vrai pour tout {J < a. On vient de voir que g =~ta. satisfait (•). Par (**), il existe un ensemble a tel que F[a,g,a). Posons: f = g u { (a, a)} Il est alors clair que fest une application de domaine a+ 1 satisfaisant encore ( • ), et on a bien G[a,a). La formule G définit donc une fonction ~ dont le domaine est la classe des ordinaux, et il découle de ce qu'on a dit que
~
satisfait ( *).
~
REMARQUE 1 : Il nous arrivera d'avoir besoin de définir par induction une application dont le domaine est un ordinal a fixé (par exemple w pour les fonctions récursives). Dans
144
Chapitre 7. Théorie des ensembles
ce cas, la condition (**) est remplacée par la condition plus faible suivante : VvoVvl((vo est un ordinal inférieur à a et v1 est une application de domaine v0 ) ~
3!v2F[vo,vhv2]). On peut alors montrer qu'il existe une et une seule application f de domaine a telle que, pour tout ordinal {J < a, f({J) est l'unique ensemble x tel F[fJ,fttJ,x] : soit on adapte la démonstration précédente, soit on applique le théorème précédent en utilisant la formule F'(vo,vhv2)
= (vo <
a~
F(vo,vhv2]) A (vo
~ a~
v2
~ 0)
REMARQUE 2: Dans un grand nombre de cas d'applications du théorème ci-dessus, la situation est en fait plus compliquée : reprenons les notations de la démonstration. Tout en définissant par induction cp( a), on démontre par induction que 1'application cpt 0 satisfait une certaine formule, disons P[v0). Le point délicat, c'est que cp( a) ne peut être défini que si
cpt 0
satisfait P ; autrement dit, on n'est plus assuré que la condition ( **) est
vérifiée, mais seulement que :
VvoVv 1((0n[vo) Av1 est une application de domaine vo A P[v 1])
~
3!v2F[vo,vhv2]).
Ici encore, on se ramène au théorème précédent par une pirouette : on remplace la formule F par F'
= (P[v1] ~ F[vo,vhv2]) A (-,P[v 1) ~ v2 ~ 0).
L'axiome du choix 3.3
Rappelons d'abord l'énoncé de cet axiome:
(AC)
Si (ai). est une famille d'ensembles non vides, alors If. 1
'"',
'fT ai n'est pas vide. lf.l
L'axiome du choix est équivalent, moyennant les axiomes de ZF, à d'autres énoncés plus faciles à exploiter, que nous·allons présenter maintenant.
DEFINITION : On dit qu'un ensemble ordonné (X,R) est inductif si, pour
tout sous-ensemble Y de X, si Y est totalement ordonné par R, alors Y admet un majorant dans X.
Il découle de cette définition que, si (X,R) est inductif, alors X n'est pas vide : l'ensemble vide, qui est un sous-ensemble de X totalement ordonné par R, doit avoir un majorant, et cela fournit un élément de X. Dans la pratique, lorsqu'on veut montrer que
3. Démonstrations et définitions par induction
145
(X,R) est inductif, il est en général plus clair de montrer que X n'est pas vide et que tout sous-ensemble Y non vide de X totalement ordonné par R admet un majorant dans X.
THEOREME : Les trois énoncés suivants sont équivalents: (i) (AC) (ii) si (X,R) est un ensemble ordonné inductif, alors il admet au moins un élément maximal. (iii) pour tout ensemble X, il existe un bon ordre sur X.
Les propriétés (ii) et (iii) sont donc des théorèmes de ZFC ; (ii) est généralement appelé le théorème (ou lemme) de Zorn et (iii) le théorème de Zermelo. ~ (i) implique (ii): on raisonne par l'absurde, et on suppose donc, d'une part l'axiome du choix, d'autre part qu'il existe un ensemble inductif (X,R) n'admettant pas d'élément maximal. Considérons: T = {Y E ~(X) ; Y est totalement ordonné par R}. Pour chaque élément Y de T, il existe un élément a dans X qui majore Y; comme a n'est
pas maximal dans X, il existe b dans X tel que a
146
Chapitre 7. Théorie des ensembles
deux ordinaux différents. Donc, la formule H est fonctionnelle en v 0 . Par remplacement, l'image de T par la fonction que cette formule définit est un ensemble. Mais on vient de voir que tout ordinal est isomorphe à un élément de T, et donc cette image serait l'ensemble de tous les ordinaux: cela est contradictoire avec le proposition 1 de 2.6.
(ii) implique (iii) : la démonstration qui suit est caractéristique de la façon dont on utilise généralement le lemme de Zorn. Soit X un ensemble, et il faut montrer qu'il existe un bon ordre sur X. Considérons l'ensemble :
a= { (A,R) E ~(X)
x
~(X x
X) ; Rest une relation de bon ordre sur A}
et la relation binaire s sur a : s = { ((A 0 ,R 0 ),(A 1,R1)) E a x a; A0 Ç Ah A0 est un segment initial de (AhR 1) et Ro=R1tA }. 0
Il est immédiat de vérifier que s est une relation d'ordre sur a. Montrons que cette relation est inductive. Tout d'abord a n'est pas vide, puisqu'il contient (0,0). Soit b un sous-ensemble non vide de a totalement ordonné par s. Posons :
C = {xE X ; il existe (A,R) E b tel que xE A} et
T = { (x,y) EX x X ; il existe (A,R) E b tel que (x,y) E R }. Montrons que T est un bon ordre sur C. On commence par voir que T Ç C x C :
si (x,y) ET, alors il existe un couple (A,R) appartenant à b tel que (x,y) ER. Comme (A,R) E a, R est une relation sur A et donc x et y appartiennent à A. De la définition de
C, il découle qu'ils appartiennent aussi à C. Transitivité de T : supposons que (x,y) et (y,z) appartiennent à T. Il s'agit de montrer que (x,z) appartient aussi à T. Il existe (A 0 ,R0 ) et (A 1,R 1) dans b tels que x
a est minimum dans D pour T. Soit en effet x un autre élément de D, et (B,S) E b tel que xE B. On utilise encore le fait que b est totalement ordonné par s. Si (B,S)
4. Cardinalité
147
On a donc bien montré que l'ensemble a ordonné par s est inductif; d'après ii), il admet donc un élément maximal. Soit (D,U) cet élément maximal. On va terminer la preuve en montrant que D est égal à X tout entier. On raisonne par 1'absurde : choisissons un point a de X - D. On pose D'= DU {a}, et on étend la relation U en une relation U' sur D'en décrétant·que a est supérieur à tous les éléments de D ; alors D' est bien ordonné par U' (même preuve que pour le corollaire 2 de proposition 2.3), et Den est un segment initial. Cela montre que (D',U') > (D,U), ce qui contredit la maximalité de (D,U). 5
(iii) implique (i) : soit (a i)iEI une famille d'ensembles non vides. Posons : a=Ua·. ÏE 1 l En utilisant (iii), on voit qu'il existe un relation de bon ordre, disons <,sur a. Alors :
b = { (i,x) E 1 x a ; x est l'élément minimum de ai pour la relation <} appartient à
fT ai· 1E 1
(;;)
4. CARDINALITE
Les classes cardinales 4.1
DEFINITION : Soient x et y deux ensembles. On dit que x est subpotent à y
s'il existe une injection de x dans y. On dit que x et y sont équipotents s'il existe une bijection de x sur y.
Considérons la formule F[v0 ,v1] = 3f(f est une injection de v0 dans v1). On ne peut pas parler de la relation définie par F puisque, a priori, la classe des ensembles (x,y) satisfaisant F[x,y] n'est pas un ensemble (a posteriori, ce n'en est d'ailleurs pas un). On peut cependant remarquer que la méta-relation définie par cette formule est réflexive et transitive, c'est-à-dire que les formules :
VvoF[vo,vo] et VvoVvNv2((F[vo,v1] A F[v11v2]) ~ F[vo,v2]) sont vérifiées. De même si on considère la formule :
148
Chapitre 7. Théorie des ensembles
G[vo,v 1] = 3f(f est une bijection de v0 dans v1), alors la méta-relation définie par G est réflexive, symétrique et transitive. Elle a donc toutes les propriétés des relations d'équivalence (mais ce n'est pas une relation). En particulier, si x est un ensemble, on peut considérer la classe des éléments équipotents à x. On appellera classe cardinale de x cette classe, et on la notera card(x) ; si x est un ensemble et À est une classe cardinale, on dira que x œt de cardinalité À pour dire que x appartient à À. Dans le cas où x n'est pas l'ensemble vide, on peut vérifer que la classe cardinale de x n'est pas un ensemble. 4.2
On a alors l'important théorème de Cantor-Bernstein:
THEOREME : Si x est subpotent à. y et y est subpotent à. x, alors x et y sont
équipotents.
~
On considère deux ensembles x et y, une injection f de x dans y et une injection g de y dans x. Il s'agit de construire une bijection h de x sur y. Puisque f et g sont des injections, chaque élément de x a au plus un antécédent par g dans y, et chaque élément de y a au plus un antécédent par f dans x. Partant d'un élément quelconque t 0 Ex, on constitue une «chaîne» t 0 , t 11 t 2 , ... , dont les éléments sont alternativement dans x et dans y, de telle sorte que chaque élément soit suivi, si possible, de son unique antécédent (par g ou par f, suivant le cas). On voit qu'il y a trois possibilités :ou bien cette chaîne ne s'interrompt jamais, ou bien elle s'interrompt sur un élément de x qui n'a pas d'antécédent par g (c'est le cas en particulier lorsque t 0 lui-même n'appartient pas à l'image de g ; t 1 n'est alors pas défini), ou bien elle s'interrompt sur un élément de y qui n'a pas d'antécédent par f. A ces trois possibilités correspond une partition de l'ensemble x en (au plus) trois sous-ensembles que nous appellerons respectivement X011, xx et xy. Si on part d'un élément u0 E y, on peut définir de manière analogue une chaîne u0, u1, u2, •.. telle que, pour tout n, Un+l soit l'unique antécédent de Un (par fou par g, suivant la parité de n), lorsqu'un tel antécédent existe, et ne soit pas défini dans le cas contraire. On appelle alors Yao l'ensemble des éléments de y qui engendrent une chaîne ininterrompue, Yx l'ensemble de ceux qui engendrent une chaîne qui s'interrompt sur un élément de x qui n'a pas d'antécédent par g, et Yy l'ensemble de ceux qui engendrent une chaîne qui s'interrompt sur un élément de y qui n'a pas d'antécédent par f. Formellement, il faut d'abord définir, pour tout ensemble a et pour toute application cp de a dans a, par induction sur l'entier n E w, l'application qi' de a dans a : qP est l'identité sur a et, pour tout k E w, cpk+l est l'application composée cp o cpk. On pose ensui te :
149
4. Cardinalité
• xx= { t E x ; il existe k E w et u E x- Jm(g) tels que t = (g o f)k( u)} ; • xy ={tE x; il existe k E wet vEy -Jm(f) tels quet =g((f o g)k(v))}; e X011 =X- (Xx U Xy)
j
• Yx = { u E y; il existe k E wet tE x -Jm(g) tels que u =f((g o f)k(t))}; • yy= { u E y ; il existe k E w et v E y -lm(f) tels que u = (f o g)k(v)} ; • Y011 =Y- (Yx U Yy).
------------~-----------
y
~g x
~----------~------
to
t n-1
tn+1
Les faits suivants sont alors clairs : l'image par f de tout élément de xx appartient à Yx; l'image par f de tout élément de X011 appartient à Y011 ; tout élément de Yx admet un antécédent par f qui appartient à xx , tout élément de yOD admet un antécédent par f qui appartient à X011 ; xy est inclus dans l'image de g et l'antécédent par g de tout élément de xy appartient à yy. Il résulte de ces remarques que la restriction de f à l'ensemble X011 U xx est une bijection de X011 U xx sur Y011 U Yx (désignons-la par lfJ), et que la restriction de g à yy est une bijection de yy sur xy (désignons-la par f/J). L'application h de x dans y définie par h ='PU
.p-1 est alors une bijection de x sur y.
On remarquera que les ensembles X011, xx et xy peuvent éventuellement être vides (en même temps, respectivement, que y011, Yx et yy), mais cela n'affecte en rien la construction précédente. ~
On remarque que si x, x', y et y' sont des ensembles, si x et x' sont équipotents, si y et y' sont équipotents et si x est subpotent à y, alors x' est subpotent à y' (la composée de deux injections est une injection). Cela permet de définir un ordre sur les classes cardinales : si .\ et p sont deux classes cardinales, on dira que .\ est inférieure ou égale à p, et on écrira .\
~ p,
s'il existe des ensembles x et y, respectivement dans les
classes .\et p, tels que x soit subpotent à y. Si .\, pet
li
sont des classes cardinales, on a :
.\~.\;
.\ ~ pet p ~ .\ implique .\ = p (c'est le théorème de Cantor-Bernstein) ;
.\
~
p et p
~ li implique
.\
~ li.
On peut montrer (voir exercice 3) que le fait que cet ordre soit total est équivalent à l'axiome du choix.
150
Chapitre 7. Théorie des ensembles
Opérations sur les classes cardinales 4.3 On veut maintenant définir un certain nombre d'opérations sur les classes cardinales. Pour cela on a besoin de la proposition suivante:
PROPOSITION : 1") Si x est équipotent à y et z est équipotent à t, alors x 0 z est équipotent à y 0 t, x x z est équipotent à y x t et xz est équipotent à yt.
2") Soient x, y, z et t des ensembles et on suppose que x est subpotent à y et que z est subpotent à t. Alors x 0 z est subpotent à y 0 t, x x z est subpotent à y x t. Si y n'est pas vide, xz est subpotent à yt.
(;;) Commençons par montrer 2") : soient f une injection de x dans y et g une injection de z dans t. On vérifie facilement que l'application k dont la définition suit est une injection de x 0 z dans y o t : si a Ex 0 z, alors, soit il existe b Ex tel que a = (b,O), soit il existe c E z tel que a = (c,l ). Dans le premier cas, on pose k(a) = (f(b ),0) ; dans le second, on pose k(a) = (g(b),l). Cela montre que x 0 z est subpotent à y o t. On montre de façon analogue que x x z est supotent à y x t : il suffit de vérifier, ce qui est facile, que l'application h de x x z dans y x t définie par: pour tout a Ex et pour tout bE y, h((a,b)) = (f(a),g(b)) est injective. Le cas de l'exponentiation est un peu plus délicat. On va, dans un premier temps, supposer que z est équipotent à t et que g est une bijection de z sur t. Rappelons que xz est l'ensemble des applications de z dans x et que yt est l'ensemble des applications de t dans y. Si a E xz, posons in= fo aog-1 ; in est donc une application de t dans y. Montrons que 1' application de xz dans yt qui à a fait correspondre in est injective. Pour cela, on suppose que a et {J sont deux éléments distincts de xz et on montre que in est différent de Ïfl : il existe un élément a de z tel que a( a)* {J(a ). Posons b = g(a ). Alors in(b) =f(a(a)) et i13(b) =f({J(a)). Comme fest injective et comme a(a) *{J(a), on a: in(b)
* i13(b ).
Revenons au cas général et supposons seulement que g est une injection. Posons u = g(z). Alors g est une application bijective de z sur u, et on vient donc de voir qu€ xz est subpotent à yu. Montrons que yu est subpotent à yt : choisissons un élément c de y (y n'est pas vide). Si a est une application de u dans y, on peut définir une application jn de t dans y par: si a Eu, alors jn(a) = a(a); si a Et - u, jn(a) = c.
4. Cardinalité
151
Il est bien clair que si yu dans yt.
k = jfJ, alors
a= {J, et on a bien trouvé une application injective de
On remarque qu'avec nos définitions 0° = 1 tandis que 01 = 0 : l'hypothèse «y non vide» est donc indispensable. 1") On peut refaire les preuves précédentes et s'apercevoir que, si les applications f et g sont bijectives, alors les différentes applications de x 0 z dans y o t, de x x z dans y x t, de xz dans yt qui y sont définies sont alors bijectives. Les paresseux pourront aussi déduire de la première partie que x 0 z est subpotent à y 0 t et que y 0 t est subpotent à x 0 z et appliquer le théorème de Cantor-Berstein (et faire le même raisonnement pour le produit et l'exponentiation). Pour l'exponentiation, il faut, de toutes façons, traiter à part le cas où y est vide, qui est évident. ~
La définition suivante est donc justifiée :
DEFINITION : Soient ..\ et p, deux classes cardinales; alors ..\ + p, ..\ x pet ..\"' sont respectivement les classes cardinales de x o y, x x y et xY, où x est un ensemble de cardinalité ..\et y est un ensemble de cardinalité p.
Voici une petite remarque destinée à nous simplifier la vie ultérieurement : REMARQUE : Soient x et y deux ensembles. On peut définir une injection f de x U y dans x o y: soit a Ex montre que:
U y;
si a Ex, f(a) = (a,O); sinon, a E y et on pose, f(a) = (a,l). Ceci
card(x U y) ~ card(x) + card(y) Si x et y sont disjoints, alors fest une bijection de x U y sur x o y et card(x U y)= card(x)
+ card(y).
Le lecteur pourra s'amuser à montrer, que, dans le cas général : card(x
U y)
+ card(x n y)= card(x) + card(y).
La proposition 4. 3 montre aussi :
COROLLAIRE : Soient ..\, p, v, ..\
~
p et que v
égal à 0, ..\ ~ 11
~ K..
l'".
Alors ..\
K.
des classes cardinales, et supposons que
+ v ~ p + K.,
..\ x
v
~
p
x K.
et, si p n'est pas
152
Chapitre 7. Théorie des ensembles
Attention : ceci devient faux si on remplace les inégalités larges par des inégalités strictes (voir 4.14 et exercice 14).
4.4
PROPOSITION : Soient ..\, pet v des classes cardinales. Alors :
1) 2) 3) 4) 5) 6) 7) 8)
..\ + (p +v)=(..\+ p) +v; ..\+p=p+..\; ..\x (px v)=(..\ x p) x v; ..\xp=px..\; ..\x (p + v)=(..\ x p) +(..\x v); 11 ..\ xl=(..\ x p)"; ..\p.+ll = ..\P. x ..\11 ;
(..\ . . t =
..\p.lll.
~
Soient x, y et z des ensembles de cardinalités respectives ..\, p et v, et on va supposer que ces ensembles sont deux à deux disjoints. 1) On a vu (en 1.5) que x U (yU z) =(x U y) U z. Or la cardinalité du premier de ces ensembles est ..\ + (p +v) et celle du second(..\+ p) +v (d'après la remarque 4.3, puisque les ensembles x, y et z sont deux à deux disjoints). 2) De même, x U y, dont la cardinalité est ..\ + p, est égal à yU x dont la cardinali té est p + ..\. 3} L'application f définie par : pour tout a Ex, pour tout bE y, pour tout cE z, f((a,(b,c))) = ((a,b ),c) est une bijection de x x (y x z) sur (x x y) z. 4) L'application f définie par: pour tout a Ex, pour tout bE y, f((a,b)) = (b,a) est une bijection de x x y sur y x x. 5) On vérifie d'abord que x x y et x x z sont des ensembles disjoints ; ensuite que l'ensemble x x (yu z) (dont la cardinalité est ..\x (p +v)) est égal à l'ensemble (x x y) U (x x z) (dont la cardinalité est (..\x p) +(..\x v)). 6) Soient a une application de z dans x et {J une application de z dans y. Définissons une application i 0,~ de z dans x x y: pour tout cE z, i 0,~(c) = (a{c),{J{c)). On vérifie facilement que l'application f qui, à (a,/1), fait correspondre i 0,~, est une bijection de xz x yz sur (x x y)z. 7) Soit a une application de y dans x et {J une application de z dans x. Puisque y et z sont disjoints, au {J est une application de y U z dans x, et on voit sans peine que l'application qui à ( a,/1) fait correspondre aU {J est une bijection de xY x xz sur xyuz_ 8) Soient a une application de y x z dans x. Pour tout élément c de z, on peut définir une application ltc de y dans x par : pour tout b E y, Lrc(b) = a{b,c) ; cela permèt
4. Cardinalité
153
de définir une application in de z dans xY par: pour tout cE z, in(c) =ac. Enfin, on vérifie que l'application qui à a fait correspondre in est une bijection de xyxz sur (xYt
e 4.5 Avant d'aller plus loin, remarquons que, pour tout ensemble x, Sff(x) est équipotent à 2x. Définissons d'abord la notion de fonction caractéristique d'un sous-ensemble de x : si y est un sous-ensemble de x, alors la fonction caractéristique XY de y est l'application de x dans 2 définie par : pour tout a E x, x( a) = 1 si a E y et x(a) = 0 sinon. L'application qui à y fait correspondre XY est une bijection de Sff(x) sur 2x. Le théorème suivant, appelé théorème de Cantor, est important car il montre qu'il n'y a pas de cardinalité maximale:
THEOREME: Pour toute classe cardinale~' on a: 2>-
©
Soit x un ensemble de cardinalité
~-
>
~-
On peut facilement définir une injection f de
x dans Sff(x) par : pour tout a Ex, f(a) = {a}. Cela montre que ~ ~ 2>-. On va utiliser un argument diagonal pour prouver qu'il n'existe pas de surjection de x sur Sff(x) : soit 6 une application de x dans Sff(x). Considérons : y={a Ex; a~ c5(a)}. Alors y est un élément de Sff(x) et on va montrer que 6 n'est pas surjective en montrant que y n'appartient pas à l'image de 6: raisonnons par l'absurde et supposons que y= c5(b), où bE x. Si bE y, alors, par définition de y, b ~ c5{b), ce qui n'est pas possible puisque c5{b)=y. D'un autre côté, si b~y, alors, toujours par définition de y, b E c5{b) =y, ce qui est tout aussi impossible.
e
Les cardinaux finis 4.6
DEFINITION : On dit qu'un ensemble est fini s'il est équipotent à un entier. Un ensemble infini est un ensemble qui n'est pas fini.
Rappelons qu'un entier n est égal à l'ensemble des entiers qui lui sont inférieurs. On a déjà une notion d'ordinal fini (2. 7). Avant toute chose, il faut vérifier que les deux
154
Chapitre 7. Théorie des ensembles
définitions concordent. Il est bien évident qu'un ordinal fini (c'est-à-dire un entier) est en bijection avec lui-même, et est donc fini au sens de la définition ci-dessus. La réciproque (un ordinal infini au sens de 2. 7 n'est pas un ensemble fini) va découler du corollaire 1 ci-dessous.
THEOREME: Soient n un entier et f une application den dans n. Alors: 1") si f est injective, alors f est bijective ;
2") si f est surjective, alors f est bijective.
~
1") Par récurrence sur n : c'est clair si n = 0, puisque dans ce cas, la seule
application de n dans n est surjective. On suppose donc le résultat vrai pour n, et on va le montrer pour n + 1 : soit f une injection de n + 1 dans n + 1. Considérons la bijection h de n + 1 sur n + 1 définie par : • h(p) =psi p =t:n et si p =t:f(n); • h(n) =f(n); • h(f(n)) = n. (Cette définition est cohérente même si f(n) est égal à n). Alors g = hof est aussi une injection de n + 1 dans n + 1 ; de plus, g( n) = n, et par conséquent, g t n est une injection de n dans n. Par hypothèse de récurrence, g t n est une bijection de n sur n. Donc, tout entier inférieur à n est dans l'image de g, de même que n (g(n) = n). On voit donc que g est une bijection den
+ 1 sur n + 1, de même que f,
1
qui est égale à h- og.
2") Soit f une application surjective de n sur n. Considérons l'application h définie par : pour tout p E n, h(p) est le plus petit entier k tel que f(k) =p. Alors foh est égale à l'application identique sur n, ce qui implique que h est injective. Donc, d'après 1" ), h est une bijection den sur n, de même que f qui est égale à h-1• (;;)
COROLLAIRE 1 : Soient a un ordinal, n un entier et supposons a> n ;
alors il n'existe pas d'application injective de a dans n.
~
On raisonne par 1' absurde : soit f une application injective de a sur n : ft n est
aussi injective, donc d'après le théorème, elle est surjective sur n, et si {J appartient à a mais pas à n (un tel élément existe puisque a> n), f({J) appartient à l'image de n par f, ce qui contredit l'injectivité de f. REMARQUE: On verra en 4.11 une généralisation de l'argument utilisé pour 2").
4. Cardinalité
155
COROLLAIRE 2 : Si x est un ensemble fini, alors toute application injective (ou surjective) de x dans x est bijective.
c;;J Comme x est fini, il existe un ordinal fini a et une bijection f de x sur a. Soit h une application injective de x dans x. Alors k = fohof-1 est une application injective de a
dans a, et par le théorème 4. 6, c'est une bijection. Il est en de même de h qui est égal à f-1okof. Le cas où h est une application surjective se traite de la même façon. ~
4.7
c;;J
PROPOSITION 1 : Si x est fini, il existe un et un seul entier équipotent à x.
Par définition, il existe un tel entier. Si x est équipotent à deux entiers n et rn,
alors n et rn sont eux-même équipotents, et le corollaire 1 de 4.6 montre qu'il est impossible que l'on ait n > rn ou rn > n. Il faut donc que net rn soient égaux. (;;)
PROPOSITION 2 : Si x est fini et si y est subpotent à x, alors y est fini.
c;;J
Soient g une application injective de y dans x et f une bijection de x sur un entier
n. Appelons z l'image de y par fog. Alors fog est une bijection de y sur z, et il suffit donc de montrer que z est fini. L'ensemble z, muni de la relation d'ordre induite par celle de n (n est un ordinal) est bien ordonné, donc isomorphe à un ordinal a (proposition 3 de 2 .6) qui est nécessairement inférieur ou égal à n (lemme 2 . 6), donc fini. (:;;)
PROPOSITION 3 : S'il existe une application f surjective d'un ensemble fini x sur un ensemble y, alors y est fini.
t;;l
Il existe un entier n et une bijection h de n sur x ; alors foh est surjective de n sur
y. On définit une application injective k de y sur n par : pour tout a
petit entier rn fJ
E
y, k(a) est le plus
< n tel que foh(rn) =a. On applique alors la proposition 2.
156
Chapitre 7. Théorie des ensembles
PROPOSITION 4 :
1") 1'union de deux ensembles finis est un ensemble fini ; le produit de deux ensembles finis est un ensemble fini ; 3") l'union et le produit d'une famille finie d'ensembles finis sont des ensembles finis. 4") si a et b sont des ensembles finis, alors ab est un ensemble fini; 5") si A est un ensemble fini d'ordinaux finis (c'est-à-dire d'entiers), alors sup A est un ordinal fini (c'est-à-dire un entier). ~)
~
Soient a et b des ensembles finis respectivement équipotents aux entiers n et m. 1") On a vu (remarque 4.3) que card(a U b) ~ card(a 0 b) et (proposition 4.3) que card(aob)=card(n)+card(m)=card(nom). Or, d'après le théorème 2.10, viii), n 0 rn est équipotent à un entier ; on conclut avec la proposition 2. ~)Le cas du produit est encore plus simple: card(a x b) = card(n x rn) (proposition 4.3), et n x rn est fini, par le théorème 2.10, viii). 3") Soient 1 un ensemble fini de cardinalité p, et, pour chaque i E 1, ai un ai sont des ensemble de cardinalité ni· On montre par récurrence sur p que V ai et Id lEI ensembles finis. C'est évident si p =O. Si p =t:- 0, soit j un élément de 1 ; posons J = 1 - { j }. La cardinalité de J est égale à p -1, donc par hypothèse de récurrence,
"fT
V
1 EJ
ai et
"fT ai sont finis, et on conclut avec 1") et ~) en remarquant que : 1 EJ
V lEI
ai=
V ai Uaj et card("'fl ai) =card("'fl ai) Id lEI Id
x
card(aj).
4") En se reportant aux définitions 1. 9, on voit que ab = donc immédiatement de de 3") 5") se déduit de r) et de ~ ).
n
XEb
a ; 4") se déduit
Si À est la classe cardinale d'un ensemble fini, il y a dans À un représentant canonique, qui est l'unique entier n figurant dans À. On fera l'abus de langage consistant à confondre n et card(n). Il y a quelques inconvénients à faire cela (par exemple, n x rn désigne-t-il le produit d'ensembles ou bien le produit de cardinaux ?), mais le contexte sera, en principe, suffisamment clair.
4. Cardinalité
157
Le dénombrable
4.8
DEFINITION : On dit qu'un ensemble est dénombrable s'il est équipotent à w.
On notera ~ (lire «aleph zéro» ; aleph est la première lettre de 1' alphabet hébraïque) la classe cardinale de w (donc de tout ensemble dénombrable). On voit donc que N0 est strictement supérieur à tous les cardinaux finis. Remarquons que si a est un ordinal, alors sa cardinalité est soit finie, soit supérieure ou égale à ~. Cette propriété s'étend bien sûr à tout ensemble bien ordonné.
PROPOSITION : Si x est dénombrable et y est subpotent à x, alors y est dénombrable ou fini.
~ On s'inspire de la preuve de la proposition 2 de 4. 7 : y est équipotent à un sous-ensemble z de w; parce qu'il est naturellement bien ordonné, z est lui-même équipotent à un ordinal a, qui (remarque 2.6) est inférieur ou égal à w; si a est un entier, alors y est fini. Sinon, il est égal à w et y est dénombrable.
e REMARQUE: L'analogue du corollaire 1 de 4.6 est faux pour le dénombrable: l'application f de w dans w définie par : f(n) = n + 1 est injective, mais non bijective, puisque 0 n'appartient pas à son image. On peut d'ailleurs définir une application injective non surjective de n'importe quel ordinal infini dans lui-même: il suffit de prolonger f par : f{{J) = IJ pour tout {J ~ w. En fait, il y a bien pire :
4.9
THEOREME : 1") L'union de deux ensembles finis ou dénombrables est fini
ou dénombrable. 2") Le produit de deux ensembles finis ou dénombrables est fini ou dénombrable. 3") Soit X un ensemble fini ou dénombrable; alors l'ensemble S = U X" est fini ou dénombrable. nE.ID
158
Chapitre 7. Théorie des ensembles
Remarquez que 3") affirme que l'ensemble des suites finies d'un ensemble fini ou dénombrable est fini ou dénombrable. 1") Soient X et Y deux ensembles finis ou dénombrables. Il existe donc des injections f et g de X et Y, respectivement, dans w. Pour montrer que X U Y est fini ou dénombrable, on va construire une injection h de X U Y dans w. La voici : soit x E X U Y ; si xE X, on pose h{x) = 2f{x) ; sinon, xE Y, et on pose h{x) = 2g{x) + 1. 2") Soient encore X et Y deux ensembles finis ou dénombrables et f et g des injections de X et Y, respectivement, dans w. Voici une injection h de X x Y dans w: si {x,y) EX x Y, alors h({x,y)) = lrl{f{x),g(y)), où lr2 est la bijection définie au chapitre 5, !;;)
1.12. 3") Soient X un ensemble fini ou dénombrable et f une injection de X dans w. On définit une application h de S dans U CJ.f : soit a un élément de S ; il existe donc un nt.I.D entier n tel que a soit une application de n dans X. On pose alors h(a) = foa (intuitivement, si. a= (x 1,x2 , ... ,xn), alors h(a) = {f{x1),f(x2 ), ... ,f(xn))). On vérifie sans peine que h est une injection deS dans U CJ.f. D'autre part, l'application {l définie en nt.I.D
1.12 du chapitre 5 est un injection de
U CJ.f nt.I.D
dans w; lloh est un injection de S dans w.
~
REMARQUE : La démonstration qui vient d'être faite utilise quelques faits élémentaires d'arithmétique. Mais ces faits se démontrent sans peine avec tout ce que l'on sait sur IN. La proposition 3 de 4. 7 se généralise, avec la même preuve :
PROPOSITION : S'il existe une application surjective d'un ensemble dénombrable x sur y, alors y est dénombrable ou fini.
COROLLAIRE : On a: l")~o+~=~o; 2")~x~o=~;
3") pour tout entier n non nul, ~~ = ~o ;
~ On vient de voir que ~ + ~' ~0 x ~0 et ~~ sont au plus dénombrables. Il suffit de voir que ce ne sont pas des cardinalités finies, ce qui est à peu près évident. ~
4. Cardinalité
159
4.10 Pour donner un exemple d'application de la notion de cardinalité, on va montrer qu'il existe des nombres réels qui ne sont pas algébriques. Il existe, par ailleurs, des preuves purement algébriques de ce fait, mais la démonstration qui suit montrera que «la plupart » des réels ne sont pas algébriques (avec comme conséquence, par exemple, que l'ensemble des réels algébriques est de mesure de Lebesgue 0). Rappelons qu'un nombre est algébrique s'il est racine d'un polynôme non nul à coefficients dans "U... La
stratégie de la démonstration qui suit est simple : on montre, premièrement que la cardinalité de IR, l'ensemble des nombres réels est deuxièmement que l'ensemble des nombres algébriques est dénombrable.
.Jo,
PROPOSITION 1 : card(IR)
~
=.Jo.
On considère la fonction a de cp dans IR définie comme suit : si h E cp, alors
a(h) =
E~=O .!!.1!!1 2n+l
(Autrement dit, O,h(O)h(1) ... h(n) ... est le développement de a(h) en écriture binaire). L'image de a est l'intervalle [0,1), mais a n'est pas injective : par exemple, 0,1000... et 0,0111 ... représentent le même réel. Cependant, ce phénomène est très limité. Disons qu'un élément h de 2ID est nul à l'infini s'il existe un entier n tel que h(p) = 0 pour tout p > n, et posons : S = {h E 21D; h n'est pas nul à l'infini}. On supposera connu le fait que ats est une application bijective de S sur ]0,1]. Définissons une nouvelle application {J de cp dans IR par : si h E S, alors {J(h) = 1 + a(h) ; sinon, {J(h) = a(h ). On voit sans trop de difficulté que {J est injective, ce qui montre que card(IR) ;:;::: c/o. D'autre part, l'application f définie par:
f(x) = ~ Arctg(x)
+
!,
est une application bijective de IR dans )0,1[; on a donc card(IR) = card()0,1[ ~ card()0,1) = card(S) ~ c/o. Avec le théorème de Cantor Bernstein, on en déduit : card(IR) = c/o. ~
On dit quelquefois que IR a la puissance du rontinu pour dire que card(IR) =
PROPOSITION 2 : L'ensemble A des nombres algébriques réels est dénombrable.
c/o.
160
Chapitre 7. Théorie des ensembles
~ L'ensemble l est la réunion de deux ensembles dénombrables (les entiers positifs et les entiers négatifs), et est donc dénombrable. L'ensemble S des suites finies d'éléments del est aussi dénombrable (théorème 4.9, 3" )). Pour touts= (a 0 ,a 1, ... ,an)ES, posons:
Z(s) = 0 si tous les ah pour i compris entre 0 et n, sont nuls ; Z(s) ={xE IR; ao + a1x + ... + anx" =0} sinon. Il existe une application surjective de S sur l'ensemble { Z(s) ; s E S }, qui est donc dénombrable (proposition 4. 9) ; chaque ensemble Z(s), pour sES, est fini. De plus, A est la réunion de la famille (Z(s); sE 5). Soit f une bijection de w sur S. On définit une application g de w x w dans A par : • si Z(f(n)) a au moins p éléments, alors g(n,p) est lep-ème élément de Z(f(n)) (muni de l'ordre induit par celui de IR) ; • sinon, g(p,n) =O. On voit alors que g est surjectif. Comme w x w est dénombrable il découle de la proposition 4. 9 que A est dénombrable.
e L'exercice 23 montre aussi que IR n'est pas dénombrable en utilisant directement un argument diagonal.
Les cardinaux 4.11 A partir de maintenant, certains théorèmes vont nécessiter l'axiome de choix. On signalera ce fait par le sigle (AC).
DEFINITION : On appelle cardinal un ordinal qui n'est équipotent à aucun ordinal strictement plus petit. (On dit quelquefois ordinal initial.)
Par exemple, les ordinaux finis sont des cardinaux (4. 6, corollaire 1) ; w est aussi un cardinal. En revanche, w + 1, w + w, w x w ne sont pas des cardinaux (corollaire 4 . 9). Les cardinaux infinis sont des ordinaux li mi tes : si a est un ordinal infini, l'application f définie comme suit est une bijection de a+ 1 sur a: si fJ E w, alors
f({J) = fJ + 1; si w ~ fJ
4. Cardinalité
161
est un cardinal. Plus généralement, soit x un ensemble, et supposons qu'il existe un ordinal a tel que x soit subpotent à a. Alors il existe un et un seul cardinal a tel que x soit équipotent à a. L'unicité est évidente puisque deux cardinaux distincts ne peuvent être équipotents. D'autre part, soit a le plus petit ordinal tel que x soit subpotent à a. On voit que cet ordinal est nécessairement un cardinal: on l'appelle cardinal de x. Des définitions, il découle que le cardinal d'un ordinal a est un ordinal inférieur ou égal à a. Si a et {J sont des cardinaux, alors a> {J est équivalent à ca rd( a) > card({J). Ceci n'est plus vrai en général si a et {J sont des ordinaux quelconques (prendre, par exemple, a= w + 1 et {J = w). A 1' aide de la proposition 3 de 2. 6, le théorème de Zermelo peut être reformulé de la façon suivante :
THEOREME (AC) : Pour tout ensemble, il existe un ordinal qui lui est équipotent.
Supposons, jusqu'à la fin de cette sous-section, que l'axiome du choix est vérifié. Avec la remarque qui précède, on voit que tout ensemble est équipotent à un cardinal, autrement dit que le cardinal de tout ensemble existe. Ceci implique d'ailleurs que la relation ~ sur les classes cardinales est totale (voir exercice 4, où la réciproque est aussi démontrée). On voit qu'alors la classe cardinale d'un ensemble x est avantageusement remplacée par le cardinal de cet ensemble, qui en est, en quelque sorte, un représentant canonique. On fera un abus de langage assez courant consistant à ne pas distinguer nettement entre la classe cardinale d'un ensemble X (qui, rappelons-le n'est pas un ensemble) et le cardinal de X (qui est un ordinal). Cela présente évidemment quelques inconvénients (les mêmes que de confondre cardinaux finis et ordinaux finis, voir 4. 7, dernier paragraphe). Les ambiguïtés qui pourraient apparaître sont en général levées par le contexte: lorsqu'on fait un calcul de cardinalité, alors c'est la somme cardinale qu'il faut employer; si c'est un cacul sur les ordinaux (ce qui nous arrivera plus rarement), c'est la somme ordinale. De toute façon, rien n'empêche de préciser s'il y a la moindre possibilité de doute. Puisqu'on en est aux conséquences de l'axiome du choix, voici une proposition très utile:
PROPOSITION (AC) : Supposons que f soit une application surjective d'un ensemble a sur un ensemble b. Alors card(b) ~ card(a).
162
Chapitre 7. Théorie des ensembles
~ En utilisant le théorème de Zermelo, on trouve une relation de bon ordre R sur a. On définit une injection h de b dans a :soit xE b ; alors l'ensemble: { y E a ; f(y) = x } n'est pas vide, puisque f est surjective, et, par définition, h(x) est le plus petit élément (pour R) de cet ensemble. (;;)
4.12
La classe des cardinaux n'admet pas d'élément maximum:
THEOREME : Pour tout cardinal a, il existe un ordinal
fJ tel que
card({J) > card(a).
~ Remarquez d'abord qu'avec l'axiome du choix, ce théorème est évident : il suffit de considérer le cardinal de 2o.: on sait déjà qu'il est strictement supérieur à a (théorème 4 .5). Sans axiome du choix, la démonstration est un peu plus difficile. On va montrer que la classe des ordinaux subpotents à a est un ensemble. Considérons : R = { (X,r) E ~(a) x ~(a x a); X Ça et rest un bon ordre sur X}.
On a vu (proposition 3 de 2. 6) que, pour tout (X,r) E R, il existe un et un seul ordinal fJ tel que ({J,E) soit isomorphe à (X,r). Par remplacement, l'image de la fonction qui à (X,r) E R fait correspondre l'unique ordinal fJ tel que ({J,E) soit isomorphe à (X,r) est un ensemble. Mais c'est précisément la classe des ordinaux subpotents à a: si ({J,E) est isomorphe à (X,r) E R, alors il existe bien une bijection de fJ sur X, qui est une injection de fJ dans a. Réciproquement, si fest une injection de fJ dans a, alors, fest une bijection de
fJ sur son image que nous appellerons X, et r = { (x,y) EX
x
X; f-1(x) E f-l(y)}
est un bon ordre sur X qui est isomorphe (par f) à ({J,E). Il est clair que l'ensemble { fJ; fJ est un ordinal subpotent à a} est transitif : c'est donc un ordinal 1 (proposition 2.3). On remarque que 1 n'est pas subpotent à a: sinon il s'appartiendrait à lui-même, ce qui n'est pas possible. C'est donc le plus petit ordinal dont la cardinalité soit strictement supérieure à celle de a: 1 est un cardinal strictement supérieur à a. (;;)
Si a est un cardinal, on appellera cardinal successeur de a et on notera a.. le plus petit cardinal supérieur à a (en 2. 3, on avait introduit une notation similaire, mais on 1' a abandonnée : le successeur d'un ordinal a est maintenant noté a + 1). Par ailleurs, la borne supérieure d'un ensemble de cardinaux est un cardinal :
4. Cardinalité
163
PROPOSITION : Soit A un ensemble de cardinaux; alors sup A est un cardinal.
~
Si A admet un élément maximum a, alors a= sup A. Posons a= sup A. Soit fJ un ordinal strictement inférieur à a; par définition de la borne supérieure, fJ n'est pas un majorant de A, et il existe donc un ordinal 'Y appartenant à A tel que 'Y > {J. Comme 'Y appartient à A, on a : a ~ 'Y et ca rd a~ ca rd 'Y= 'Y> {J. Le cardinal de a est donc strictement supérieur à tout ordinal strictement inférieur à a, ce qui montre que a est un cardinal. ~
Cela montre en particulier que la classe des cardinaux n'est pas un ensemble: sinon sa borne supérieure en serait un élément maximum, ce qui contredirait le théorème ci-dessus. 4.13
On peut définir par induction une fonction strictement croissante de la classe des
ordinaux dans la classe des cardinaux infinis. On utilise habituellement la lettre hébraïque « ~ » (lire aleph) pour désigner cette fonction :
•
~o
= w (le plus petit ordinal infini)
;
• si a= fJ + 1 est un ordinal successeur, alors ~a = ~~. • si a est un ordinal li mi te, alors ~a = su p{ ~tl ; fJ < a} (c'est un cardinal d'après la proposition 4 .12). Le fait que la fonction ~ soit strictement croissante (donc injective) est évident à partir de la définition. Cela montre en particulier que, pour tout ordinal a, ~a ~ a (voir lemme 2. 6). On voit que, pour tout ordinal a, ~a est un cardinal infini. On peut montrer aussi que, pour tout cardinal infini À, il existe un ordinal a tel que ~a= À : on a vu que ~>.+ 1 > À, donc il existe un plus petit ordinal a tel que ~a > À ; a ne peut pas être limite, sinon, par définition de ~0, il existerait un ordinal 'Y< a tel que ~'l> À, contredisant la minimalité de a. Comme a ne peut pas non plus être égal à 0, il existe un ordinal
fJ tel que fJ + 1 = a, et ~tl ~ À
< ~tl+l =~Cl·
La cardinalité de À est donc au plus ~IJ, et comme c'est un cardinal, ~tl= À. On voit donc que la fonction ~ est une bijection strictement croissante de la classe des ordinaux sur la classe des cardinaux infinis. Supposons momentanément que l'axiome du choix soit vérifié et revenons aux preuves du théorème 4 .12. Etant donné un cardinal
À,
chacune des preuves nous a fourni
un cardinal strictement supérieur : on obtient d'une part le cardinal de 2>- (abusivement noté 2>-), et d'autre part le cardinal successeur de À, noté ..\+. Il est clair que À+ ~ 2>-.
164
Chapitre 7. Théorie des ensembles
Mais ces cardinaux sont-ils égaux? Cette question ne peut pas être décidée à l'aide des seuls axiomes de ZFC (attendez jusqu'à 5.8 si cette phrase vous paraît sybilline). On a l'habitude d'appeler «Hypothèse Généralisée du Continu» (HGC en abrégé et GCH en anglais) la propriété suivante : (HGC) Pour tout ordinal a, Nn.. 1 = c}o._ L'adjectif «généralisée» vient du fait que le cas où a est égal à 0 est particulièrement important, et est connu sous le nom «d'Hypothèse du Continu» (HC, CH en anglais) : (HC)
N1
=/-o.
L'hypothèse du continu est équivalente à l'assertion suivante: tout sousensemble infini de IR est soit équipotent à IN, soit équipotent à IR. Rappelons que «le continu» est la cardinalité de IR. 4.14 On va maintenant montrer que, en présence de l'axiome du choix, les opérations d'addition et de multiplication sur les cardinaux infinis ne sont pas très intéressantes.
THEOREME (AC) : Pour tout cardinal infini A:
1") A lJ A est équipotent à A ; T) A x A est équipotent à A .
~ Il suffit de montrer 2") : en effet, A 0 A est en bijection avec A x 2. Or card(A x A)~ card(A x 2) (corollaire 4.3). Donc card(A x A) =card(A) implique bien: card(A 0 A)= ca rd( A). On raisonne par induction, et on suppose que, pour tout cardinal infini p strictement inférieur à A, p x p est équipotent à p. On va définir sur A x A une relation d'ordre ~R de la façon suivante: si {J, 7, P,, 71 sont des éléments de A, alors ({J, 7) ~R (P,, 11) si et seulement si : sup({J, 7) < sup(P,, 71), ou sup({J,7) = sup(P,,71) et {J < P,, ou sup({J,7) = sup(P,,71) et {J= P, et 7 ~ 71· On laisse au lecteur le soin de vérifier que ~R est effectivement une relation d'ordre. Montrons que c'est un bon ordre: soit X un sous-ensemble non vide de A x A. On considère : X1= { ({J,7) EX; pour tout ({3,,71) EX, sup({J,7) ~ sup(P,,71) }, c'est-à-dire l'ensemble des éléments ({J,7) de X tels que sup({J,7) soit minimum; X1 n'est pas vide, et on considère successivement :
165
4. Cardinalité
x2 = { (P,7) E xl; pour tout (.81,71) E xl, p ~Ill}, et X3 = { ({J,7) E X2; pour tout (fl1,71) E X2, 7 ~ 71 }. Alors X3 n'a qu'un seul élément qui est le plus petit élément de X. D'après la proposition 3 de 2. 6, il existe un ordinal a et un isomorphisme f de (a,E) sur (.X x À, ~R)· On va voir que cet ordinal a ne peut pas être supérieur à À. En supposant le contraire, on voit que À E a. Posons f(..X) = (.Bo,7o) ; ,8o et 1o sont donc des ordinaux appartenant à À, et ftx (la restriction de f à .X) est une bijection de À sur l'ensembleY={(P,7); (P,7)
COROLLAIRE (AC) : 1") Si X et Y sont des ensembles non vides dont l'un au moins est infini, alors :
card(X
x
Y)= card(X U Y)= sup (card(X),card(Y)) .
2") Si (Xi ; i E 1) est une famille d'ensembles et si l'un des Xi est infini, alors: card(V Xi)~ sup(sup{ card(Xi); i E 1 }, card(l)). 1E
1
3") Une réunion
dénombrable
d'ensembles
dénombrables
est
dénombrable.
~
1• ) Posons : À= sup ( card(X),card(Y) ).
Il est d'abord clair que l'application identique de X dans lui-même est aussi une injection de X dans X U Y. Ceci montre que card(X) ~ card(X u Y). Pour la même raison, card(Y) ~ card(X U Y), et donc card(X U Y) ;>,
À.
Par ailleurs, si y est un point de Y (qui
n'est pas vide), l'application qui à xE X fait correspondre (x,y) est injective de X dans X x Y. On en déduit card(X) ~ card(X x Y), et, comme précédemment, card(X x Y) ~ À. Dans 1' autre sens, d'après le corollaire 4 . 3, on a : ca rd (X x Y) ~ À x À, et d'après le théorème précédent, À x À= À. On obtient donc card(X x Y) ~ À. Il y a aussi une injection f de X U Y dans X 0 Y: si xE X, alors f(x) = (x,O) sinon f(x) = (x,l). Cela montre que: card(X U Y) ~ card(X 0 Y) ~ À
+ À= À.
2") Posons X=V Xi et À=sup(sup{card(Xi); i E 1}, card(l)). Par hypothèse, lE 1
À est infini. Pour chaque xE X, l'ensemble lx= { i E 1 ; xE Xi} n'est pas vide, donc, par
166
Chapitre 7. Théorie des ensembles
AC, il existe une application f de X dans 1 telle que, pour tout xE X, xE Xrcx>. D'autre part, pour tout i E 1, l'ensemble {g; g est une application injective de Xi dans À} n'est pas vide (puisque card(Xi) ~ À), et donc, en utilisant encore une fois l'axiome du choix, on peut trouver une famille (gi ; i E 1) telle que, pour tout i E 1, gi est une application injective de Xi dans
À.
On vérifie alors facilement que l'application de X dans 1 x
À
qui à
xE X fait correspondre (f(x),grcx> (x)) est injective, ce qui montre que la cardinalité de X est inférieure ou égale à À x À, qui elle-même est égale à À. 3") C'est une conséquence à peu près évidente de 2" ). On la signale d'abord parce qu'elle est importante, ensuite pour insister sur le fait que la preuve utilise
1' axiome du choix. ~
REMARQUE: On voit donc que si À et p sont deux cardinaux infinis tels que alors À + p = À + À et À x p = À x À (voir la remarque après le corollaire 4 . 3)
À
> p,
Voici une petite propriété fort utile :
PROPOSITION (AC) : Soient B un ensemble infini et A un sous-ensemble de B, et on suppose que card A < card B. Alors ca rd B = card(B- A).
~ En effet, B =A IJ (B-A). D'après le corollaire 4.14, card B est soit égale à card A, soit égale à card(B - A) (parce qu'elle est égale à sup (card A,card(B- A))). Par hypothèse, l'éventualité ca rd A= ca rd B est impossible. ~
4.15
On voit donc que la cardinalité de l'union d'une famille d'ensemble est facile à
contrôler. Il n'en est pas du tout de même de la cardinalité d'un produit infini. Le théorème suivant, dû à Kônig, donne une indication :
THEOREME (AC): Soient (Xi; i E 1) et (Yi; i E 1) deux familles d'ensembles, et on suppose que, pour tout i E 1, card(Xi) < card(Y i)· Alors card(V Xi)< card("fl Yï)· t~l
(Attention : les inégalités sont strictes !)
Id
167
5. L'axiome de fondation
~
Posons X=
U if.l
Xi et Y=
nif.l Yi, et soit f une application de X dans Y. On va
voir que f n'est pas surjective. Pour chaque xE X, f(x) s'écrit sous la forme (f(x)i; i E 1), où, pour tout i E 1, f(x)i E Yi. Pour chaque i E 1, on peut donc définir une application fi de Xi dans Yï, par: pour tout xE Xï, fi(x) =f(x)i· Puisque card(Xi) < card(Yi), l'application fi n'est pas surjective sur Yi, et donc, l'ensemble Bi= {y E Yi; pour tout xE Xï, fi(x) *Y} n'est pas vide. En utilisant l'axiome du choix, on voit qu'il existe un élément b =(bi ;
"fT
i E 1) E Bi. Alors b ne peut pas être dans l'image de f: si on suppose b =f(x), avec rd xE X, alors il existe i E 1 tel que xE Xï, et fi(x) =bi, ce qui contredit le fait que bi appartient à Bi· ~
On verra (exercice 16) des applications du théorème de Kônig.
5. L'AXIOME DE FONDATION ET LE SCHEMA DE REFLEXION
L'axiome de fondation 5.1 Il y a encore au moins une question importante et naturelle dont nous n'avons pas discuté : existe-t-il un ensemble x s'appartenant à lui-même? L'intuition commune
semble être contre une réponse affirmative, mais nous nous garderons bien d'aborder le problème sous cet angle. Comme d'habitude, on adoptera une attitude axiomatique : on va introduire, puis exploiter un nouvel axiome, l'axiome de fondation, qu'on notera AF, dont une conséquence sera en effet qu'il n'existe pas d'ensemble s'appartenant à lui -même. On utilisera cet axiome pour montrer quelques résultats de consistance relative . • L'axiome de fondation: Vvo(-wo ~ 0 ===) 3v1(v1 E Vo 1\ von vl ~ 0)). On montre d'abord que AF implique:
Vvo(vo
~
vo).
168
Chapitre 7. Théorie des ensembles
En effet, soit x un ensemble. Alors {x} n'est pas vide, donc, d'après AF, il existe un ensemble y E {x} tel que y n {x} est vide. Or, y ne peut qu'être égal à x, et par conséquent, x n {x} est vide, ce qui montre bien que x t. x. La proposition suivante ne sera pas utilisée par la suite. Elle aidera peut-être à mieux saisir la signification de 1' axiome de fondation. Elle utilise 1' axiome du choix.
PROPOSITION (AC) : L'axiome de fondation est équivalent à la propriété
suivante: (*) Il n'existe pas de famille (ai; i E w) telle que, pour tout i E w, a i+l E ai·
(;;) On montre d'abord que AF implique(*) (sans axiome du choix): soit (ai; i E w) une famille indexée par w, et considérons l'ensemble A= {ai ; i E w}. D'après AF, il existe un élément de A, disons an, tel que an nA= 0. Donc an+l t. an. Supposons réciproquement que AF soit faux. Il existe donc un ensemble non vide x, tel que pour tout élément y de x, y n x ne soit pas vide. Avec l'axiome du choix, on voit qu'il existe une application f de x dans lui-même telle que, pour tout y Ex, f(y) E y n x. Soit a 0 un élément de x. On définit la suite (ai ; i E w) par récurrence sur i : pour tout i E w, a i+l = f(a i)· On a bien :pour tout i E w, a i+l E ai· f;)
5.2
On va donner une autre propriété équivalente à AF, qui va nous demander un
peu plus de travail. On définit par induction sur l'ordinal a, un ensemble Vn par: Vn = l J s.Jl(Vtl)· tl(n Ainsi, V0 qui est l'union de la famille vide, est égal à 0. On peut aussi calculer : V1 ={0}, V2={0,{0} }, V3={0,{0},{ {0} },{0,{0}}} etc. On voit aussi que si fJ et a sont deux ordinaux tels que fJ < a, alors Vtl Ç Vnet, • si a est un ordinal limite, Vn = l J Vtl ; tl(n • si a est égal à fJ + 1, alors Vn = s.Jf(V tl)· Désignons par 'Y la classe des ensembles x tels qu'il existe un ordinal a tel que xE Vn; pour chaque ensemble x dans 'Y, on appelle rang de x et on note rg(x) le plus petit ordinal a tel que x E Vn· On remarque que le rang de x est toujours un ordinal successeur (parce que, si a est un ordinal limite, Vn = ~ Vtl). Le lecteur pourra aussi montrer par induction que pour tout ordinal a, a a~:rtient à Vn+l mais pas à Vn (autrement dit, rg(a) =a+ 1).
169
5. L'axiome de fondation
REMARQUE : Rappelons qu'un ensemble x est transitif si et seulement si, pour tout y Ex et tout z E y, z Ex. Pour tout ordinal a, Vn est un ensemble transitif: si xE Vn et y Ex, alors il existe fJ < cr tel que x Ç VfJ, et donc y E VfJ· On a montré par dessus le marché que, si x et y sont dans ret si x E y, alors rg(x) < rg(y).
Tout ensemble x est inclus dans un ensemble transitif : on définit par récurrence sur l'entier n un ensemble Xn de la façon suivante : e Xo =X;
• pour tout entier n,
Xn+t
= (U t) U Xn
.
lEXn
Posons cl(x) = U Xn. Il est d'abord clair que x Ç cl(x). D'autre part cl(x) est un n EID ensemble transitif: si y E cl(x) et z E y, alors il existe un entier n tel que y E Xn et donc, z E Xn+t· De plus, cl(x) est le plus petit ensemble transitif dans lequel x soit inclus : si t est un ensemble transitif et si x Ç t, alors on voit par induction sur n E w que Xn Ç t, et donc cl(x) Ç t. L'ensemble cl(x) s'appelle la clôture transitive de x.
THEOREME : L'axiome de fondation est équivalent à la propriété
suivante: (**) Pour tout ensemble x, il existe un ordinal cr tel que xE Vn· (Autrement dit, la classe rest l'univers tout entier.)
~ On montre d'abord que ( **) implique 1' axiome de fondation : soit x un ensemble non vide; il s'agit de trouver un élément y de x tel que y n x= 0. Par hypothèse, tout
ensemble a un rang; choisissons un élément y de x de rang minimum ; si t E y, alors rg(t) < rg(y) (voir remarque ci-dessus), et par minimalité de rg(y), tt x. Voyons la réciproque. On commence par une remarque: si tous les éléments d'un ensemble x appartiennent à Y, alors x lui-même appartient à Y. En effet, par remplacement, l'image de x par la fonction rg est un ensemble : Y= { fJ; il existe y Ex tel que rg(y) = {J}. Soit cr= sup Y. Alors x Ç Vn, et par conséquent xE Vn+t· Soit x un ensemble quelconque. Posons y = cl(x), et considérons : z = { t ; tE y et t n'est pas dans Y}. On va montrer que z est vide, ce qui impliquera que tous les éléments de x sont dans r, et, avec la remarque que l'on vient de faire, que x est dans r. Si z n'était pas vide, alors, par AF, il existerait un élément t de z tel que t n z = 0. Soit u Et. D'abord, ut z (t n z = 0) ; ensuite, parce que y est transitif, u E y, et donc, par définition de z, u est dans r. Autrement dit, tous les éléments de t sont dans r, et donc test dans r, ce qui est contradictoire avec t E z. fJ
170
Chapitre 7. Théorie des ensembles
Quelques résultats de consistance relative 5.3 Les théorèmes de consistance relative ont la forme suivante: étant données deux théories T1 et T 2 (très souvent, T 2 contient T 1), alors, si T 1 n'est pas contradictoire, il en est de même de T2. Dans les exemples que nous allons donner, T1 sera la théorie ZF. Le principe des démonstrations de ces théorèmes est simple: à partir d'un modèle de T 1, on construit un modèle de T 2 . Une remarque en passant : on peut préférer démontrer des théorèmes de cohérence relative qui s'exprimeraient ainsi : si on ne peut pas démontrer de contradiction à partir de T 11 alors on ne peut pas démontrer de contradiction à partir de T 2 . Evidemment, le théorème de complétude implique qu'il n'y a pas de différence entre ces deux formulations. Cependant, la seconde formulation présente l'avantage, écrasant lorsqu'on s'intéresse aux fondements des mathématiques, de pouvoir s'exprimer à l'aide de notions appartenant aux mathématiques finies (les formules sont des suites finies de symboles, les preuves des suites finies de formules, etc.). En fait, les preuves que nous allons présenter permettent, bien que ce ne soit pas évident a priori, de déduire un algorithme qui, à partir d'une démonstration formelle d'une formule notoirement fausse F (par exemple 0 = 1) dans T 2 donne une démonstration formelle de F dans T 1. N'insistons pas plus sur ce point. On peut remarquer que l'ensemble des entiers, muni des fonctions adéquates, est un modèle des axiomes de Peano ; on a donc montré : • Si ZF n'est pas contradictoire, alors l'arithmétique de Peano, .ffJ, n'est pas contradictoire non plus. Cela montre, en passant, à cause du second théorème d'incomplétude de Gôdel (chapitre 6), qu'on ne peut pas espérer avoir un théorème de consistance absolue, par exemple : ZF n'est pas contradictoire. Pour en terminer avec ces relations entre ZF et .ffJ, disons que ZF est beaucoup plus fort que .ffJ: la consistance de .ffJ peut s'exprimer par une formule de la théorie des ensembles, et cette formule est démontrable à partir de ZF (parce que la structure IN est un point de U, et le fait que ce soit un modèle de .ffJ est un théorème de ZF) ; la consistance de ZF peut s'exprimer par une formule de l'arithmétique (parce que, de toute évidence, ZF est une théorie récursive), mais, en revanche, cette formule n'est pas démontrable dans .ffJ (sinon, avec le théorème de consistance cité ci-dessus, on en déduirait que ,9J démontre sa propre consistance, ce que
le théorème de Gôdel interdit). 5.4 Si A est une classe (ou un ensemble, considéré comme la classe de ses éléments), on considérera la sous-structure de .U dont la base est A, que l'on notera . C'est parmi ces structures que l'on va trouver les modèles des différentes théories dont on montre la consistance.
171
5. L'axiome de fondation
Soient D[v 0] une formule et .A la classe des ensembles x satisfaisant D[x]. Etant donnée une formule F, on définit la formule FA, appelée relativisée de F à .A, par induction (intuitive) sur la complexité de F : - si F est atomique, alors F .A= F ; - si F est égale à -.G, alors F .A= -.G .A ; -si F est égale à (G aH), où a est un connecteur propositionnel binaire, alors F .A= (Gvi a H .A) ; -si F est égale à 3vG, où v est un symbole de variable, alors : F .A= 3v(D[v] 1\ G .A) ; -si F est égale à VvG, où v est un symbole de variable, alors : F.A =Vv(D[v] =::}GA). On montre alors sans peine, toujours par induction intuitive sur la hauteur de F que, pour toute formule F[v 1,v2, ... ,vn] et pour tous xh x2, ... ,xn dans .A,
.Ut= F.A[xhx2,... ,xn] si et seulement si <.A, E > t= F[xhx2, ... ,xn]. On va avoir besoin, à plusieurs reprises, des quelques remarques qui suivent : 1") Si
.A est une classe transitive, alors
<.A, E >
satisfait l'axiome
d'extensionnalité. Soient en effet x et y deux ensembles distincts dans .A. Par extensionnalité dans U, il existe un ensemble z qui appartient à l'un, disons par exemple x, mais pas à l'autre. Puisque z appartient à x, que x est dans .A et que .A est transitif, z est dans .A, et il existe un élément de .A, à savoir z, qui appartient à x mais pas à y : c'est ce qu'il nous fallait pour montrer l'extensionnalité dans .A.
2") Si a est un ordinal et x et y appartiennent à Vo., alors {x, y} appartient à Vo.+l· Si 6 est un ordinal limite et si x et y appartiennent à V5, alors il existe un ordinal
a< 6 tel que x et y appartiennent à Vo., et donc { x,y} appartient à V5; on en déduit que, si best un ordinal limite, alors
fJ + 1 ; si y E Ux, alors il existe fJ et rg(y) < fJ. Cela implique :
_z Ex tel que y E z. On a vu (remarque 5. 2) que rg(z) ~
U
x Ç VIJ et Ux E Vo.· 5") Pour tout ordinal a et pour tout a E Vo., on a :
La vérification ne pose aucun problème : on voit qu'un élément a de Vo. est transitif si et seulement si il l'est dans
172
Chapitre 7. Théorie des ensembles
ill= On(a] si et seulement si < r, E > 1= On(a]. Il y a bien d'autres propriétés qui passent ainsi de il à
5.5
THEOREME : Si ZF est consistant, alors ZF
~ Soient 'lt un modèle de ZF et formule:
r
+ AF est consistant.
la classe des ensembles x satisfaisant la
F(x] =il existe un ordinal a tel que x E V0 . On va montrer que < r, E > est un modèle de ZF + AF. L'axiome d'extensionnalité, les axiomes de la paire, de la réunion, et des parties ont déjà été montrés dans les remarques qui précèdent. • Les axiomes de remplacement: Soient donc x un élément de ret G[v0,v1] une formule qui, dans fonctionnelle en v0 , autrement dit telle que :
< Y,E >,est
b = {z; (3y E x)H[y,z] }. Alors b est dans
r
(parce que tous ses éléments sont dans Y), et c'est ce qu'il fallait
démontrer. • L'axiome de fondation : soit x un ensemble qui se trouve dans r ; alors tous les éléments de x sont aussi dans r. Soit y un élément de x, dont le rang a est minimum. Alors, si u est un élément de y, son rang est strictement plus petit que a (remarque 5. 2), et u n'appartient pas à x: x n y est vide. • L'axiome de l'infini: west dans r. On a vu que c'est un ordinal der, et il est facile de voir que, dans r, il n'est ni vide ni successeur. On peut voir que c'est, dans r, le premier ordinal infini. fJ
REMARQUE 1 : Dans la démonstration qui précède, on pourrait croire qu'il est évident que l'axiome de fondation est satisfait dans r. Ceci n'est pas tout-à-fait vrai : la classe r est définie par une formule que l'on appelle F(v0]. Alors il faut se rendre compte que F a même signification dans 'lt et dans
r, autrement dit que :
173
5. L'axiome de fondation
.UF Vvo(F(vo) {::=::) Fr(v0]). Si, dans r, on définit par induction sur a les ensembles W0 par: Wo=0; W0 = lJ ~(Wn); !)'Zn
alors, il est facile de vérifier que, pour tout ordinal a, V0 = W0 . Ceci, avec le théorème
5. 2 (et le fait que les ordinaux sont les mêmes dans .U et dans r), donne une autre démonstration du fait que
modèle de ZFC
+ AF.
En effet, si X= (xi ; i E 1) est une famille d'ensembles non vides se
trouvant dans r, alors 1 lui-même est dans r (c'est le domaine de définition de x, considéré comme une application) ; donc 1 est inclus dans U U X) ; de même chacun des
Xj
est dans
r. Cela montre que n'importe quel élément de fT rEl
Xj
est dans
r.
5.6 Le second théorème de consistance relative que nous allons voir montre que 1' axiome de 1'infini est indispensable :
THEOREME : Si ZF est consistant, alors zF-
~
+ ...,Jnf est aussi consistant.
On va montrer que VID est un modèle de zF-
+ ...,Jnf.
L'extensionnalité, les
axiomes de la paire, de la réunion et des parties ont déjà été traités. Passons à l'axiome de remplacement. Remarquons que, pour tout entier n, Vn est un ensemble fini (démonstration évidente par récurrence sur n). Donc, tous les éléments de VID sont des ensembles finis. Réciproquement, si x est un ensemble fini tel que tous les éléments de x appartiennent à VID, alors x appartient à VID: en effet, X= { rg(y) ; y E x}, 1'image de x par la fonction rg est un ensemble (remplacement) fini (proposition 3 de 4. 7), et, par hypothèse, c'est un sous-ensemble de w. Si n = sup X, xE Vn+l·
Soient x un élément de VID et F[vo,v 1) une formule qui, dans
>
b = {z ; (3y E x)G[y,z) }. Alors b est un ensemble fini (parce qu'il existe une surjection d'une partie de x sur b), dont tous les éléments appartiennent à VID· On vient de voir que cela implique que b E VID.
174
Chapitre 7. Théorie des ensembles
Il est facile de montrer que VllJ ne satisfait pas l'axiome de l'infini : si x est un élément de vllJ, x est fini et il n'existe pas, ni dans 'il' ni a fortiori dans vllJ, d'application de x dans x qui soit injective et non bijective (contrairement à ce qui se passe dans tout modèle de ZF, voir remarque 4 .8). ~
REMARQUE : il est très facile de montrer que l'axiome de fondation est vrai dans VllJ; l'axiome du choix y est aussi vrai (même s'il n'est pas vrai dans .U), mais c'est un peu plus délicat à démontrer.
Cardinaux inaccessibles
5.7
Dans cette sous-section, on va travailler dans ZFC.
DEFINITIONS : Soit À un cardinal.
On dit que À est fortement limite si, pour tout cardinal p i) strictement inférieur à À, le cardinal de 21L est aussi strictement inférieur à À. ii) On dit que À est régulier si, pour tout sous-ensemble X de À de cardinalité strictement inférieure à À, sup(X) < À. iii) On dit que À est inaccmsible s'il est strictement supérieur à N0 , régulier et fortement limite.
Voyons quelques exemples. Pour tout ordinal a, définissons par induction un cardinal Jo. : • Jo= No; • si ~est un ordinal limite, alors J,; =
U
o.t.6
Jo.;
• Jo.+l = 2lo.. (Le symbole« J »se lit beth; c'est la deuxième lettre de l'alphabet hébraïque.) On montre sans peine que, pour tout ordinal a, No.~ Jo. (par induction sur a), et si on suppose l'hypothèse généralisée du continu (voir 4.13), alors No.=Jo.. Il est clair que JllJ est un cardinal fortement limite. En revanche, il n'est pas
régulier : en effet, si on pose : X= { Jn ; n E w},
5. L'axiome de fondation
175
alors X est dénombrable, donc de cardinalité strictement inférieure à )ID, et pourtant
sup(X) =)ID. Par ailleurs, pour tout ordinal a, N0 • 1 est un cardinal régulier (pour montrer cela, l'axiome du choix est nécessaire; on peut montrer que ce fait n'est pas une conséquence de ZF) : soit X un sous-ensemble de No+l de cardinalité au plus N0 . Tous les éléments de X ont une cardinalité au plus égale à N0 , et donc, U x, qui est égal à sup(X) XEX a une cardinalité au plus égale à N0 (corollaire 4 .14, 2")). Evidemment, No+l n'est pas fortement limite, puisque .Jo.~ No+l· On n'a donc pas d'exemple de cardinaux inaccessibles, et cela n'est pas très étonnant puisque:
THEOREME: Si ZFC est consistant, alors ZFC +«il n'existe pas de
cardinaux inaccessibles» est aussi consistant.
~
Soit ll un modèle de ZFC. On veut trouver un modèle de ZFC qui ne contienne
pas de cardinaux inaccessibles. On peut supposer qu'il y a, dans U, un cardinal inaccessible
K.,
sinon il n'y a rien à faire. On va montrer que
ZFC, et que, si " est le premier cardinal inaccessible dans U, alors il n'y a pas de
v....
cardinaux inaccessibles dans
Les axiomes d' extensionnali té, de la paire, de la réunion et des parties se montrent comme d'habitude. Pour le schéma de remplacement, on montre d'abord que si xE
ca rd (x) <
v...,
alors
Si x E V..., il existe a < " tel que x soit inclus dans V0 ; il suffit donc de montrer que si a< K., alors card{V 0 )
card(V Il) < K., donc, parce que " est fortement limite, card(V 0 ) < K.. Si a est un ordinal limite, alors V0 =lJVfl, et card(V0 )=sup(sup{card(Vf}); {J
K.
et dont tous les éléments appartiennent à V.... Alors x appartient à Vlt : on
considère X= {a E "; il existe y Ex tel que a soit le rang de y}. L'ensemble X est l'image de x par la fonction rang, donc sa cardinalité est strictement inférieure à " (proposition 4.11 ). Par régularité de K., {J = sup{X) est aussi strictement inférieur à K., et x est inclus dans VIl. Cela montre que xE Vll+l· Pour montrer que les axiomes de remplacement sont vrais dans Vlt' il suffit d~adapter la démonstration qui nous a servi pour VU) (remplacer VU) par VIt et «fini» par «de cardinalité inférieure à
IP> ).
L'axiome de l'infini est vérifié par
w est un ordinal infini dans
176
Chapitre 7. Théorie des ensembles
< V E > 1= il n'existe pas de cardinaux inaccessibles. K.,
On se souvient ici que les cardinaux de VIt sont les mêmes que ceux dell. Parce "est le plus petit cardinal inaccessible, on sait déjà que : lll= il n'y a pas de cardinaux inaccessibles appartenant à VK.' et il suffit donc de montrer que, pour tout x E VK. : lll= x est un cardinal inaccessible si et seulement si < VK., E > 1= x est un cardinal inaccessible. On vérifie sans difficulté que, pour tout élément x de VK.' si x est un cardinal, lll= x est régulier si et seulement si
5.8 Il y a d'autres théorèmes de consistance relative. Les plus célèbres sont : Si ZF est consistant, alors les théories suivantes le sont aussi : ZFC , ZFC + HGC (Godel), ZF + ·AC, ZFC + ·HC (Cohen) (voir le livre de Krivine, «Théorie axiomatique des ensembles», PUF).
Le schéma de réflexion 5.9 Dans cette sous-section, on travaille dans ZF + AF. Le schéma de réflexion est la collection des formules pouvant s'écrire : Vv0Vv 1... Vvn3a{ a est un ordinal A vo EV o. A v1 EV o. A ... A Vn EV o. A (F[vo,vh···,vn] <===> FVo.[vo,v 1,... ,vn])). où n est un entier intuitif et F[vo,vh···,vn] est une formule de :!.
DEFINITION : Soit F[vo,vh···,vn] une formule de :tet A un ensemble. On dit que F se reflète dans A si lll= VvoVv 1... Vvn((vo E A A v1 E A A ... A Vn E A)=} (F[vo,vl,···,vn) <===> FA[vo,vl, ... ,vn])).
Autrement dit, F[v 0 ,v1,. .. ,vn) se reflète dans A si et seulement si, pour tous éléments a0 ,a 1,... ,an de A, lll= F[a 0,ah···,an] si et seulement si 1= F[ao,a1, ... ,an). Le schéma de réflexion exprime donc que, pour toute formule F, il existe un ordinal a tel que F se reflète dans Vo.·
177
5. L'axiome de fondation
Il résulte immédiatement de la définition que, si F1 et F2 se reflètent toutes les deux dans A, alors il en est de même de •F, F1 A F2 , F1 V F2 , F1 ::::::::) F2 et F1 Ç::::::) F2 •
THEOREME : Pour toute formule F[v0 ,v, ... ,vn] de $on a: ll F VvoVv 1... Vvn3t.t( l.t est un ordinal A vo EV o. A v, EV o. A ... A Vn E Vo. A
(F[vo,v,, ... ,vn]
Ç::::::)
FVOo(vo,v,, ... ,vn])).
(Autrement dit, le schéma de réflexion est conséquence de ZF + AF.) On a donc un théorème de ZF + AF pour chaque formule F. Tel qu'il est exprimé ci-dessus (pour toute formule F ... ),ce n'est pas une formule de $. ~ On va montrer que, si F est une formule, et si fJ est un ordinal, alors il existe un ordinal a > fJ tel que F se reflète dans Vo.· Cela démontrera bien le théorème (ao, a, ... an étant fixés, il suffira de choisir l'ordinal fJ de sorte que VtJ contienne tous ces points).
On a d'abord besoin du lemme suivant :
LEMME : Soient F une formule et (Xn ; n E w) une suite croissante (pour l'inclusion) d'ensembles. On suppose que, pour tout n E w et pour toute sous-formule G de F, G se reflète dans Xn. Alors F se reflète dans
X=U Xn. nu.o
~
La démonstration se fait par induction intuitive sur la hauteur de F. Si F est atomique, c'est évident, puisque F se reflète dans n'importe quel ensemble. Supposons maintenant que F = F1 A F2. On voit que F1 et F2 sont des sous-formules de F, donc, par hypothèse, elles se reflètent dans Xn, pour tout n E w. Il découle de l'hypothèse d'induction que F1 et F2 se reflètent dans X, et on a déjà remarqué que cela implique que F1 A F2 se reflète dans X. Les autres connecteurs propositionnels se traitent exactement de la même façon. Il ne reste plus que le cas des quantificateurs. On va traiter, par exemple le cas où F est de la forme 3v0G[v0 ,v1, ... ,vk]· Comme G est une sous-formule de F, G se reflète dans chacun des Xn, et, par hypothèse d'induction, G se reflète dans X. Supposons d'abord que a 1,a 2 , ... ,ak soient des éléments de X et que :
Chapitre 7. Théorie des ensembles
178
et, puisque G se reflète dans X, .UI= G[ao,ah···,ak] et .UI= 3voG[vo,ah···,ak]· Réciproquement, supposons que a1, ... ,ak soient des éléments de X et que : .U 1= 3voG[vo,ah···,ak]· Alors il existe un élément n E w tel que Xn contienne a1,... ,ak (remarquez qu'ici, k est un entier intuitif alors que n est un entier au sens de .U). Du fait que F se reflète dans Xn, on déduit :
Pour achever la démonstration, il suffit de montrer la propriété ( *) suivante : pour toute formule F et pour tout ordinal {J, il existe un ordinal a supérieur à fJ tel 1 que F et toutes ses sous-formules se reflètent dans Vo., par induction intuitive sur la hauteur de F. Le cas où F est atomique est évident (prendre a= /f), de même que le cas où F = ·G (une formule se reflète dans un ensemble si et seulement si sa négation se reflète dans cet ensemble). On va traiter, par exemple, le cas où F = F1 A. F2 (les autre connecteurs binaires se traitent exactement de la même façon). On définit, par induction sur n E w, une suite croissante d'ordinaux an de la façon suivante:
• ao=fJ; • si n est pair et non nul, alors an est le plus petit ordinal supérieur à an-1 tel que F1 et toutes ses sous-formules se reflètent dans V (un tel ordinal existe par O.n hypothèse d'induction) ; • si n est impair, alors an est le plus petit ordinal supérieur à an-1 tel que F2 et toutes ses sous-formules se reflètent dans V (même remarque). o.n Remarquez que, pour pouvoir définir la suite (an ; n E w) par induction, il faut s'être persuadé auparavant que, si F est une formule fixée de $, il existe une formule G[v0] de $telle que, pour tout ensemble x, G[x) est équivalent à «x est un ordinal et F et toutes ses sous-formules se reflètent dans Vx». Posons a= sup {an ; n E w}. On voit alors que Vo. est l'union de la famille (V ; n E w et n est pair) ; d'après le lemme, F1 et toutes ses sous-formules se reflètent O.n dans Vo.· Mais Vo. est aussi la réunion de la famille (V ; n E w et n est impair), et F2 et O.n toutes ses sous-formules se reflètent aussi dans Vo.· En conséquence, F et toutes ses sous-formules se reflètent dans Vo.· Passons, pour terminer, au cas où F est égale à 3voG[vo,v1, ... ,vk). On prouve
5. L'axiome de fondation
179
d'abord : pour tout ordinal 1, il existe un ordinal h tel que :
Ut= VvNv2 ... Vvk((v1
E v'l A v2 E v'l A ... A Vk E v'l A 3voG[vo,vh ... ,vk])
==)
3vo(vo E VEJ A G[vo,v 1,... ,vk])). On considère à cet effet la formule suivante H[w,a) : s'il existe v0 ,v1,v 2, ... ,vk tels que w = (v 1,v2, ... ,vk) et G[vo,vh ... ,vk), alors a est le plus petit ordinal tel. qu'il existe u satisfaisant u EV o. et G[u,v 1,... ,vk); sinon, a= 0. On voit donc que la formule H définit une fonction, et, par remplacement, l'image de l'ensemble des k-uples d'éléments de V'l est un ensemble Y. Il suffit de choisir h de sorte que VEl contienne Y. On définit alors par induction une suite (an ; n E w) de la façon suivante :
• ao=fJ; • si n est pair et non nul, alors an est le plus petit ordinal supérieur à an-1 tel (un tel ordinal existe par que G et toutes ses sous-formules se reflètent dans V o.n hypothèse d'induction) ; • si n est impair, alors an est le plus petit ordinal tel que : VvNv2 ... Vvk((v 1 EV A v2 EV A ... A Vk EV A 3voG[vo,v1, ... ,vk]) ==) O.n-1 o.n-1 O.n-1 3vo(vo EV A G[vo,v 1,... ,vk])). O.n Soit a la borne supérieure de l'ensemble {an; nEw}. Alors, comme précédemment, Vo. est l'union de la famille (V ; n E w et n est pair), et, d'après le lemme, G et toutes ses O.n sous-formules se reflètent dans Vo.· Il reste à montrer que F lui-même se reflète dans Vo.· Supposons d'abord que a 1,a 2, ... ,ak appartiennent à Vo. et que:
Ut= G[ao,a 1,a2, ... ,ak) et Ut= 3voG[vo,a1,a2, ... ,ak]· Réciproquement, supposons que : Ut= 3voG[vo,a1,a2, ... ,ak]· On sait qu'il existe un entier n, que l'on peut supposer pair, tel que a 1,a 2,... ,ak appartiennent à V ; par définition de an .. 1, il existe un élément a0 de V tel que: o.n o.n +1 Ut= G[ao,a1,a2, ... ,ak], et, parce que G se reflète dans Vo.,
5.10
On va terminer ce chapitre par une application du théorème 5. 9 :
PROPOSITION : Si la théorie ZF est consistante, alors elle n'est pas finiment axiomatisable.
180
Chapitre 7. Théorie des ensembles
~ On raisonne par 1' absurde ; si ZF est finiment axiomatisable, il en est de même de ZF + AF: soit F une formule de $équivalente à ZF + AF. on travaille dans un modèle .Ude ZF + AF (qui est consistante d'après le théorème 5.5). D'après le théorème 5. 9, il existe un ordinal a tel que :
et donc .U 1= Fva. Revenons un instant à la définition de la relativisée d'une formule (5 .4). Deux faits découlent assez facilement de cette définition: premièrement, il existe une formule G[v 0) de $tel que, pour tout ensemble A, FA est équivalente à G[A) ; deuxièmement, si A Ç B, alors (FA) 8 = F8 .
Il y a donc des ordinaux fJ satisfaisant G(VJJ). Considérons donc le plus petit < V1 ,E > est un modèle de ZF + AF, le schéma de réflexion y est vrai. Donc : < V1 , E > 1= il existe un ordinal t5 tel que Fv6. Mais on a vu en 5. 4 que les ordinaux de < V'Y,E > sont les ordinaux inférieurs à 7, et on voit aussi sans peine (cf remarque 1 de 5.5) que, pour tout xE V1 ,
et, puisque (Fv 6) de 1· ~
v1
=
Fv6,
< V5, E > est un modèle de F, ce qui contredit la minimalité
Exercices
181
EXERCICES
Dans tous les exercices ci-dessous, on se place, sauf précision contraire, dans un univers ll modèle de ZF. Les notions d'entier naturel, d'appartenance, de fonction, etc., qui interviennent ici sont intuitives : il ne s'agira pas de celles de l'univers ll. On les utilisera pour construire un univers satisfaisant certains des axiomes de ZF. On désigne par W l'ensemble des parties finies de IN. 1.
a) Soit cp une bijection de IN sur W et soit é'P la relation binaire définie sur IN par : quels que soient les entiers x et y, x é'P y si et seulement si xE rp(y). Montrer que l'univers~=
~
ne satisfasse pas AF.
Montrer que la classe On' définie dans ll par la formule:
Vy ((y Ç x A-,y= x Ay est transitif) =}y Ex) est la classe des ordinaux. 3.
Soient x un ensemble et r(x) la classe des ordinaux subpotents à x.
Montrer que r(x) est un ordinal, que c'est le plus petit ordinal non subpotent à x, et que c'est un cardinal. On l'appelle cardinal d'Hartog de x. Caractériser r(x) lorsque llsatisfait l'axiome du choix. 4.
Cet exercice est consacré à quelques énoncés équivalents à 1' axiome du choix.
Une fonction de choix sur un ensemble a est une application cp de 1'ensemble des parties non vides de a dans a telle que, pour toute partie non vide x Ça, rp(x) Ex. Montrer que AC est équivalent (moyennant ZF) à chacun des énoncés suivants : a) Pour tout ensemble a, il existe au moins une fonction de choix sur a.
182
Chapitre 7. Théorie des ensembles
b) Quels que soient les ensembles x et y et l'application surjective g de x dans y, il existe une application h de y dans x telle que go h soit l'application identique de y dans y. c) Pour tout ensemble a dont les éléments sont non vides et disjoints deux à deux, il existe un ensemble b dont 1'intersection avec chacun des éléments de a est un singleton. d) Pour tous ensembles a et b, a est subpotent à bou b est subpotent à a. (Pour l'équivalence entre AC et d)~ on pourra utiliser l'exercice 3.) La propriété d) est connue sous le nom de trichotomie, car elle peut aussi s'exprimer ainsi : étant données deux classes cardinales ,\ et p, une et une seule des trois situations suivantes se produit : •À=!J •-\
cardinales est un ordre total. 5.
Montrer que, dans la théorie ZF
+ AF,
chacun des trois énoncés suivants est
équivalent à l'axiome du choix: a) Pour tout ensemble x bien ordonnable, l'ensemble ~(x) est bien ordonnable. b) Pour tout ordinal a, ~(a) est bien ordonnable. c) Tout ensemble totalement ordonnable est bien ordonnable. 6.
Montrer, sans utiliser l'axiome du choix, que, pour tout ensemble non vide a, les
propriétés suivantes sont équivalentes : ( 1) a contient un sous-ensemble dénombrable ; (2) a contient un sous-ensemble dénombrable b tel que a et a-b soient équipotents ; (3) pour tout ensemble dénombrable b, a et a U b sont équipotents ; (4) pour tout ensemble fini x, a et a U x sont équipotents ; (5) pour tout sous-ensemble fini x de a, a et a -x sont équipotents ; (6) il existe un entier n E w, non nul, tel que, pour tout sous-ensemble x de a subpotent à n, a et a- x soient équipotents ; (7) il existe un entier n E w, non nul, tel que, pour tout ensemble x de cardinal n, a et a U x soient équipotents ; (8) pour tout t, a et a U {t} sont équipotents ; (9) il existe un élément t E a tel que a et a - {t} soient équipotents ; (10) il existe une partie de a, non vide et distincte de a, équipotente à a ; (11) il existe une partie b ç a, non vide et distincte de a, telle que a soit subpotent à b.
Exercices 7.
Déterminer le cardinal de chacun des ensembles suivants : x1 = { f E INN ; {Vn E IN) {Vp E IN){ n < p ~ f( n) < f(p)) } ; x2 ={fEINN; (3p EIN){Vn EIN){f(n) ~ p)}; xl = { f E QN; {Vn E IN) {Vp E IN){ n < p ~ f( n) < f(p)) } ; x4 ={fEQN; (3p EQ)(Vn EIN){f(n) ~ p)}; Xs =Xl n X4; Xfi = { f E QN; (3n E IN){Vp E IN){ n ~ p ~ f( n) = f(p)) } ; x7 = {fE IRN ; (Vr E IR){3n E IN){f(n) ~ r) }.
8.
Déterminer le cardinal de chacun des ensembles suivants : Eo =l'ensemble des suites de nombres rationnels (QN) ; E1 =l'ensemble des suites de nombres réels (IRN) ; E2 =l'ensemble des suites de rationnels qui convergent vers 0; El= l'ensemble des suites de rationnels convergentes ; E4 =l'ensemble des suites de rationnels bornées ; Es= l'ensemble des suites de rationnels non bornées ; E6 = 1'ensemble des applications de Qdans IR (IRQ) ; E7 =l'ensemble des applications continues de IR dans IR ; E8 =l'ensemble des intervalles ouverts de IR ; E9 =l'ensemble des ouverts de IR (pour la topologie usuelle).
9.
Déterminer le cardinal de chacun des ensembles suivants : a 1 = {fE wi.O; (Vn E w)(Vp E w)(f(n) ~ p)}; a2 = { f E wi.O ; (Vn E w)(3p E w)(f( n) ~ p) } ; al= {fE wi.O; (3n E w)(Vp E w)(f(n) ~ p)} ; a 4 = {fE wi.O; (3n E w)(3p E w)(f(n) ~ p)}; as = { f E wi.O ; (3p E w)(Vn E w)(f( n) ~ p)} ; a6={fE wi.O; (Vp E w)(3n E w)(f(n) ~ p)}; b1 = { f E wi.O ; (Vn E w)(Vp E w)(f(n) ~ p)} ; b2 ={fE wi.O; (Vn E w)(3p E w)(f(n) ~ p)}; bl={fE wi.O; (3n E w)(Vp E w)(f(n) ~ p)}; b4 = {f E wi.O ; (3n E w)(3p E w)(f( n) ~ p)} ; bs ={fE wi.O; (3p E w)(Vn E w)(f(n) ~ p)}; b6 = {fE wi.O; (Vp E w)(3n E w)(f(n) ~ p) }.
183
On suppose que l'univers satisfait l'axiome de choix. On considère deux ensembles infinis a et b, de cardinaux respectifs ..\ et p. On suppose ..\ > p (inégalité stricte). On se donne une application injective g de b dans a. On demande de déterminer le cardinal de chacun des ensembles suivants : 10.
184
Chapitre 7. Théorie des ensembles Y1 ={fE ba; card(T(a)) =1}; Y2 = {fE ba; (VxE~(a))(card(T(x)) ~ 1}}; Yl = {fE ba ; card(T-1(b)) = ..\} ; y,.={fE ba; card(T(a))=2}; Ys= a- g(b}; Y6={fE ba; (VyEb){f(g(y)}=y)}; Y1={fE ba; card(T(a))=p}.
(On rappelle que, si fE ba, f et f-l désignent respectivement l'application image directe et l'application image réciproque induites par f de ~(a) dans ~(b} et de ~(b} dans ~(a).) 11. On suppose que l'univers satisfait l'axiome du choix. On considère un ensemble a infini et on appelle ..\ son cardinal. On pose : ~*(a)=
{xE ~(a); card(x) =card(a -x)}.
a) Montrer que, pour tout entier n E w, si n =1= 0, on peut trouver des ensembles a1, a2, ... , an, tous de cardinal ..\, qui constituent une partition de a (c'est-à-dire: qui sont deux à deux disjoints et tels que V ai =a).
1< •
b) Déterminer le cardinal de chacun des éléments de
~*(a).
c) En utilisant la question a) lorsque n = 3, déterminer le cardinal de ~*(a). d) Montrer que, pour tout ensemble a1 E ~*(a), il existe une bijection f de a sur a telle que, pour tout x E a, f(x) =x si et seulement si x E a1. e) Déterminer le cardinal de l'ensemble des bijections de a sur a. f) Soit b un élément de ~*(a). Déterminer le cardinal de l'ensemble des bijections de a sur a dont la restriction à b est 1'identité sur b. g) Quel est le cardinal de l'ensemble des applications injectives de a dans
~(a)?
12. On suppose que l'univers satisfait l'axiome du choix. On considère un cardinal infini ..\,un ordinal a, et une famille d'ensembles (Xtl}fkn indexée par a telle que: • pour tout {JE a, card(Xfi} < ..\ ; • pour tous {JE a et 7 E a, si {J < 7, alors Xfi Ç X"Y. Montrer que card( U Xfi) ~ ..\. fh.n
13. On suppose que l'univers satisfait l'axiome du choix. Montrer que, pour toute famille (..\n) nEK. de cardinaux non nuls, indexée par un cardinal infini "'on a: ~ ..\n = sup ( "' sup (..\n)).
n~K.
n~K.
Exercices 14.
185
On suppose que l'univers satisfait l'axiome du choix. Soit p un cardinal infini. On définit, par induction sur les entiers, une suite de
cardinaux
(Àn)nEw: Ào = p ;
On pose
pour tout n E w,
}.
Àn+l = 2 n.
À= ~ Àn. n E.ID
a) Montrer que
ÀIL =
p}. =À}.= 2}..
b) Montrer que, pour tout cardinal 7, • si ~o ~ 1 ~ À, alors À~ = • si 1 ~À, alors À'l =2'l.
À'l = À}. ;
c) Montrer qu'il existe des cardinaux o, {J, 1 et t5 tels que : a< {J , 1 < t5 et a'l = {3 6. 15. Soient a et {J deux ordinaux. Par définition, a est cofinal à {J si et seulement si il existe une application f de fJ dans lt, strictement croissante, non strictement majorée. (Ce qui veut dire que : • quels que soient les ordinaux 1 et t5 appartenant à {J, si 1 < t5, alors f( 7) < f( 5), et • pour tout ordinal { E o, il existe 7 E {J tel que f( 7) ~ {.) a) Montrer que la (méta)relation «être cofinal à» définie sur la classe On est réflexive, transitive et non symétrique. Déterminer les ordinaux cofinaux à 1. b) Montrer que, pour tout ordinal o, la classe des ordinaux fJ tels que a soit cofinal à {J est un ensemble non vide. Le plus petit ordinal appartenant à cet ensemble est appelé cofinalité de a et noté cof( o). Tout ordinal a tel que cof( o) = a est appelé ordinal régulier. Montrer que, pour tout ordinal o, cof( o) ~ a et cof( o) est un ordinal régulier. c) Montrer que, quels que soient les ordinaux a et {J, {J < cof(o) si et seulement si toute application de {J dans a est strictement majorée dans o. d) Montrer que tout ordinal régulier est un cardinal. Montrer que, pour tout cardinal À, À est un ordinal régulier si et seulement si c'est un cardinal régulier au sens de la défini ti on 5. 7, ii. e) On suppose que l'univers satisfait l'axiome du choix. Montrer que, pour tout ordinal o, ~n+l est régulier. Montrer que si a est un ordinal limite, cof(~a) = cof( a). f) Déterminer le premier ordinal (respectivement : le premier cardinal) strictement supérieur à w qui soit cofinal à w. 16. On suppose que l'univers satisfait l'axiome du choix. On se servira des notions et des résultats de l'exercice précédent.
186
Chapitre 7. Théorie des ensembles a) Montrer que, pour tout cardinal ..\, ..\cof<>.> > ..\ (utiliser le théorème de
Konig). b) Montrer que card(21D) n'est pas cofinal à w. c) On suppose que l'univers satisfait l'hypothèse généralisée du continu (HGC), c'est-à-dire que, pour tout ordinal a, 2~o. = ~o.+l. · Soit ..\un cardinal infini. Montrer que, pour tout cardinalp autre que 0, on a: si p < cof ( ..\) ; si co f ( ..\) ~ p ~ ..\ ; si ..\ < p.
17. Soit 9 une fonction (définissable) définie sur la classe On des ordinaux, à valeurs dans On, strictement croissante. On dit que 9 est continue en un ordinal limite a si ~(a)= sup 9{,8). On dit que ~est continue si elle est continue en tout ordinal limite. fit. o. Un ordinal a tel que ~(a) =a est appelé point fixe de 9. a) Montrer que toute fonction ~strictement croissante de On dans On possède la propriété suivante: pour tout ordinal a, 9{a) ~ a. b) Montrer que, si 9 est une fonction strictement croissante de On dans On, continue en tout ordinal cofinal à w, alors, pour tout ordinal a, 9 admet un point fixe supérieur à a. c) Montrer que, si ~et q; sont deux fonctions strictement croissantes de On dans On, continues en tout ordinal cofinal à w, alors, pour tout ordinal a, 9 et q; admettent un point fixe commun supérieur à a. d) On suppose que l'univers satisfait l'axiome du choix. Montrer que, pour tout ordinal a, il existe un ordinal {J > a tel que card(VtJ) =~fi= {J. 18.
On suppose que l'univers satisfait HGC et AC (en fait, on peut montrer que
l'axiome du choix est vrai dans tout modèle de ZF
+ HGC).
a) La fonction de On dans On qui, à chaque ordinal a, associe ~o~o. est-elle continue en tout ordinal limite ? (voir l'exercice 17 pour la définition de la continuité). Même question pour la fonction qui, à a, associe
~o.No·
b) Soit «5 un ordinal. La fonction qui, à chaque ordinal a, associe l'ordinal «5 + a (somme ordinale) est-elle continue en tout ordinal limite? Même question pour les fonctions qui, à a, associent respectivement : a+ «5, a.«5, 6.a (il s'agit toujours des opérations ordinales).
187
Exercices
19. Montrer que l'axiome de fondation est équivalent (moyennant les axiomes de ZF) au schéma d'axiome suivant :
3vo F[vo]::::} 3vo(F[vo] 1\ Vv1(v1 E vo::::} •F[v1])) (où F est une formule à une variable libre quelconque du langage { E,~}). 20. Dans cet exercice, on suppose que l'axiome du choix est vérifié. Soit À un cardinal régulier (voir définition 5. 7) non dénombrable. On dit qu'un sous-ensemble X de À est clos cofinal si :
1) il est clos : pour tout sous-ensemble X0 de X qui est tel que card(Xo) < À, sup X0 EX (remarquez que sup X est un ordinal strictement inférieur à..\ parce que ..\est régulier).
2) il est cofinal : pour tout a E ..\, il existe fJ EX tel que fJ > a. a) Montrer que les sous-ensembles clos cofinaux de À forment une base de filtre sur À (voir chapitre 2, 5 .12). b) Montrer que, si 1 est un ensemble de cardinalité strictement inférieure à À et si (Xi ; i E 1) est une famille de sous-ensembles clos cofinaux de ..\, alors cofinal.
0lt.l Xi est clos
c) On dit qu'un sous-ensemble Y de ..\ est stationnaire s'il rencontre tous les ensembles clos cofinaux. Montrer que les trois propriétés suivantes sont équivalentes :
1) il existe deux ensembles stationnaires disjoints ; 2) il existe au moins un ensemble stationnaire qui ne contient pas d'ensemble clos cofinal.
3) le filtre engendré par les ensembles clos cofinaux n'est pas un ultrafiltre. d) Soit X= (Xn; a E A) une suite de sous-ensembles de..\. L'ensemble :
{a E À; aE Xn} est appelé l'intersection diagonale de X et est noté .L\(X). Montrer que, si X satisfait les trois conditions suivantes : ( 1) pour tout a E À, Xn est clos cofinal ; (2) pour tous a et fJ E À, si a E {J, alors XtJ Ç Xn; (3) pour tout a E ..\, a ordinal limite, Xn = r't XtJ,
tJt.n
alors .L\(X) est clos cofinal. e) Montrer le théorème suivant (théorème de Fodor) :
THEOREME : Soit f une application de ..\ dans ..\ telle que {a E ..\ ; f( a) < a} soit stationnaire. Alors il existe a E À tel que f-1( a), 1'image
réciproque de a par f, est stationnaire.
188
Chapitre 7. Théorie des ensembles
f) On suppose que À~ N2 • Montrer que l'ensemble des ordinaux de À de cofinalité No (voir exercice 15) est stationnaire. Montrer que l'ensemble des ordinaux de À cofinalité N1 est aussi stationnaire et disjoint du précédent. g) La question f) montre que, pour tout cardinal régulier À strictement supérieur à N1, les conditions de la question c) sont vérifiées. Le raisonnement que nous proposons dans cette question montre que ces conditions sont encore vérifiées pour À= N1 (d'ailleurs cette preuve fonctionne pour n'importe quel cardinal successeur). Pour chaque ordinal a dénombrable et non nul, soit fa une application surjective de w sur a, et, pour tout n E w, soit hn l'application de N1 dans N1 définie par: hn(O) = 0 et hn(a) =fa( n) si a =1= O. Montrer que, pour tout n E w, il existe /Jn E N1 et un sous-ensemble stationnaire Yn de N1 tels que: pour tout 7E Yn, f,(n) =/Jn· Montrer qu'il existe un entier n tel que Yn ne contienne pas d'ensemble clos cofinal. 21.
<
a) Montrer que, si a est un ordinal limite strictement supérieur à w, alors Va , E > est un modèle de la théorie Z.
b) En déduire que, si Z est une théorie consistante, les axiomes de ZF ne sont pas conséquence de ceux de Z. 22.
On suppose que l'univers satisfait l'axiome du choix. On considère la classe Y des ensembles x tels que cl(x) (la clôture transitive de x, voir 5. 2) est dénombrable. Montrer que < Y , E > est un modèle des axiomes de ZF à l'exception de l'axiome des parties. 23.
Montrer, en utilisant directement un argument diagonal, que l'intervalle réel
]0,1] n'est pas dénombrable.
Chapitre 8
Un peu de théorie des modèles
190
Chapitre 8. Un peu de théorie des modèles
La théorie des modèles est l'étude de la classe des modèles d'une théorie donnée. On a déjà rencontré au moins deux théorèmes qui allaient dans cette direction : le théorème de complétude et le puissant théorème de compacité qui affirment tous les deux que, sous certaines conditions, cette classe n'est pas vide. La notion centrale de ce chapitre et du genre de théorie des modèles dont on donne ici les bases est la notion de sous-structure élémentaire. Intuitivement, rot est une sous-structure élémentaire de 'Jt si, évidemment, rot est une sous-structure de 'Jt et si, pour toute suite finie s d'éléments de rot, et pour toute propriété F[s] qui peut s'exprimer à l'aide d'une formule du premier ordre, il est équivalent de vérifier que s satisfait F dans rot ou qu'elle la satisfait dans 'Jt. C'est de cette notion que l'on s'occupera dans les deux premières sections, avec comme résultats importants les théorèmes de LowenheimSkolem, et leur corollaire qui veut qu'une théorie dénombrable ayant un modèle infini en ait un en toute cardinalité infinie. On passe ensuite aux théorèmes d'interpolation et de définissabilité. Il vaut la peine de s'arrêter sur la signification de ce dernier théorème. Lorsqu'on veut formaliser une théorie, il faut commencer par fixer le langage, ce qui revient à décider quelles notions doivent être considérées comme primitives, les autres devant se définir à partir d'elles (par exemple, dans le cas de l'arithmétique, 0, S, +et x suffisent; on peut ensuite définir la relation d'ordre, les nombres premiers, etc.). Mais comment être sûr de ne pas avoir introduit de symboles inutiles ? Le théorème de définissabilité donne un critère sémantique qui répond à la question. La quatrième section est consacrée aux produits réduits et aux ultraproduits, qui sont des opérations de nature algébrique permettant de définir une L-structure à partir d'autres L-structures. Les ultraproduits sont particulièrement importants et fournissent une preuve purement algébrique du théorème de compacité. A la section 5, on démontrera quelques théorèmes du type : une théorie T est équivalente à une théorie de telle ou telle forme si et seulement si la classe de ses modèles est close pour telle ou telle opération. Ces théorèmes sont appelés théorèmes de préservation. On examinera notamment la préservation par sous-structure, union de chaîne et produit réduit. Enfin, dans la dernière section, on étudiera les modèles dénombrables d'une théorie ~ catégorique, c'est-à-dire d'une théorie dont tous les modèles dénombrables sont isomorphes. L'axiome du choix est nécessaire pour la plupart des résultats de ce chapitre. On suppose donc une fois pour toutes qu'il est satisfait.
1. Sous-structures et extensions élémentaires
191
1. SOUS-STRUCTURES
ET EXTENSIONS ELEMENTAIRES
Sous-structures élémentaires
1.1
On adoptera dans tout ce chapitre la convention suivante : on utilisera des
lettres gothiques !Dt,
m, etc.
pour désigner des structures, et on utilisera les lettres latines
correspondantes (M, N, etc.) pour les ensembles sous-jacents à ces structures. On supposera systématiquement que le langage contient 1'égalité et que les structures sont égalitaires. La définition qui suit est très importante et sera présente dans tout le chapitre.
Soient L un langage, !Dt une L-structure et m une sous-structure de !Dt ; on dit que m est une sous-structure élémentaire de !Dt (ou, d'une façon équivalente, que !Dt est une extension élémentaire de m) si, pour toute formule F[v 11 v2, ... ,vn) de L et tous élements a11 a2, ... , an deN, on a: !Dt t= F(a 11 a2, ... ,an) si et seulement si mt= F(alla2, ... ,an)· On écrira m~ !Dt pour : « mest une sous-structure élémentaire de !Dt». DEFINITION :
Remarquons que, pour que
msoit simplement une sous-structure de !Dt, il faut
que la même condition formelle, mais portant seulement sur les formules F atomiques (ou, ce qui revient au même, sur les formules sans quantificateur), soit vérifiée. La première question qui vient à 1'esprit est de savoir s'il y a des sous-structures qui ne sont pas élémentaires ; en voici quelques exemples : • Pour le langage des groupes,
< "'., 0, + >
est une sous-structure de
< Q, 0, + >
qui n'est pas élémentaire. En effet, la formule Vvo3v 1(v 1 + v1 ~ v0) est satisfaite dans Qmais pas dans "'.. • Pour le même langage, < 2"0., 0, + >, le groupe des entiers relatifs pairs, est une sous-structure de 0, + > et, de plus, on voit que ces deux structures sont isomorphes et satisfont donc les mêmes formules sans paramètre. Pourtant, la formule
< "'.,
3vo(vo + vo
~ 2) est satisfaite dans "'. mais pas dans 2"0.., qui n'est donc pas une
192
Chapitre 8. Un peu de théorie des modèles
sous-structure élémentaire de "'0.. Contrairement au premier exemple, on a besoin ici d'un paramètre de la petite structure (à savoir 2) pour trouver une formule vraie dans une structure mais pas dans l'autre. • Pour le langage des corps, Qn'est pas une sous-structure élémentaire de IR : la formules 3vo(v0 x v0 ~ 2) est satisfaite dans IR et pas dans Q. De même IR n'est pas une sous-structure élémentaire de(, comme la formule 3v0 (v0 x v0 ~ -1) en témoigne {ici, on n'utilise pas de paramètres, contrairement aux apparences). • Pour le langage des ordres, [0,1] n'est pas une sous-structure élémentaire de ~ 1) est satisfaite dans la première mais pas dans la seconde.
[0,2] : la formule Vv0 (v0 1.2
Voici un rappel de définitions de la section 5 du chapitre 3.
DEFINITION : Soit rot une L-structure; on appelle théorie complète de rot et on note Th(rot) la théorie: Th(rot) = { F ; Fest une formule close deL et rott= F }. Si rot et m sont deux L-structures, on dit que rot et m sont élémentairement équivalentes si Th(rot) = Th(m). Dans ce cas, on écrira rot::'Jl
Il est clair que, conformément au vocabulaire, Th(rot) est toujours une théorie complète, et que deux structures isomorphes sont élémentairement équivalentes. Des définitions, il découle immédiatement que, si rot-< m, alors rot= m. L'exemple de
<2"'0.,0,+> dans <"'0.,0,+> montre qu'il est très possible que m soit une sous-structure de rot élémentairement équivalente à rot sans en être une sous-structure élémentaire. REMARQUE : Il découle aussi des définitions que: • si rot1 -< rot2 et rot2 -< rot3, alors rot1 -< rot3 ; • si rot1 -< rot3, rot1 Ç rot2 et rot2 -< rot3, alors rot1 -< rot2. 1.3 Il est en général assez difficile de montrer qu'une sous-structure est élémentaire. On va dans l'exemple suivant exposer une technique très utile pour ce genre de problème. EXEMPLE : les ordres denses sans extrémités. On considère la théorie T suivante dans le langage ne comportant qu'un seul symbole de relation binaire< :
{i)
Vvo(-wo < vo)
1. Sous-structures et extensions élémentaires
193
(ii) VvoVv 1{(vo < v1 ~ -.v1 < vo) V vo ~ v1) (iii) VvoVv,Vv2((vo
LEMME 1 : Soient a11 a2 , ... ,an E M, b1,b 2 , ... ,bn E N, et on suppose que ces deux suites satisfont respectivement dans rot et m, les mêmes formules atomiques, autrement dit :pour tous i et jE { 1,2, ... ,n }, rot 1= ai~ aj si et seulement si m1= bi~ bj ; et rot 1= ai < aj si et seulement si m1= bi < bj . Alors: pour tout a0 E M, il existe b0 E N tel que: pour tous i et jE { 0,1,2, ... ,n }, roll= ai~ aj si et seulement si ml= bi~ bj; et rot 1= ai < aj si et seulement si m1= bi < bj ; et pour tout b0 E N, il existe a0 E M tel que: pour tous i et jE { 0,1,2, ... ,n }, rot 1= ai~ aj si et seulement si m1= bi~ bj ; et rot 1= ai < aj si et seulement si m1= bi < bj .
On se donne le point a0 et on cherche b0 . On distingue plusieurs cas : • ao est plus grand (au sens de 1'ordre de mt) que tous les ai (pour 1 ~ i ~ n). On choisit alors b0 dans N plus grand (au sens de l'ordre de m) que tous les bi (pour 1 ~ i ~ n) . Un tel point existe car il n'y a pas d'élément maximum dans m. • Même chose si a0 est plus petit que tous les ai (pour 1 ~ i ~ n) : on prend bo plus petit que tous les bi (pour 1 ~ i ~ n). • Si ao est égal à l'un des ah disons ak , on prend b0 =bk. • Dans le cas restant, on choisit un indice p E { 1,2, ... ,n} tel que ap soit le plus petit (au sens de l'ordre de mt) des ai (pour 1 ~ i ~ n) plus grands que a0 et et un indice q E { 1,2, ... ,n} tel que aq soit le plus grand des ai (pour 1 ~ i ~ n) plus petits que ~
194
Chapitre 8. Un peu de théorie des modèles
ao. On a aq < ao < ap, et donc, bq < bp. On choisit alors bo dans N strictement compris entre bq et bp (ce qui est possible parce que l'ordre sur mest dense). On fait évidemment la même chose pour trouver a0 connaissant b0 .
LEMME 2: Soient rot et m deux modèles de T, a.,a 2,... ,an E M, b.,b2, ... ,bn E N, et on suppose que ces deux suites satisfont, respectivement dans rot et m, les mêmes formules atomiques; alors, pour toute formule F[v.,v2, ... ,vn) deL, (*) rot 1= F[a1,a2, ... ,a n) si et seulement sim 1= F(b 1,b2, ... ,bn).
En admettant ce lemme, on conclut facilement que, si rot et m sont deux modèles de T et si rot est une sous-structure de m, alors rot~ m: si a1,a 2,. .. ,an sont des points de M, alors les formules atomiques que cette suite satisfait dans rot sont les mêmes que celles qu'elle satisfait dans m (parce que rot est une sous-structure de m). Les hypothèses du lemme sont donc vérifiées, et donc, pour toute formule F[v1,v 2,... ,vn) de L, rot 1= F[a.,a2, ... ,an) si et seulement si m 1= F[a 1,a2, ... ,an) ; autrement dit, rot~ m. Il reste à démontrer le lemme 2. ~ On suppose qu'aucun quantificateur universel n'apparaît dans F, ce que l'on peut toujours faire quitte à remplacer F par une formule équivalente (voir la remarque 3.10 du chapitre 3), et on démontre le lemme par induction sur F. L'hypothèse du lemme dit que la condition (*) est vérifiée si F est atomique. Il
est immédiat que, si (*) est vérifiée pour les formules F1 et F2, elle l'est aussi pour les formules ·F 1, F1 1\ F2, F1 V F2, F1==) F2 et F1 (::::::::} F2. Reste le cas où F[v 1,v 2,... ,vn) = 3v0G[vo,v 1, ... ,vn) ; supposons (en plus du fait que les suites (a.,a2, ... ,an) et (b 1,b 2,. .. ,bn) satisfont respectivement dans rot et m les mêmes formules atomiques) que : rotl= F[a1,a2, ... ,an]· Il existe donc a0 E M tel que : rot 1= G[ao,a., ... ,an]· On choisit un élément bo dans N qui se situe par rapport aux bi (pour 1 ~ i ~ n) exactement comme a 0 se situe par rapport aux ah autrement dit tel que les suites (ao,a., ... ,a n) et (b 0 ,b 11 ... ,bn) continuent de satisfaire les mêmes formules atomiques dans rot et m respectivement (lemme 1). Puisque la formule G a un quantificateur de moins que la formule F, on peut lui appliquer l'hypothèse d'induction. On voit que : m1= G[bo,bh ... ,bn]
1. Sous-structures et extensions élémentaires
195
et donc que:
mt= F[b1,b2, ... ,bn]· On peut échanger les rôles de rot et de m, et montrer de la même façon que, si mt= F[b 1,b2, ... ,bn] , alors rott= F[a 1,a2, ... ,an]·
Le test de Tarski- Vaught 1.4 Le résultat suivant, appelé tœt de Tarski-Vaught, est quelquefois pratique pour vérifier qu'une sous-structure est élémentaire :
THEOREME : Soient
rot une structure, m une sous-structure de rot et
supposons que, pour toute formule F[vo,vh···,vn] deL et tous éléments a1,a 2, ... ,an dans N, si rot F 3voF[vo,ah···,an] , alors il existe a0 dans N tel que rott= F[ao,ah···,an]· Alors m-< rot.
La différence avec la définition 1.1 est que seule intervient la satisfaction des formules dans une des deux structures (la plus grande). On montre que pour toute formule G[vhv2,... ,vn] et pour tous a1,a 2,... ,an deN, mt= G[aha2, ... ,an] si et seulement si rott= G[a 1,a 2,... ,an}· Comme précédemment: on suppose qu'aucun quantificateur universel n'apparaît dans G (remarque 3.10 du chapitre 3) et on raisonne par induction sur G. Le cas des connecteurs propositionnels n'offre aucune difficulté. Considérons donc le cas où G[v 1,v 2,... ,vn} = 3voF[vo,vh···,vn} (Fa donc un quantificateur de moins que G). • Si mt= 3voF[vo,al,a2, ... ,an} , alors il existe ao E N tel que mt= F[ao,a 1,... ,an] et, par hypothèse d'induction, on voit que rott= F[a 0 ,ah···,an} ; par conséquent : rot F 3voF[vo,al,a2,···,anJ. • Réciproquement, si rott= 3voF[vo,aha 2,... ,an}, alors, par l'hypothèse du théorème, il existe ao EN tel que !Dt t= F[a 0 ,ah···,an]· Par hypothèse d'induction, on obtient mt= F[ao,al, ... ,an}, et donc mt= 3voF[vo,al,a2, ... ,an}· (;;)
e
196
Chapitre 8. Un peu de théorie des modèles
REMARQUE : En fait, il n'est même pas utile, pour pouvoir appliquer le test de Tarski-Vaught, de vérifier que est une sous-structure de rot: supposons que A soit un sous-ensemble de M vérifiant : pour toute formule F(v 0,v 1,... ,vn] de L et tous éléments a.,a2, ... ,an dans A, si
m
alors il existe ao dans A tel que rot 1= F[ao,a., ... ,an] ; alors, A est clos pour les fonctions du langage: pour chaque symbole de fonction k-aire f, il suffit de considérer la formule F = vo ~ fv 1v2... vk : autrement dit, A est une sous-structure de rot (A n'est pas vide puisque rot 1= 3v0 v0 ~ v0 ).
1.5
On va donner un exemple d'application du test de Tarski-Vaught. Auparavant,
précisons que la cardinalité d'un langage L, notée card(L), est, par définition, égale à la cardinalité de l'ensemble des formules de L, donc égale à sup(N0 ,card(X)), si X désigne l'ensemble des symboles de constante, de fonction et de relation de L. La cardinalité d'une structure est naturellement la cardinalité de son ensemble de base. Le théorème suivant est connu sous le nom de théorème de Lôwenheim-Skolem descendant :
THEOREME : Soient rot une L-structure, A un sous-ensemble de M, et on
suppose que card(M) ;::: card(L). Alors il existe une sous-structure élémentaire 9Jto de rot contenant A et de cardinalité sup(card(A),card(L)).
~
Quitte à agrandir l'ensemble A, on peut supposer que card(A) ;::: card(L). On
remarque ensuite que, si B est un sous-ensemble de M et si card(B) ~ card(L), alors la sous-structure de rot engendrée par B (c'est-à-dire le plus petit sous-ensemble N de M contenant B et clos pour les fonctions du langage) est de la même cardinalité que B (en effet, tout élément de N est l'interprétation d'un terme à paramètres dans B ; l'ensemble de ces termes est un ensemble de suites finies de L x B, et est donc de cardinalité inférieure ou égale à celle de B). On définit par récurrence sur l'entier n des sous-ensembles Ao Ç A1 Ç ... Ç An Ç ... de rot qui sont tous de cardinalité card(A) : • Ao est la sous-structure engendrée par A ; • voici comment définir Ai+l à partir de Aï: pour chaque formule F(vo,vl,···,vn] de L et chaque suite (a 17 a2,... ,an) de Ai, si rot 1= 3voF(vo,a 17 a2,···,an), alors on choisit un point c
de M tel que rot 1= F(cF ,a ,a ,... ,an] ; posons : F,a1,a2•··"'an ,a1,a2•···•an 1 2 Bi= Aï U { c ; nE IN, F(vo,v 17 ••• ,vn) est une formule de L, a 17 a2,. .. ,an F,a1,a2•···•an appartiennent à Met rot 1= 3voF(vo,a1,a2,···,an] },
197
2. Constructions d'extensions élémentaires
et appelons Aï+l la sous-structure de rot engendrée par Bi. Il y a card(L) formules F dans Let card(Aï) suites (a,a 2,... ,an) dans Aï de longueur convenable. Il faut donc ajouter au plus card(Aï) points à Aï pour obtenir Bï, ce qui montre que card(Ai+l) = card(Bï) = card(Aï) = card(A). On pose
roto= U rt.N
Aï . Il est clair que
roto est une sous-structure de rot et que sa
cardinalité est card(A) (voir le corollaire 4.14 du chapitre 7). On va maintenant utiliser le test de Tarski-Vaught pour montrer que c'est une sous-structure élémentaire. En effet, soient F(v0 ,v, ... ,vn) une formule de L et a1,a 2,... ,an des points de Mo, et supposons que rot F 3voF(vo,a 1,a 2,... ,an]· On sait qu'il existe un entier i tel que Aï contienne a 1,a 2,... ,an . Par construction de Ai+h il existe dans cet ensemble, donc dans M0 , un point c tel que rot F F(c,a,a 2,... ,an] : c'est exactement l'hypothèse que réclame le test de Tarski-Vaught.
©
2. CONSTRUCTIONS D'EXTENSIONS ELEMENTAIRES
Applications élémentaires 2.1
Voici encore une notion importante:
DEFINITION : Soient rot et
mdeux L-structures et h une application de M
dans N ; on dit que h est une application élémentaire si, pour toute formule F(v 1,v2,... ,vn) de L et tous éléments a, a2,. .. ,an de M, on a :
rot F F[a,a 2,... ,an] si et seulement si mF F(h(a 1),h(a 2), ... ,h(an)].
On voit immédiatement, en considérant la formule vo
~v,
qu'une application
élémentaire est injective. Pour insister sur ce fait, on dira quelquefois plongement élémentaire au lieu d'application élémentaire. S'il existe une application élémentaire de
rot dans
m,
on dira que rot se plonge élémentairement dans
m.
Il est aussi clair qu'une
198
Chapitre 8. Un peu de théorie des modèles
application élémentaire est un monomorphisme de L-structures. La réciproque n'est pas vraie : pour s'en convaincre, il suffit de reprendre un exemple d'une sous-structure rot de ~ qui n'est pas élémentaire (voir 1.1). L'application identité de M dans N est un monomorphisme qui n'est pas élémentaire. Cependant, on a:
2.2
PROPOSITION : Soit h un monomorphisme d'une structure rot dans une
structure ~. Alors h est une application élémentaire si et seulement si l'image de h est une sous-structure élémentaire de~-
Soit ~1 l'image de h, ce qui fait que h induit un isomorphisme de rot sur ~1 . On voit donc, par le théorème 5.2 du chapitre 3, que, pour toute formule F[v 1,v 2,... ,vn] deL et tous a1, a2,... ,an de M, on a: rot 1= F[a 1,a 2,... ,an] si et seulement si ~1 1= F[h(a 1),h(a 2), ... ,h(an)] . • Supposons d'abord que ~1 -< ~-Alors: ~1 1= F[h(a 1),h(a2), ... ,h(an)] si et seulement si ~ 1= F[h(a 1),h(a2), ... ,h(an)] ce qui, avec l'équivalence ci-dessus, implique bien que h est élémentaire. • Réciproquement, supposons que h soit élémentaire, et soient b11 b2,... ,bn des points de N1. Il existe aha2, ... ,an dans M tels que h(a 1) = b1, h(a2) = b2, ... , h(an) = bn. Pour toute formule F[v 1,v2,... ,vn] de L, on a: rot 1= F[a 1,a2, ... ,an] si et seulement si ~ 1= F[h(a 1),h(a2), ... ,h(a n)] , et donc: f;l
COROLLAIRE: S'il existe une application élémentaire de rot
dans~
alors
rot et~ sont élémentairement équivalents.
f;l ml
©
En effet, si -< ~ et ~1
~1
est l'image de cette application élémentaire,
=rot par isomorphisme.
~1
=~ parce que
2. Constructions d'extensions élémentaires
199
La méthode des diagrammes 2.3 On va maintenant exposer la méthode des diagrammes qui permet de construire des extensions et des extensions élémentaires. Cette méthode a d'ailleurs déjà été esquissée au chapitre 3 (5.10). Soit rot une L-structure ; on considère le langage LM obtenu en ajoutant à L un
symbol~
de constante è pour chaque élément a
E M.
Alors rot
s'enrichit naturellement en une LM-structure que l'on notera !Dt* : il suffit d'interpréter è par a. Posons : D(rot)
= {F(èhb, ... ,èn] ; F(vhv2, ... ,vn] est une formule deL, aha2, ... ,an E M et
rot F F(a1,a2, ... ,an] }. On voit que D{rot), que l'on appelle le diagramme complet de rot, est la théorie complète de !Dt*. Ce qui est important, c'est que n'importe quel autre modèle de D(rot), ou, plus exactement, le réduit au langage L de n'importe quel autre modèle de D{rot), est, à isomorphisme près, une extension élémentaire de rot. Expliquons-nous. Soit 'Jt* une LM-structure qui est un modèle de D(rot). Notons 'Jt le réduit de 'Jt* au langage L ('Jt est donc obtenu à partir de 'Jt* en oubliant les interprétations des symboles de constantes è pour a E M). Pour chaque a E M, appelons g(a) l'interprétation de è dans 'Jt*. On voit donc que g est une application de M dans N et que, pour toute formule F(vhv 2,... ,vn] de Let pour tous a1,a2, ... ,an dans M, on a:
(*)
rot F F[aha 2,... ,an] si et seulement si 'Jt F F[g(a 1),g(a 2), ... ,g(an)]. (Parce que ces deux conditions sont encore équivalentes à: F(è1,b, ... ,èn] E D{rot), la première par définition de D(rot), la seconde parce que 'Jt* est un modèle de D{rot), que les symboles èi y sont interprétées par g(ai) et que D(rot) est une théorie complète). Autrement dit, g est une application élémentaire de rot dans 'Jt. On n'est donc pas très loin du but que l'on s'est fixé : 'Jt n'est pas une extension élémentaire de rot, mais seulement une extension élémentaire d'une structure isomorphe à rot (l'image de g). Pour réparer cette imperfection, on va montrer que l'on peut supposer que, pour tout
= a, et pour cela, on va faire une construction complètement formelle et totalement inintéressante. Elle fera l'objet du lemme suivant auquel on fera appel
a E M, g( a)
plusieurs fois au cours de cette section. Rappelons auparavant que le diagramme simple d'une structure rot, noté Ll{rot), est la théorie suivante de LM : Ll{rot) = { H[èhb, ... ,èn] ; H[v 1,v2, ... ,vn] est une formule sans quantificateur de L, a1,a2, ... ,an sont des points de rot et rott= H[a 1,a 2,... ,an] }. (Voir chapitre 3, 5 .10).
LEMME : Si 911 est une L-structure, alors tout modèle de Ll(œt) est isomorphe à une extension de rot* (dans laquelle chaque symbole è, pour a E M, est donc interprété par a).
200
Chapitre 8. Un peu de théorie des modèles
~ Soit 9t un modèle de ~(!Dt} et appelons g l'application de M dans N qui, à chaque a E M, fait correspondre l'interprétation de ~ dans 9t. Prenons un ensemble M 1 contenant M et tel que M1 - M ait la même cardinalité que N - g(M). On peut alors prolonger l'application g en une bijection g 1 de M1 sur N. On définit une LM-structure !Dt1 dont l'ensemble de base est M1 en exigeant que g1 soit un isomorphisme de !Dt1 dans 9t: tout d'abord, chacun des symboles~' pour a E M, est interprété par l'élément a ; ensuite, si Rest un symbole de relation à p arguments, l'interprétation de R dans !Dt1 est : { (a 1,a 2 , ... ,ap) E M~ ; 9t t= Rg 1(a 1}g 1(a 2 ) ... g1(ap) }. Les interprétations des symboles de constante et de fonction sont définies de façon analogue. Il est bien clair que la structure !Dt1 ainsi définie est une extension de !Dt*. ~
Si, comme on le supposait plus haut, 9t est un modèle de D(!Dt) (et pas seulement de ~(!Dt}), alors !Dt est une sous-structure élémentaire du réduit de !Dt1 à L : soit F(v 1,v 2, ... ,vn] une formule de L et soient a11 a2, ... ,an des points de M. On a : !Dt1 F F(a 1,a 2 , ... ,an] si et seulement si 9t 1= F(g 1(a 1},g 1(a 2), ... ,g 1(an)] (parce que g1 est un isomorphisme), si et seulement si 9t t= F(g(a 1},g(a 2), ... ,g(an)] (parce que g1 prolonge g), si et seulement si !Dtt= F(a 1,a 2, ... ,an] (par la condition(*)). 2.4
Voici un premier exemple d'application de cette technique :
THEOREME : Toute structure infinie !Dt admet une extension élémentaire propre (c'est-à-dire une extention élémentaire différente de !Dt elle-même).
~
Ajoutons encore à LM un nouveau symbole de constante c et considérons la théorie suivante T' dans le langage ainsi obtenu : T' = D(!Dt} U { -,c ~ ~ ; a E M }. On voit tout d'abord, par le théorème de compacité, que cette théorie a un modèle: en effet tout sous-ensemble fini de T' est inclus dans un ensemble de la forme D(!Dt} u { •C ~ ~ ; a E A} où A est un sous-ensemble fini de M. Pour en avoir un modèle, il suffit d'enrichir !Dt* en interprétant c par un point de M n'appartenant pas à A (ce qui est possible puisque M est infini alors que A est fini). Soit 9t* un modèle de T' et 9t son réduit au langage L ; on a vu que l'on peut supposer que 9t est une extension élémentaire de !Dt. Il est bien clair que l'interprétation du symbole c dans 9t* ne peut pas appartenir à M, ce qui montre que 9t *!Dt. ~
201
2. Constructions d'extensions élémentaires
Pour alléger les notations, lorsque l'on appliquera cette méthode, on se dispensera de distinguer les structures rot et rot*. Il s'agit évidemment d'un abus de langage, mais qui ne présente pas de danger. 2.5 La même idée appliquée de façon plus audacieuse donne le théorème de Lôwenheim-Skolem ascendant :
THEOREME: Soient "~
rot une L-structure infinie et " un cardinal tel que
sup(card(M),card(L)). Alors il existe une extension élémentaire 'Jt de rot
de cardinalité " .
~
Il suffit en fait de construire 'Jt >-rot, avec card(N) ~ "· Si on a fait cela, on
choisit un sous-ensemble A de N contenant M et de cardinalité "' et, par le théorème de Lôwenheim-Skolem descendant (théorème 1.5), on construit mo telle que M ç No,
mo-< 'Jt et card(No) =
"· On a déjà remarqué (remarque 1. 2) que cela implique rot-< mo. Introduisons, pour chaque i E" un nouveau symbole de constante Ci et
considérons la théorie suivante :
T' = D(rot) U { -.ci ~ cj ; i E "' j E " et i =1= j}. Cette théorie est consistante : tout sous-ensemble fini de T' est inclus dans un ensemble de la forme D(rot) U {-.ci ~ Cj ; i,j E A et i f: j} où A est un sous-ensemble fini de "' et pour en avoir un modèle, il suffit d'interpréter les Cj, pour i de M deux à deux distincts, ce qui est possible puisque M est infini.
E
A, par des points
On termine la preuve comme précédemment: soit 'Jt un modèle de T', et on peut
m
supposer que >-rot. Alors les Cj, pour i E "' sont interprétés dans distincts, ce qui oblige la cardinalité de N à être au moins ".
mpar
des points
~
Des deux théorèmes de Lôwenheim-Skolem découle immédiatement :
COROLLAIRE : Soient T une théorie dans un langage L et " un cardinal supérieur ou égal à card(L). Si T a un modèle infini, alors T a un modèle de
cardinalité "·
2.6 Pour le prochain théorème, qui est généralement appelé théorème de Vaught, nous avons besoin de la définition suivante:
202
Chapitre 8. Un peu de théorie des modèles
DEFINITION : Soient T une théorie et " un cardinal. On dit que T est /Ç-ca.tégorique si, premièrement, T admet un modèle de cardinalité " et, deuxièmement, tous les modèles de cardinalité "sont isomorphes.
THEOREME: Soit T une théorie dans un langage L n'ayant pas de modèle fini. Supposons que T soit "-catégorique, pour un cardinal " supérieur ou égal à card(L). Alors T est complète.
~
On suppose le contraire ; il existe donc dans L une formule close F telle que T 1 = T U { F } et T 2 = T U { -,F } soient toutes les deux consistantes. D'après le théorème de Lôwenheim-Skolem ascendant, on voit qu'il existe des modèles rot1 de T 1 et rot2 de T 2 de cardinalité "; rot1 et rot2 ne peuvent pas être isomorphes, ce qui contredit la /Ç-catégoricité. ~
2.7
EXEMPLE : Les ordres denses sans extrémités. Reprenons la théorie T des ordres denses sans extrémités dont les axiomes sont
présentés en 1.3. Il est clair que cette théorie n'admet pas de modèle fini. On va voir qu'elle est N0 -catégorique, ce qui, avec le théorème de Vaught, impliquera qu'elle est complète.
m
Soient rot et deux modèles dénombrables de T ; établissons un isomorphisme par un «va et vient» entre ces deux structures. On utilise d'abord l'hypothèse que M et N sont dénombrables : on peut donc trouver des énumérations de ces deux ensembles : M = {rn i ; i E IN } et N = { n i ; i E IN } . On définit par récurrence deux suites (ap ; p E IN) et (bp ; p E IN) telles que, pour tout entier p, ap E M, bp EN et les suites (a 0 ,a 1, ... ,ap-1) et (bo,b 1,... ,bp-1) satisfont respectivement dans rot et
mles mêmes formules
atomiques. Pour définir a p et bp, on
distingue deux cas : • si pest pair, disons p=2i, on pose ap=mi; avec le lemme 1 de 1.3, on voit qu'il existe un point de N, que l'on appelle bp tel que les suites (ao,a1, ... ,ap) et (b 0 ,b 1,... ,bp) satisfont encore les mêmes formules atomiques dans rot et
mrespectivement.
• Si pest impair, par exemple p = 2i + 1, on pose bp =ni, et on choisit ap dans M de sorte que (a 0 ,a 1, ... ,ap) et (b 0 ,b 1,... ,bp) satisfassent les mêmes formules atomiques dans rot et
mrespectivement.
On suppose par exemple que q ~ pet on remarque que ap = aq si et seulerr.ent si bp =bq (parce que (a 0 ,a 1, ... ,ap) et (b 0 ,b 1, ... ,bp) satisfont les mêmes formules atomiques). On peut donc définir une application f de {a k ; k E IN} dans {bk ; k E IN} en posant : pour
203
2. Constructions d'extensions élémentaires
tout entier k, f(ak) =bk. Par choix des ap pour p pair, on voit que { ak; k E IN}= M, et le choix de bp pour p impair nous assure que {bk ; k E IN} = N ; f est donc une bijection de M dans N, et c'est un isomorphisme de mt dans ~ parce que, pour tout p, les suites (a 0 ,a 1,... ,ap) et (b 0 ,b 1, ... ,bp) satisfont les mêmes formules atomiques. 2.8
EXEMPLE : les groupes abéliens divisibles sans torsion. Dans le langage des groupes { 0,+ }, on considère la théorie suivante:
(i)
VvoVvNv2 (vo + v1) + v2 ~ vo + (v1 + v2)
(ii) (iii)
VvoVv1 vo + v1 ~ v1 + vo Vvo vo + 0 ~ vo
(iv) (v) (vi)
Vvo3v1 vo + v1 ~ O. 3vo (-.vo ~ 0) Vv0 ( n · vo ~ 0 ::::::} vo ~ 0) pour chaque entier n strictement positif, où
n ·v désigne le terme (( ... (v+ v)+ v) ... )+ v) avec n occurences du symbole v. (vii)
Vvo3v 1 vo ~ n ·v1 pour tout n EIN, n f.O.
On a là une théorie infinie (à cause de (vi) et (vii) qui sont en fait des schémas d'axiomes). Les axiomes (i)-(iv) expriment que l'on a affaire à un groupe abélien, l'axiome (v) dit que ce groupe n'est pas trivial, les axiomes (vi) que ce groupe est sans torsion et les axiomes (vii) que ce groupe est divisible. On va montrer que cette théorie est complète en utilisant le théorème de Vaught. Le groupe
< Q, 0, + > est un modèle de T, ce qui montre que T est consistante.
Mais T a d'autres modèles : soit V un Q-espace vectoriel dont x est la multiplication scalaire. Alors, le groupe G sous-jacent à V est un groupe abélien divisible sans torsion : en effet si p E IN et a E V, px a= (1 + 1 +· · ·+ 1) x a= 1 x a + 1 x a + · · ·+ 1 x a= a +a +a +···+a= p·a et si p ·a= 0 avec p :t:O, alors 0 = p-1 x (p·a) = p-1 x (px a)= a, ce qui montre que G est sans torsion. Pour la divisibilité, on a bien p·(p-1 x a) =a. En fait, il y a une correspondance bijective entre les Q-espaces vectoriels et les groupes abéliens divisibles sans torsion : si V est un espace vectoriel sur Q, on vient de voir que son groupe sous-jacent que l'on notera
v- est
un groupe abélien divisible sans
torsion ; réciproquement, si G un groupe abélien divisible sans torsion, alors il existe un unique Q-espace vectoriel, que l'on appellera G... , dont le groupe sous-jacent est G, c'est-à-dire tel que (G ... f = G : si a E G et r = pfq (p E IN, q E IN*), r x a doit être l'élément x de G, qui est unique, tel que q ·x= p ·a, et si rest négatif, il faut que r x a soit égal à - ((- r) x a). On voit de plus que si G et G' sont deux groupes abéliens divisibles sans torsion, une application h de G dans G' est un isomorphisme de groupes si et seulement si c'est un isomorphisme de Q-espaces vectoriels de G... dans G' ....
204
Chapitre 8. Un peu de théorie des modèles
Cela montre en particulier que T n'est pas N0-catégorique: par exemple, les Q-espaces vectoriels de dimension deux et trois sont dénombrables, et donnent naissance à des modèles de T qui ne sont pas isomorphes. Pour montrer que T est N1-catégorique (en fait : que T est .\-catégorique pour n'importe quel cardinal non dénombrable .\), il suffit de voir que deux Q-espaces vectoriels de cardinalité N1 sont nécessairement isomorphes (parce qu'ils doivent avoir des bases de cardinalité N1 ; c'est un petit exercice sur les cardinalités ). Une remarque encore : il y a des théories complètes qui n'ont que des modèles infinis et qui ne sont catégoriques en aucun cardinal infini (voir exercices 4, 6 et 11). 2.9 Voici, pour terminer cette section, un procédé de construction de L-structures qui, avec les bonnes hypothèses, donne des extensions élémentaires. Soient (1,<) un ensemble totalement ordonné et, pour chaque i E 1, roti une L-structure; on suppose que, si i < j, alors roti est une sous-structure de rotj. Posons M =V Mi . On peut facilement 1E.I (et de façon unique) construire une L-structure rot, que l'on notera V roti, dont lEI l'ensemble de base est M, de telle sorte que toutes les structures roti soient des sous-structures de rot. Par exemple, si R est un symbole de relation d'arité p, et si
a1,a 2 , ... ,ap sont des points de M, on choisit un indice i E 1 tel que les points a17 a2 , •.• ,ap appartiennent tous à Mi (ce qui est possible puisque l'ensemble des Mi est totalement ordonnés par inclusion), et on décide que (a 1,a 2, ... ,ap) E R!Dt si et seulement si (a 17 a2 ,. •. ,ap) E R!Dti. Cette décision ne dépend pas du choix de l'indice i : si j est aussi tel que (a 1,a 2 , ... ,ap) E Mj, alors on a soit i ~ j, soit j < i. Donc, soit roti est sous-structure de rotj, soit rotj est sous-structure de roti. Dans les deux cas, (a 1,a 2 , ... ,ap) E R!Dti si et seulement si (a 1,a 2 , ... ,ap) E R!Dtj. On définit de même les interprétations des symboles de constante et des symboles de fonction. On en vient maintenant à un théorème fort utile, connu sous le nom de théorème de l'union de chaîne de Tarski:
THEOREME: Soient (1,<) un ensemble totalement ordonné, et pour chaque i E 1, roti une L-structure; on suppose que, si i < j, alors roti -< rotj. Posons rot= U roti . Alors pour tout jE 1, rotj est une sous-structure iEI élémentaire de rot.
~
On montre par induction sur la formule F[v1,v 2 , ••. ,vp) que, pour tout i E 1 et tous
a1,a 2 , ... ,ap E Mi,
3. Les théorèmes d'interpolation et de définissabilité
205
Comme on l'a plusieurs fois remarqué, on peut supposer que le quantificateur universel n'a pas d'occurrence dans F. Il n'y a pas de problème pour les formules atomiques : roti est une sous-structure de rot. Le cas des connecteurs propositionnels est évident. Supposons donc que
F = 3v0G[v 0 ,v 11 ... ,vn], et soient i E 1et a1,a2, ... ,ap E Mi· • Si roti 1= 3voG[vo,a 1,a 2,... ,ap), alors il existe un point a0 de Mi tel que roti 1= G[a 0 ,a 11 ... ,ap) ; on voit par hypothèse d'induction que rot 1= G[a 0 ,a 11 ... ,ap), et donc que rot 1= F[a 11 a2, ... ,ap). • Si rot 1= 3v0 G[v0 ,a 11 a2,... ,ap), alors il existe un point a0 de M tel que rot 1= G[a 0 ,a 1,... ,ap) ; il existe donc jE 1, j > i tel que a0 E Mj, et, par hypothèse d'induction, rotj 1= G[a 0 ,a 1,... ,ap) et donc rotj 1= 3voG[vo,a 11 a2,... ,ap) ; mais puisque roti-< rotj, on a aussi roti 1= F[a 1,a 2,... ,ap). ~
3. LES THEOREMES D'INTERPOLATION ET DE DEFINISSABILITE
3.1
On a vu au début de la section précédente que, s'il existe une application
élémentaire entre deux structures, alors celles-ci sont élémentairement équivalentes. La réciproque est fausse (voir exercice 4). On a cependant :
THEOREME: Soient rot1 et rot2 deux L-structures. Alors rot1 et rot2 sont élémentairement équivalentes si et seulement si elles se plongent élémentairement toutes les deux dans une même troisième.
~
Un sens est clair : si rot1 et rot2 se plongent élémentairement toutes les deux dans
rot3, on a bien : rot1
=rot3 =rot2.
Réciproquement, supposons que rot1 et rot2 soient élémentairement équivalentes. On va utiliser la méthodes des diagrammes. On considère le langage L' obtenu en ajoutant à L: pour chaque élément a de M11 un nouveau symbole de constante~' et pour
206
Chapitre 8. Un peu de théorie des modèles
chaque élément b de M2 , un nouveau symbole de constante o. Attention: tous ces symboles doivent être différents et, en particulier, si a appartient à la fois à M1 et M2, il faut prendre bien soin de choisir ~ différent de a. Introduisons les diagrammes : D(rot1) = { F[~1,b, ... ,~n] ; F[vhv2, ... ,vn] est une formule deL, a1,a2, ... ,an E M1, et rot1 1= F[aha2, ... ,an]} et D(rot2) = { F[b1,o2,···,l>n] ; F[v 1,v2,... ,vn] est une formule de L, bl,b2,···,bn E M2, et rot2 1= F[b1,b2, ... ,bn) }. On a vu que rot1 se plonge élémentairement dans tout modèle de D(rot1), et de même, rot2 se plonge élémentairement dans tout modèle de D(rot2). Il suffit donc de montrer que T'= D(rot1) U D(rot2) est une théorie consistante. On utilise pour cela le théorème de compacité. Remarquons que D(rot1) est clos par conjonction. Donc un sous-ensemble fini de D(rot1) est équivalent à une formule F[~ 1 ,~2 , ... ,~n] de D(rot1) et, si T' était contradictoire, il existerait une telle formule telle que : Mais comme les
~i
D(rot2) 1- -,F[~l,b,···,~n]· n'apparaissent pas dans D(rot2), on a (voir chapitre 4, lemme 2.4) :
D(rot2) 1- VvNv2 ... Vvn-,F[v1,v2, ... ,vn]· Donc VvNv 2... Vvn-,F[v 1,v 2,... ,vn] est une formule close deL qui est vraie dans rot2 , qui doit par conséquent être vraie dans rot1, ce qui est contradictoire avec rot1 1= F[a 1,a 2, ... ,an]· ~
3.2 Le lemme de consistance de Robinson, qui est le théorème qui suit, fournit un très bel exemple de construction de modèle.
THEOREME : Soient T une théorie complète dans un langage L, L1 et L2 deux enrichissements de L tels que L1 n L2 = L, et T 1 et T 2 deux théories consistantes dans les langages L1 et L2 respectivement, contenant toutes les deux T. Alors T 1 U T 2 est consistante.
~
La preuve se fait au moyen des trois lemmes qui vont suivre. Auparavant, fixons une notation : si rot est une L1 ou une Lrstructure, rot- désignera le réduit de rot à L.
LEMME 1 : Soit rot un modèle de T. Alors il existe un modèle que rot-<~-.
~
de T 2 tel
3. Les théorèmes d'interpolation et de définissabilité
207
Par la méthode des diagrammes : il sufffit de montrer que T 2 U D(!Dt) est consistante. Si on suppose le contraire dans le but d'obtenir une contradiction, et en utilisant le théorème de compacité et le fait que D(!Dt) est clos par conjonction, on obtient une formule F[it,b, ... ,in] de D(!Dt) telle que T2 ~ -,F[i1,i2,···,in]· Les symboles ii ne font pas partie du langage L2 dans lequel est exprimée T2. Par conséquent : T2 ~ VvNv2... Vvn-,F[vhv2, ... ,vn]· La formule VvNv 2... Vvn-,F[v1,v2,... ,vn) est dans L, et Test contenue dans T 2 ; on voit donc que -,VvNv 2... Vvn-,F[v 1,v2,... ,vn) ne peut pas être conséquence de T; puisque T est complète, VvNv2... Vvn-,F[v 11 v2,... ,vn] est conséquence de T. On obtient une contradiction puisque !Dt est un modèle de Tet que !Dt 1= F[a 11 a2,... ,an]· e;l
f.J
rot un modèle de T, et on suppose que 211--< rot. Alors il existe une L1-structure 212 telle que 211 -< 212 et rot -< 212- (et donc 212 est un modèle de Tt)· LEMME 2: Soient 211 un modèle de T 11
~ On utilise toujours la même méthode: il suffit de construire un modèle de T' = D(!Dt) u 0(211), où, rappelons-le, D(!Dt) = { F[i1,b, ... ,in] ; F[vhv2, ... ,vn) est une formule de L, a11a2, ... ,an E M, et !Dt 1= F[aha2, ... ,an)} et 0(211) = { F[i1,b, ... ,in] ; F[v 1,v2, ... ,vn) est une formule de Lh a11a2, ... ,an E Ah et 21t 1= F[at,a2, ... ,an] }. Il faut insister sur le fait que le langage de T' est Lt augmenté des paramètres de M. Contrairement à ce qu'on a fait pour le théorème 3 .1, on n'introduit qu'un seul symbole de constante i pour chaque élément a de At (l'ensemble de base de 21t) qui sert à la fois dans D(!Dt) et dans D(21t) ; c'est grâce à cela que l'on pourra considérer un modèle de T' comme une extension élémentaire de 21t et son L-réduit comme une extension élémentaire de rot. On raisonne encore par l'absurde; on suppose que T'n'est pas consistante, et on en déduit une formule de D(!Dt) contradictoire avec D(21t)· On peut écrire cette formule sous la forme F[it,b, .. ·,in,in+t, ... èn+p) où F est une formule de L, at,a2, ... ,an E At et an+t,an+2, ... , an+p E M -At. Comme D(21t) ~ -,F[it,i2, ... ,in,in+t, ... ,in+p) et que les ih pour i compris entre n + 1 et n + p, n'apparaissent pas dans D(21t), on en déduit que : D(21t) ~ VvtYv2 ... Vvp-,F[it,b, ... ,in,Vt, ... ,vp), donc que 21t 1= VvNv 2... Vvp-,F[at,a 2,... ,an,v 1, ... ,vp). Il est clair que !Dt 1= 3v 13v2... 3vpF[at,a 2,... ,an,v 1, ... ,vp), et ceci contredit le fait que 21t- -
f.J
208
Chapitre 8. Un peu de théorie des modèles
Evidemment, on peut remplacer T 1 par T2
:
LEMME 2 bis: Soient ~1 un modèle de T 2, rot un modèle de T, et on suppose que ~1 - -< rot . Alors il existe un modèle ~2 de T 2 tel que ~1 -< ~2 et rot-<~-.
On peut maintenant terminer la preuve du lemme de consistance en construisant un modèle de T 1 UT 2 . On part d'un modèle 2l1 de T 1 ; 2l1- est un modèle de T. On peut donc appliquer le lemme 1 et on trouve un modèle ~1 de T 2 tel que 2l1- -< ~1 - . Ensuite, on applique le lemme 2 et on trouve un modèle 2l2 de T 1 tel que 2l1 -< 2l2 et ~1 - -< 2l2- . On applique ensuite alternativement les lemmes 2 bis et 2 et on trouve des structures 2l,., modèles de T 1 et ~n, modèles de T 2 , telles que, pour tour entier n : 2ln
-< 2ln+1
' ~n
-< ~n+1
' 2ln-
-< ~n- et
~n-
-< 2ln~1
.
Posons 2l = U 2l,. et ~ = U ~n· D'après le théorème de l'union de chaîne, 2l n-;1 n1"1 est une extension élémentaire de 2l, donc un modèle de T 1, et de même, ~est un modèle de T 2 . Or ces deux structures ont même ensemble de base, et même L-réduit, à savoir ~ 2ln- = ~ ~n-.
On obtient donc un modèle de T 1 U T 2 en considérant la (L 1 U L2)structure dont le L1-réduit est 2l et le L2-réduit est~ (c'est ici qu'intervient l'hypothèse L1 n L2 = L : elle permet d'interpréter sans ambiguïté les symboles de L1 U L2 qui ne sont pas dans L). (;;)
3.3 On comparera le théorème suivant, appelé le théorème d'interpolation de Craig, et qui est une conséquence du lemme de consistance de Robinson, avec le théorème 4. 2 du chapitre 1.
THEOREME : Soient F et G deux formules closes et on suppose que F =} G
est universellement valide. Alors il existe une formule H telle que: 1) ~ F = } H; 2) ~ H = } G; 3) tous les symboles de constante, de fonction ou de prédicat (à l'exception de l'égalité) apparaissant dans H apparaissent à la fois dans F et dans G. Une formule satisfaisant les conditions 1), 2) et 3) est appelée une interpola.nte entre F et G.
209
3. Les théorèmes d'interpolation et de définissabilité
On remarque que l'on peut donner à ce théorème un sens purement syntaxique, où seule la déduction formelle intervient et où il n'est absolument pas question de modèle. Il en existe des preuves purement syntaxiques, mais ce n'est pas le cas de celle qui suit. ~
Soit L le langage composé de l'égalité et des symboles communs à F et G. Il
s'agit de trouver une formule close de L telle que~ {F ~ H) A. {H ~ G). On va supposer que c'est impossible et en déduire une contradiction. L'idée est de construire une théorie complète T dans L telle que T u { F} et T U { -,G } soient toutes deux consistantes. Le lemme de consistance de Robinson nous dira alors que T U { F, -,G} est consistant, ce qui est absurde
puisque~
F ~ G.
Le langage L est dénombrable. On peut donc trouver une énumération { J n ; n E IN} de toutes les formules closes de L, et on suppose que Jo= 3vo(vo ~ vo). On
construit alors par récurrence sur l'entier n une suite de formules (Kn ; n
E IN)
de L de
telle sorte que, pour tout n E IN :
i)
~ Kn+l ~ Kn ;
ii)
~
iii)
les formules F A. Kn et GA. Kn n'admettent pas d'interpolante.
Kn
~
Jn
OU bien~
Kn
~
-,Jn ;
On démarre avec K0 = 3v0 (v0 ~ v0). Les conditions i) et ii) sont triviales et c'est parce qu'on a supposé que F et G n'admettaient pas d'interpolante que iii) est vérifiée. Construisons maintenant Kn+l à partir de Kn . La remarque cruciale, c'est que l'une au moins des deux éventualités suivantes se produit : • FA. Kn A. Jn+l et GA. Kn A. Jn+l n'ont pas d'interpolante. • FA. Kn A. -,Jn+l et G A. Kn A. -,Jn+l n'ont pas d'interpolante.
En effet, si on suppose le contraire, il existe des formules closes de L, Ho et H1, telles que : ~{FA. Kn A. Jn+l) ~Ho,
~ Ho~ {G A. Kn A. Jn+l) ,
~{FA. Kn A. -,Jn+l) ~ H1 et ~ H1 ~ (G A. Kn A. -,Jn+l)· Ce n'est pas possible car cela exige : ~ {F A. Kn) ~{Ho V H1) et ~{Ho V H1) ~ (G A. Kn), et Ho V H1 est alors une interpolante de F A. K n et G A. K n .
On prendra alors Kn+l égale à Kn A. Jn+l ou Kn A. -dn+l suivant le cas, de telle manière que FA. Kn+l et GA. Kn .. 1 n'aient pas d'interpolante; les conditions i), ii) et iii) sont bien vérifiées. Posons : T = { Kn ; n E IN}.
On remarque que, pour tout n, FA. Kn est une formule consistante: sinon, 3vo-,vo ~ vo serait une interpolante entre FA. Kn et GA. Kn . En utilisant la condition i) et
le théorème de compacité, on voit que T U { F} est une théorie consistante. De même, -,G A. Kn est consistante, sinon Kn serait une interpolante entre FA. Kn et GA. Kn. Donc,
210
Chapitre 8. Un peu de théorie des modèles
T U { ,G } est aussi consistante. Maintenant, il est clair que T est une théorie complète de L : si H est une formule close de L, il existe un entier n tel que Jn = H, et on s'est arrangé pour que..._ Kn ==> Jn ou..._ Kn ==> ,Jn. (;;)
3.4 Le théorème d'interpolation de Craig conduit à l'important théorème de définissabilité de Beth. On commence par quelques remarques et notations. On se donne un langage dénombrable L, un nouveau symbole de prédicat P d'arité n, et on pose L'= LU { P }. Soit P1 un autre symbole de prédicat d'arité n ne figurant pas dans L. Si G est une formule de L', on notera GP /P la formule obtenue en 1 substituant P1 à toutes les occurrences de P dans G. On voit que, si Fest une formule de L et si . ._ F ==> G, alors . ._ F ==> GP /p· 1 Soit T une théorie dans le langage élargi L'. Il est à peu près clair que les deux conditions suivantes sont équivalentes : • pour toute L-structure VJt, il y a au plus une interprétation de P qui enrichisse VJt en un modèle de T. • soient P1 un nouveau symbole de prédicat d'arité n, L1 =LU { P1} et T 1 la théorie obtenue en remplaçant P par P1 dans T. Alors pour tout modèle de TU T1,
m
on a:
m1= VvNv2... Vvn(Pv1v2···vn
P1v1v2... ,vn). Cette dernière condition est encore équivalente à : (::::=:)
T UT 1 . ._ VvNv2 ... Vvn(Pv1v2···Vn
(::::=:)
P1v1v2···vn).
Si l'une de ces conditions est vérifiée, on dira que P est implicitement définissable dans T. On dira que P est explicitement définissable dans T s'il existe une formule F(v 1,v 2, ... ,vn] de L telle que : T . ._ VvNv2 ... Vvn(Pv1v2···Vn
(::::=:)
F(v1,v2,···,vn])
Il est bien évident que, si P est explicitement définissable dans T, alors il y est implicitement définissable. La réciproque de cette assertion est le théorème de Beth :
THEOREME: Si P est implicitement définissable dans T, alors il y est explicitement définissable.
~
On garde les notations du paragraphe ci-dessus. On introduit n symboles de
constante c1,c2,... ,cn. Parce que Pest implicitement définissable, la théorie: T U { Pc1c2... en } U T 1 U { ,p 1C1C2... en }
4. Produits réduits et ultraproduits
211
est contradictoire. A 1' aide du théorème de compacité, on trouve des formules closes F de L' et G de L1 telles que : FA G A Pc1c2···Cn A -,P 1c1c2... cn est contradictoire, T 1- F et T1 1- G. Le fait que F A G A Pc 1c2... en A ,p 1c1c2... en est contradictoire se traduit par : 1- (FA Pc1c2···cn):::::} (G:::::} P1c1C2···cn). On applique le théorème d'interpolation: il existe une formule H[v1,v 2,... ,vn] deL (sans P ni P1) telle que H[c 1,c 2,... ,cn] soit une interpolante entre FA Pc 1c2... cn et G:::::} P1c1c2... cn. CommeT 1- F, on a
T 1- Pc1c2···Cn:::::} H[c1,c2,···,cn], et comme les constantes Ci n'apparaissent pas dans T: T 1- VvNv2... Vvn(Pv1v2···Vn:::::} H[v1,v2, ... ,vn]). De même: T1l- Vv1Vv2···Vvn(H[v1,v2,···,vn]:::::} P1v1v2... vn), et, en substituant P à P11 on obtient : T 1- VvNv2 ... Vvn(H[vhv2, ... ,vn]:::::} Pv1v2···vn)·
4. PRODUITS REDUITS ET ULTRAPRODUITS
Soient L un langage, 1 un ensemble et (œti).If. 1 une famille de L-structures. On va
4.1
définir une autre L-structure, appelée produit de la famille (œti). dont l'ensemble de base est l'ensemble produit d'abord : si a est un élément de
nid
"fJ Mi .
If. 1
et notée
"fT œti, lt.l
Fixons quelques notations
lt.l
Mi et si i E 1, on notera ai la i-ème coordonnée de a
(autrement dit a est égal à la suite (ai; i E 1)); si X est un symbole (de constante, de fonction ou de prédicat) de L, alors Xi désigne l'interprétation de ce symbole dans œti. • Si c est un symbole de constante, alors l'interprétation de c dans œti est la suite (ci ; i E 1). lt.l • Si fest un symbole de fonction d'arité n, alors l'interprétation de f dans œti est l'application qui à (a 1,a 2,... ,an) fait correspondre (fi(aLa~, ... ,a~) ; i E 1). lt.l • Si R est un symbole de prédicat d'arité n, alors l'interprétation de R dans œti est l'ensemble
"fT
"fJ
n
it.l
.{(a1,a2, ... ,an)
E
(fT Mi)"; pour tout i lt.l
E
1, (aLa~, ... ,a~)
E
Ri}.
212
Chapitre 8. Un peu de théorie des modèles
"fT
On pourrait dire de façon plus condensée que la structure de roti est définie lf.l de telle sorte que, pour toute formule atomique F[v1,v 2, ... ,vn] et tous a 1,a 2, ... ,an de
nM· it.l
1 '
"fT roti 1= F[a 17a2, ... ,an) Id
si et seulement si pour tout i E 1, roti 1=
F[aLa~, ... ,a~).
Lorsque l'ensemble 1 est fini, on parle de produit fini. EXEMPLE : Si les roti sont des groupes, on retrouve le produit de groupes. Même chose avec les anneaux ou les ensembles ordonnés. On remarquera que le produit de corps n'est en général pas un corps (voir exercice 14) ; de même le produit d'ensembles totalement ordonnés n'est pas, en général, totalement ordonné.
4.2 On va maintenant généraliser cette définition. On se donne, en plus de l'ensemble 1 et des structures ID'tï, un filtre .:7 de l'algèbre de Boole des parties de 1. On considère sur Mi la relation binaire ~ or définie par :
"fT lf.l
tf
(ai; i E 1) ~:Y (bi; i E 1) si et seulement si {i E 1; ai=bi} E :7. On remarque que c'est une relation d'équivalence : elle est clairement symétrique et réflexive. Pour la transitivité, supposons que (ai ; i E 1), (bi ; i E 1) et (ci ; i E 1) soient trois éléments de
n
id
Mi et que :
(ai ; i E 1) ~ ,:7 (bi ; i E 1) et (bi ; i E 1) ~ ,:7 (ci ; i E 1) ; cela veut dire que : { i E 1 ; ai =bi} E .:7 et { i E 1 ; bi =ci} E :7. Or { i E 1 ; ai= bi} n { i E 1 ; bi= ci} Ç { i E 1 ; ai= ci}, et, puisque .:7 est un filtre, on voit bien que { i E 1 ; ai= ci} E .:?. On
notera
n
it.l
Mï/ .:7 1'ensemble des classes d'équivalence de
relativement à cette relation. Si a E
it.l
fT Mil on notera a la classe de a modulo ~ 1 t.l
condition que cela ne crée aucune ambiguïté. On va maintenant définir sur 1'ensemble notera
n
n
it.l
Mi
ar,
à
tf
M ï/ .:7 une L-structure, que 1'on
fT ID'tï/ .:7 et que l'on appellera le produit réduit de la famille (roti).
If. 1
lf.l
modulo le
filtre .:7; cette définition sera telle que, pour toute formule atomique F[v1,v2, ... ,vn] et pour tous a17a2, ... ,an de
fT Mi: lf.l
"fT ID'ti/ .:71= F[31,a2,... ,an] lf.l
si et seulement si { i E 1 ; roti 1= F[a~,a~, ... ,a~]} E :7.
• Tout d'abord, si c est un symbole de constante, alors l'interprétation de
c dans
fT ID'tï/ .:7 est la classe modulo~ lf.l
ar tf
de la suite (ci ; i E 1).
213
4. Produits réduits et ultraproduits
• Soient R un symbole de prédicat d'arité n et a 1,a2,... ,an des points de
'fT SJR.ïf !7. Soit, pour chaque k compris entre 1 et n, (b~ ; i E 1) un autre représentant dans n Mi de ak. Alors: td
id
{i
E 1;
pour tout k compris entre 1 et n, a~= b~}
E
!Y,
et par conséquent, {i E 1; SJR.i 1= Ra!a~ ... a~} E !Y si et seulement si {i E 1; SJR.i 1= Rb!b~ ... b~} E /7. Il est donc légitime et naturel de décider que : SJR.ïf !Y 1= Ra1a2... an si et seulement si { i E 1 ; SJR.i 1= Ra!a~ ... a~} E /7.
'fT lf.l
points de
'fT lf.l
• Soient maintenant f un symbole de fonction d'arité n et aha2,... ,an des M ï/ !7. On remarque encore que si, pour tout k compris entre 1 et n,
(b~ ; i E1) est un autre représentant de ak, alors : (fi(a!,a~, ... ,a~) ; i E 1) ~!Y (fi(b!,b~, ... ,b~) ; i E 1). L'interprétation de f dans
'fT SJR.ïf !Y est l'application qui à aha2, ... ,an fait correspondre lf.l
la classe de (fi(aLa~, ... ,a~); i E 1) relativement à~ !Y'
EXEMPLE : Le produit défini en 4.1 est un cas particulier de produit réduit : il correspond au cas où !Y a pour unique élément l'ensemble 1 tout entier. On verra que les produits réduits de groupes, d'anneaux ou d'ensembles ordonnnés sont respectivement des groupes, des anneaux ou des ensembles ordonnés. On verra aussi (exercice 14) qu'un produit réduit de corps n'est que très rarement un corps. Dans le cas où toutes les structures SJR.i sont égales à une même structure SJR., on parlera de puissance réduite de SJJt modulo !7. On la désignera par SJR. 1/!Y.
'fT
4.3 Si !Y est un ultrafiltre, alors SJR.ïf !Y est appelé 1'ultraproduit de la famille lf.l (SJR.i).If. 1 modulo !7, et si toutes les structures SJR.i sont égales à une même structure rot, on parlera d'ultrapuissance de SJJt modulo !Y (et on écrira conformément à la convention précédente SJR. 1/ :7). L'intéret des ultraproduits réside dans le théorème suivant, appelé théorème de Los :
THEOREME: Soient (SJR.i; i E 1) une famille de L-structures et !Y un ultrafiltre sur 1. Alors, pour toute formule F[vhv 2,... ,vn] de L et tous éléments a1,a2, ... ,an de Mi ,
'fT lf.l
'fT SJR.i/!YI=F[aha2, ... ,an) si et seulement si {i E 1; SJR.ïi=F[a!,a~, ... ,a~]}E!Y. lf.l
Chapitre 8. Un peu de théorie des modèles
214
~
On peut supposer d'abord que les seuls connecteurs propositionnels figurant dans F sont -, et 1\ et que le quantificateur universel n'y apparaît pas. La preuve se fait alors par induction sur la hauteur de F. On a déjà le résultat si F est une formule atomique. • Cas où F[v1,v2, ... ,vn) = -,G[v1,v2, ... ,vn). Pour tous éléments a1,a 2,... ,an de
nM· ÏEI
''
n. 1 ;u"i1:Y r Cl'»
L-
F[-a,a2, - ... ,an - 1 SI· et seulement SI·
If.
n 1 roti 1:Y .
u IT
1E
G[-a1,a- 2,... ,an - 1,
et donc, par hypothèse d'induction, si et seulement si {i E 1; roti F G[aLa~, ... ,a~)};. :Y. Or :Y est un ultrafiltre, donc { i E 1 ; roti F G[aLa~, ... ,a~]} ;. :Y si et seulement si son complémentaire appartient à :Y. Donc:
'fT 9Xï/ :Y t= F[a a2,... ,an]
si et seulement si { i E 1 ; roti t=
11
lf.l
• Cas où F[v 1,v2, ... ,vn] a11 a2, ... ,an de Mï,
'fJ
= G[v,v2, ... ,vn)/\ H[v1,v2, ... ,vn).
F[aLa~, ... ,a~)}
E :Y.
Alors, pour tous éléments
lf.l
'fT rotï/ :Y t= F(a1,a2,... ,an] si et seulement si lEI
'fT 9Xï/ :Y t= G(a1,a2, ... ,an) et 'fT 9Xï/ :Y t= H(a,a2, ... ,an)· lEI
lEI
Par hypothèse d'induction, ceci est encore équivalent à: { i E 1 ; roti t= G[a~,a~, ... ,a~)} E :Y et { i E 1 ; roti t= H[aLa~, ... ,a~)} E :Y. Or :Y est un filtre ; donc ces ensembles appartiennent tous les deux à :Y si et seulement si leur intersection appartient à :Y, et leur intersection est égale à : {i E 1; roti t= F[aLa~, ... ,a~)}. • Cas où F[v1,v 2,... ,vn] = 3voG[vo,v, ... ,vn]· Soient a1,a2, ... ,an des éléments de Mi et supposons que: 9Xï/ :Y t= F(a1,a2, ... ,an]·
'fT lEI
'fT Alors, il existe a E 'fT Mi tel que 'flrotï/ :Y t= G(a ,a lEI
0
lEI
lEI
0
1, ... ,an]
. Par hypothèse
d'induction, on voit donc que l'ensemble X= { i E 1 ; roti F G[a~,aL ... ,a~]} appartient à :Y. Il est clair que si i EX, roti t= 3v0G[v 0 ,a1,a2, ... ,an), et donc l'ensemble { i E 1 ; roti F F[a~,a~, ... ,a~]} contient X et appartient à :Y. Réciproquement, supposons que Y= { i E 1 ; roti F F[a~,a~, ... ,a~)} E :Y. On définit une suite a 0 =(a~; i E 1) de la façon suivante : si i E Y, a~ est un point de Mi tel que roti F G[a~,a!, ... ,a~] ; si i ;. Y, on prend pour a~ n'importe quel point de Mi· On voit alors que { i E 1 ; roti F G[aJ,aL ... ,a~)} contient Y, donc appartient à :Y et, par hypothèse d'induction, 'flrotï/ :Y t= G(a0,a, ... ,an]· lEI
~
On remarquera que c'est uniquement dans l'étape de la négation que l'on utilise le fait que :Y est un ultrafiltre et pas seulement un filtre. Dans le cas particulier où F est une formule close, le théorème de Los nous dit que F est vraie dans un ultraproduit de la famille (roti ; i E 1) si et seulement si elle est vraie dans «presque tous» les roti.
215
4. Produits réduits et ultraproduits
4.4 La construction des produits réduits et des ultraproduits est purement algébrique, et on a besoin de très peu de choses pour établir le théorème de Los. L'argument qui suit donne une nouvelle preuve du théorème de compacité. Cette preuve est débarrassée de toute considération syntaxique, contrairement à celle qui a déjà été donnée qui s'appuie sur le théorème de complétude.
COROLLAIRE : Soit T une théorie dont tout sous-ensemble fini a un modèle. Alors T a un modèle.
~ Appelons 1 l'ensemble des parties finies de T. Pour chaque i E 1, choisissons un modèle roti dei (on sait qu'il en existe). Maintenant, pour chaque formule F de T, considérons le sous-ensemble X(F) suivant de 1 : X(F) = {i E 1 ; F E i }. On voit que l'intersection d'un nombre fini d'ensembles de la forme X(F) n'est jamais
0
vide: en effet, si F1,F 2,... ,Fn sont dans T, alors { FhF2, ... ,Fn} appartient à X(Fi)· 1<; •
"fJ
4.5 La proposition suivante dit qu'une ultrapuissance de rot peut être considérée comme une extension élémentaire de rot :
PROPOSITION : Soient rot une L-structure, 1 un ensemble et !? un ultrafiltre sur 1. Pour a E M, appelons c(a) l'application de 1 dans M constante et égale à a, et h(a) la classe de c( a) modulo ~ !?" Alors h est une application élémentaire de rot dans rot 1/ !?.
~
Moyennant le théorème de Los, cela revient à dire que pour toute formule F(vhv2,... ,vn] de Let tous éléments aha 2,... ,an de M : rott= F(a 1,a 2,... ,an] si et seulement si { i E 1; rott= F(c(a 1)i,c(a 2)i, ... ,c(an)i]} E !?. C'est donc évident puisque, pour tout i E 1 et pour tout k compris entre 1 et n, c(ak)i est égal à ak. ~
216
Chapitre 8. Un peu de théorie des modèles
5. THEOREMES DE PRESERVATION
Préservation par sous-structure 5.1 Les théorèmes de préservation sont des résultats qui relient la forme syntaxique d'une théorie aux propriétés de clôture de la classe de ses modèles. Le plus facile, par lequel on va commencer, concerne la préservation des formules universelles. Le problème a déjà été abordé au chapitre 3 (5 .1, théorème 2). Rappelons une définition:
DEFINITION : Une formule universelle est une formule prénexe dans laquelle le quantificateur existentiel n'a pas d'occurrence. Une théorie universelle est une théorie composée uniquement de formules universelles.
Par exemple, la théorie des ordres totaux (axiomes (i), (ii), (iii) de 1. 3) est une théorie universelle. Les groupes offrent un exemple intéressant. Dans le langage composé d'un symbole de constante 1 et d'un symbole de fonction binaire · , les axiomes en sont :
(i) (ii) (iii)
Vv1Vv2Vv3 (vt·v2)·v3 ~ Vt·(v2·v3); Vvt(Vt•1 ~ Vt A 1·Vt ~ Vt) ; Vvt3v2(vt•V2 ~ 1 A v2·v1 ~ 1).
Il ne s'agit donc pas d'une théorie universelle, à cause du troisième axiome. Toutefois, on peut choisir d'inclure dans le langage un symbole de fonction unaire -t pour désigner la fonction inverse. Dans ce cas, le troisième axiome doit être remplacé par : (iii bis) Vv 1(vt·v11 ~ 1 A v11·vt ~ 1), ce qui, cette fois, donne une axiomatisation universelle. REMARQUE : La conjonction de deux formules universelles n'est pas en général une formule universelle. Cependant, elle est équivalente à une formule universelle. En effet : VvtVv2... VvnF 1 A VwtVw2 ... VwpF2 est équivalente à VvtVv2... VvnVwtVw2 ... Vwp(Ft A F2) pourvu que les Vi (pour i compris entre 1 et n) n'aient pas d'occurrence libre dans F2 et que les Wj (pour j compris entre 1 et p) n'aient pas d'occurrences libres dans F1. Quitte à renommer les variables liées, on peut toujours supposer que cette condition est satisfaite. La conjonction d'un nombre fini de formules universelles est aussi équivalente à une formule universelle. De même pour la disjonction de formules universelles : VvtVv2... VvnF 1 V VwtVw2 ... VwpF2 est équivalente à VvtVv2 ... VvnVwtVw2 ... Vwp(Ft V F2) si la condition mentionnée plus haut est encore vérifiée.
5. Théorèmes de préservation
5.2
217
DEFINITION : On dit qu'une théorie T est préservée par sous-structure si,
pour tout modèle rot de Tet toute sous-structure 91 de rot, 91 est un modèle de T. Une formule close F est préservée par sous-structure si la théorie { F} l'est.
Voici donc le théorème de préservation des formules universelles promis:
THEOREME: Soit T une théorie dans un langage L; alors les deux
conditions suivantes sont équivalentes : Il existe une théorie universelle w dans L équivalente à T. i) ii) La théorie T est préservée par sous-structure.
~
Le sens i) =>ii) a été établi au chapitre 3 (5 .1, théorème 2). Pour la réciproque,
on reprend une idée déjà exposée dans l'exercice 20 du chapitre 3. Supposons que ii) soit vérifiée. Pqsons :
w= { G ; G est une formule universelle close et T ~ G }. Il est clair que toute formule de w est conséquence de T . On va montrer que tout modèle de w est un modèle de T. Soit donc rot un modèle de w. Considérons le diagramme simple de rot : â(rot) = { H[~ 1 ,b, ... ,~n] ; H est une formule sans quantificateur et rott= H[a 1,a 2,... ,an] }. Il suffit de montrer que â(rot) U T a un modèle : on a vu que, dans ce cas, â(rot) U T a un modèle qui est une extension de rot (lemme 2.3). Avec l'hypothèse ii), cela montre que rot est un modèle de T. Supposons que â(rot) UT n'est pas consistante ; il existe des formules sans quantificateur Hl[vl,v2, ... ,vn], H2[vhv2, ... ,vn], ... , Hp(vhv2, ... ,vn] et des points a11 a2, ... ,an dans M tels que :
T ~ -,(H1[~1,~2,···,~n] A H2[~11b, ... ,~n] A ... A Hp[~1,b, ... ,~n]) et rott= H1[aha2, ... ,an] A H2[aha2, ... ,an] A ... A Hp(aha2, ... ,an] Mais, puisque les symboles ~h pour 1 ~ i ~ n, n'apparaissent pas dans T, on a: T ~ VvNv2 ... Vvn-,(Hl[vl,v2,···,vn] A H2[vl,v2,···,vn] A ... A Hp(vhv2, ... ,vn]) ce qui prouve que VvNv2 ... Vvn-,(Hl[vl,v2,···,vn] A H2[v1,v2, ... ,vn] A ... A Hp(v 11 v2, ... ,vn]) est une formule de w. Ceci contredit le fait que rot est un modèle de w. ~
Reprenons l'exemple des groupes. Si le langage est (1, · ), alors il est faux que toute sous-structure d'un groupe est un groupe: par exemple, IN est une sous-structure de "'0. et n'en est pas un sous-groupe ; cela mmitre que, dans ce langage, la théorie des
218
Chapitre 8. Un peu de théorie des modèles
groupes n'est pas équivalente à une théorie universelle. Mais si on ajoute au langage la fonction inverse, la notion de sous-structure change (une sous-structure doit être close pour toutes les fonctions du langage), et alors une sous-structure d'un groupe est nécessairement un groupe, ce qui n'est pas étonnant puisqu'on a, dans ce cas, une axiomatisation universelle.
5.3
COROLLAIRE : Soit F une formule close dans un langage L ; alors les deux
conditions suivantes sont équivalentes: i) Il existe une formule universelle close G dans L équivalente à F. ii) La formule F est préservée par sous-structure.
r;:;J Le sens i) ==:}ii) est contenu dans le théorème précédent. Supposons donc ii). Le théorème précédent nous dit encore qu'il existe une théorie universelle wéquivalente à F.
Par compacité, il existe une partie finie w0 de -.)équivalente à F qui est donc équivalente à la conjonction des formules de w0, elle-même équivalente, par la remarque 5 .1, à une formule universelle. ~
5.4
Ces théorèmes admettent un dual: on dit qu'une formule close F (ou qu'une
théorie T) est preservée par extension si, pour tout modèle rot de F (de T) et toute extension 'Jt de rot, 'Jt est un modèle de F (de T). D'autre part, une formule existentielle est une formule prénexe dans laquelle le quantificateur universel n'a pas d'occurrence et une théorie existentielle est une théorie constituée de formules existentielles. Alors, on voit qu'une formule est équivalente à une formule existentielle si et seulement si sa négation est équivalente à une formule universelle, et qu'une formule est préservée par extension si et seulement si sa négation est préservée par sous-structure. De tout cela on déduit le théorème de préservation des formules et des théories existentielles:
THEOREME : Une formule close est préservée par extension si et seulement
si elle est équivalente à une formule existentielle. De même, une théorie est préservée par extension si et seulement si elle est équivalente à une théorie existentielle.
219
5. Théorèmes de préservation
Préservation par union de chaîne 5.5
Passons maintenant à quelque chose de plus compliqué :
DEFINITION : Une formule V3 (lire« pour tout il existe») est une formule prénexe de la forme VvNv2 ... Vvn3Vn+13vn+2··· 3vn+pG ,
où G est une formule sans quantificateur. Un théorie V3 est une théorie constituée de formules V3.
Une formule V3 commence donc par un certain nombre (éventuellement zéro) de quantificateurs universels qui sont suivis de quantificateurs existentiels qui eux-même sont suivis d'une formule sans quantificateur. Les formules universelles ou existentielles sont des cas particuliers de formules V3. Remarquons encore que la conjonction ou la disjonction d'un nombre fini de formules V3 est équivalente à une formule V3 (ce qui se démontre sans peine, toujours en renommant les variables liées).
5.6
DEFINITION : On dit qu'une théorie Test préservée pa.r union de chaîne si
toute union de chaîne de modèles de T est encore un modèle de T. Une formule close F est préservée pa.r union de chaîne si la théorie { F} l'est.
En paraphrasant, T est préservée par union de chaîne si et seulement si la condition suivante est vérifiée : • Si (1,<) est un ensemble totalement ordonné et si (roti ; i E 1) est une famille de modèles de T telle que, pour tout éléments i et j de 1, i alors
< j implique roti Ç ID'tj,
U roti est un modèle de T. it.l
THEOREME : Une théorie est préservée par union de chaîne si et seulement si elle est équivalente à une théorie V3.
220
Chapitre 8. Un peu de théorie des modèles
On va d'abord voir qu'une formule close V3 est préservée par union de chaîne ; cela impliquera clairement que les formules closes équivalentes à une formule close V3 et que les théories équivalentes à une théorie V3 sont aussi préservées par union de chaîne. Considérons donc la formule F = VvNv 2... Vvn3Vn+ 13vn+2···3vn+pH[v1,v2,···,vn+p], où H est une formule sans quantificateur. Soient (1,<) un ensemble totalement ordonné et (roti ; i E 1) une chaîne de modèles de F. Posons rot= V roti. Il s'agit de montrer que rot lE 1 est un modèle de F. Pour cela, prenons des éléments quelconques a1,a 2 , ... ,an de M et montrons que : !;il
rot 1= 3vn+13vn+2···3vn+pH(aha2,···an,Vn+l,vn+2, ... ,vn+p]. Puisque la famille (roti ; i E 1) est totalement ordonnée par inclusion, il existe un indice i E 1 tel que tous les ak, pour k compris entre 1 et n, sont contenus dans Mi· Parce que roti est un modèle de F, il existe des points an+h an+2, ... ,an+P dans Mi tels que: roti 1= H[a 1,a 2,... ,an+p]; alors roll= H[a 1,a 2,... ,an+p] parce que H est sans quantificateur et que rot est une extension de roti. On voit donc que rot 1= F . Pour la réciproque, on va montrer qu'une théorie T préservée par union de chaîne est équivalente à une théorie V3. Posons : w= { G ; G est une formule V3 close et T 1- G}. Il est clair que toute formule de "W est conséquence de T, et on va voir que l'inverse est vrai. On commence par une définition et deux lemmes.
5.7
DEFINITION : Soient rot et mdeux L-structures telles que rot Ç 'Jl. On dit que rot est une sous-structure !-élémentaire de met on écrit rot -<1 msi, pour toute formule universelle F[vhv2,... ,vn] deL et tous éléments a11 a2, ... , an de M, si rot 1= F[a 1,a2, ... ,an] alors 91 1= F[al,a2,···,an]·
On voit facilement que, si rot est une sous-structure !-élémentaire de m, alors, pour toute formule universelle ou existentielle F[v1,v 2,... ,vn] de L et tous éléments a1, a2, ... , an de M, rot 1= F[aha2,. .. ,an] si et seulement si 91 1= F[aha2, ... ,an]· Cela justifie l'expression « !-élémentaire» (élémentaire pour les formules à un seul bloc de quantificateurs).
LEMME 1 : Supposons que rot -<1m. Alors il existe rot' telle que rot-< rot' et mç rot'.
5. Théorèmes de préservation
221
~ On utilise la méthode des diagrammes. On considère les théories suivantes dans LN (le diagramme simple de ~et le diagramme complet de rot) :
L\(~)
= {H[ih~2, .•• ,in] ; H est une formule deL sans quantificateur, a1, a 2, ... ,an
sont des points deN et ~1= H[a 1,a 2, ... ,an]}, et D(rot) = { F[i1,b,···,in] ; Fest une formule deL , a 1, a2, ... ,an sont des points de M et rot 1= H[a 1,a2, ... ,an) }. On va montrer que L\(~) U D(rot) est une théorie consistante ; on aura alors terminé, car, grâce au lemme 2. 3, on aura une extension (simple) de ~qui est un modèle de D(rot), c'est-à-dire une extension élémentaire de rot. L'ensemble L\(~) est clos par conjonction. En utilisant le théorème de compacité, on voit que, si l'on suppose que L\(~) u D(rot) n'est pas consistant, alors on obtient une formule de L\(~), écrite sous la forme H(i1,b,···,in,in+h···,in+p), où H est sans quantificateur, a 1,a 2,... ,an sont des points de M et an+han+ 2,... ,an+p sont des points de N - M, telle que: D(rot) ~ -,H[il,b,···,in,in+h···,in+p)· Puisque les ah pour i compris entre n + 1 et n + p, n'apparaissent pas dans D(rot), on a: D(rot) ~ Vv,Vv2···Vvp-,H(i1,b, ... ,in,v1,···,vp) et donc: rot 1= Vv,Vv2 ... Vvp-,H(a1,a2, ... ,an,v1,···,vp). Or cette formule n'est manifestement pas satisfaite dans ~ (puisque
la formule
H[a 1,a 2, ... ,an,an+1,... ,an+p] y est satisfaite), et cela contredit le fait que rot -< 1 ~-
e LEMME 2: Soit ~ un modèle de li. Alors il existe une extension
!-élémentaire de~ qui est modèle de T.
~
L\ 1 (~)
Considérons la théorie :
= {H(i1,b,···,in] ; H est la conjonction de formules universelles deL, a 1 ,a 2 , ... ,an
sont des points deN et~ 1= H[aha 2, ... ,an) }. On voit d'abord que L\ 1 (~) UT est une théorie consistante: sinon, il existe une formule H[ihi2,···,in] de L\1(~) (qui est clos par conjonction) telle que: T ~ -,H[il,b,···,in), et puisque les ai, pour i compris entre 1 et n, n'apparaissent pas dans T : T ~ Vv,Vv2···Vvn-,H[v1,v2,. .. ,vn]· Comme H est équivalente à une formule universelle, -,H[v 1,v 2,... ,vn] est équivalente à une formule existentielle et Vv,Vv 2... Vvn-,H[v1,v2,. .. ,vn) est équivalente à une formule V3 qui appartient à '1, par définition de ce dernier ensemble. On obtient une contradiction avec le fait que
~est
modèle de li.
222
Chapitre 8. Un peu de théorie des modèles
On peut donc trouver un modèle rot de .6.1(m) uT que l'on peut supposer, toujours grâce à ce même lemme 2. 3, être une extension de m. Le fait que ce soit un modèle de .6.1(m) montre immédiatement que m -<1 rot. ~
On peut maintenant montrer que tout modèle de \)i est modèle de T : on part d'un modèle roto de w. Grâce au lemme 2, on trouve un modèle rot1 de T tel que roto -<1 rot1. On utilise ensuite le lemme 1 pour trouver une extension élémentaire rot2 de roto (qui est donc un modèle de w) qui est aussi une extension de rot1. On continue en appliquant alternativement les lemmes 2 et 1 et on construit ainsi une chaîne (rotk ; k E IN) de L-structures telle que, pour tout k, rot2k est un modèle de w, rot2k+ 1 est un modèle de T, rot2k -<1 rot2k+1 et rot2k -< rot2k+2· Posons rot = U rotk. On remarque que rot est aussi égale à U rot2k et à kEN kEN U rot2k+ 1 . Puisque Test préservée par union de chaîne, rot est un modèle de T. D'après kf.N le théorème de l'union de chaîne de Tarski (2.9), puisque la chaîne (rot2k ; k E IN) est élémentaire, rot est une extension élémentaire de roto, donc roto est aussi un modèle de T. ~
REMARQUE : Dans le raisonnement précédent, on a seulement utilisé le fait queT était
préservée par union de chaîne indexée par les entiers. Autrement dit, on a aussi montré: Si pour toute suite croissante (rotn ; n E IN) de modèles de T, U !Dtn est un nd~ modèle de T, alors T est équivalente à une théorie V3. Comme exemple de théorie V3 (donc préservée par union de chaîne), il y a les théories des groupes, des corps, des ordres, des ordres denses sans extrémités. En revanche, la théorie des ordres denses avec un premier et un dernier élément n'est pas préservée par union de chaîne. Voici une axiomatisation de cette théorie : (i) Vvo(-wo < vo) (ii) VvoVv1((vo < v1 (::=:=:} -w1 < vo) V vo = v1) (iii) VvoVvNv2((vo < v1 Av1 < v2) ===> vo < v2) (iv) -Nvo3v1 vo < v1 (v) -..Vvo3v1 v1 < vo (vi) VvoVv13v2(vo < v1 ===> (vo < v2 Av2 < v1)). Pour chaque entier i strictement positif, soit roti l'intervalle réel [ -i,+i] ; on voit que chaque roti est un modèle de la théorie ci-dessus, mais que l'union des roti est IR tout entier et n'a ni plus grand ni plus petit élément. Cela montre que l'on ne peut pas trouver d'axiomatisation V3 de la notion d'ordre dense avec premier et dernier élément.
5.8
5.9
Un raisonnement par compacité, analogue à celui du corollaire 5.3 donne:
223
5. Théorèmes de préservation
THEOREME : Une formule close est préservée par union de chaîne si et
seulement si elle est équivalente à une formule close V3.
Préservation par produit réduit
5.10
On va maintenant franchir un nouveau cap et s'intéresser à la préservation par
produit réduit.
DEFINITION 1 : Les formulœ de Horn élémentaires sont les formules de la
forme: H1 V H2 V ... V Hn
où l'une au plus des formules Hi (pour i compris entre 1 et n) est une formule atomique, les autres étant des négations de formules atomiques. Une formule de Horn est une formule que l'on peut obtenir à partir de formules de Horn élémentaires en utilisant la conjonction et les quantifications existentielles et universelles.
Les formules de Horn élémentaires sont des clauses (voir la définition 5.6 du chapitre 4). A équivalence logique près, les formules de Horn élémentaires sont donc les formules d'une des deux formes suivantes : • (F 1 A F2 A ... A Fn-1):::::} Fn , où, pour k compris entre 1 et n, les Fk sont des formules atomiques ; c'est le cas où il y a effectivement une formule atomique parmi les
formules Hk de la définition ; • H1 V H2 V ... V Hn où toutes les Hk, pour k compris entre 1 et n sont des négations de formules atomiques. On pourrait écrire ces formules sous la forme précédente si on admet la formule toujours fausse parmi les formules atomiques. Par définition, la conjonction d'un nombre fini de formules de Horn est encore une formule de Horn. On voit facilement qu'une formule de Horn est équivalente à une formule de la forme : Qlv1Q2v2···Qnvn(G1 A G2 A ... A Gk) où chaque Qi, pour compris entre 1 et n, représente le quantificateur V ou le quantificateur 3, et les Gj, pour j compris entre 1 et k sont des formules de Horn
élémentaires.
224
Chapitre 8. Un peu de théorie des modèles
EXEMPLE : La théorie des groupes et celle des anneaux s'axiomatisent à l'aide de formules de Horn. En revanche, on peut voir (exercice 14), qu'il est impossible d'axiomatiser la théorie des corps par des formules de Horn. C'est l'axiome: Vv13v2(-,v1 ~ 0::::::) V1·v2 ~ 1) qui n'est pas équivalent à une formule de Horn.
DEFINITION 2 : On dit qu'une formule close F d'un langage Lest préservée
par produit réduit si, pout tout ensemble 1, pour tout filtre .!? sur 1, et toute famille (roti ; i E 1) deL-structures, si { i E 1 ; roti 1= F} E .!?, alors
n 1 rot·/!? t= F. ÏE
5.11
e;)
l
PROPOSITION : Les formules de Horn sont préservées par produit réduit.
La proposition découle de la propriété suivante:
(*) Pour toute formule de Horn G[v 11 v2,. .. ,vn) de L, pour toute famille (roti ; i E 1) de L-structures, pour tout filtre .!? sur 1et pour tous a1,a 2,... ,an de Mi ,
'fT
SI·
{.1 E 1; ;u"i cnt I=G[a1ï,a2,i ... ,anï]}
E
n cnt/ -,..] . ;u"i .!? I=G[-a1,a2, ... ,an
.!? alors .
(On reprend ici les notations de la section 4 : si a
1E
E
rd
1
'fT Mi , ai est la i-ème coordonnée lEI
de a et
aest la classe de a relativement à~.!?). On va montrer ( *) par récurrence sur le nombre d'étapes nécessaires pour
obtenir G[v1,v2,. .. ,vn) à partir de formules de Horn élémentaires. • Cas où G[v 11 v2,... ,vn) est une formule de Horn élémentaire: on peut alors écrire G[v1,v2,···,vn) sous la forme H1[v1,v2,···,vn) V H2[v1,v2,···,vn) V ... V Hk[v1,v2, ... ,vn], où H1 est soit une formule atomique, soit une formule toujours fausse, et où, pour j compris entre 2 et k, Hj = •Jj, où Jj est une formule atomique. Posons, pour chaque j compris entre 1 et k, Xj = { i E 1 ; roti 1= Hj[a~,a~, ... ,a~)} et appelons Yj le complémentaire de Xj dans 1. Par hypothèse:
U
1
Xj
= {i E 1 ; roti 1= G[ata~, ... ,a~)} E .!? .
On distingue deux possibilités. - Première possibilité : il existe un entier j compris entre 2 et k tel que Yj n'appartienne pas à .!?. Cela veut dire que {i E 1; roti 1= Jj[a~,a~, ... ,a~]} ~.!?; par définition du produit réduit et parce que J j est atomique, cela implique que
5. Théorèmes de préservation
225
- Dans le cas contraire,
r\ Yj
2(j <;k
E
.:?. Mais :
U x·]J n r'2<;j<;k r\ Y·]J c- x1 ' [l(J(k et ceci implique que X1= {i E 1 ; IDtï 1= H 1 [aLa~, ... ,a~]} E .:? ; dans ce cas, H1 est une formule atomique (sinon, l'ensemble vide appartiendrait à .:?), et, d'après la définition
, n. du produit réduit, Id
nrt - , et done n ;u"i 1.:? 1= H1[a11-a2, ... ,an . 1
nrt ;u"i
lt.l
- . 1.:? 1= G[-a11-a2, ... ,an 1
• Cas où G = G1 A G2 : il n'y a guère de problème : si { i E 1 ; IDtï 1= G[a~,a~, ... ,a~)} E .:?,
alors { i E 1 ; IDtï 1= G 1 [aLa~, ... ,a~]} et, par hypothèse d'induction,
E
.:? et { i
E 1;
IDtï 1= G 2 [aLa~, ... ,a~]}
E
.:?,
n. IDtï 1.:? I=Gr:;--1 et nnrtl -1 , na a2,... ,an . .:? I=Gr:;-2La 1,a2, ... ,an "fT IDtï/.:? 1= G1[i1,a2, ... ,a"] "G2[iha2, ... ,an) . Id
donc
;u"i
11
lt.l
lt.l
• Cas où G = 3voG 1[vo,v 1,... ,vn) : si l'ensemble X= { i appartient à .:?, on peut définir un élément a0 E
E 1;
IDtï 1= G[a~,a~, ... ,a~)}
"fT Mi de la façon suivante : si i
E
X, aJ
lt.l
est un point de Mi tel que : IDtï 1= G1[aJ,a~, ... ,a~] ;
si i ~X, on prend pour aJ n'importe quel point de Mi; on voit alors que:
{i E 1; IDtï 1= G 1 [aJ,a~, ... ,a~]} =X, et, par hypothèse d'induction,
fT IDtï/.:? 1= G1[io,ah ... ,a"] fT IDtï/.:? 1= G[i ,an]· lt.l
et donc
lt.l
11 ...
• Cas où G = VvoG 1[vo,v 11 ... ,vn] : notre hypothèse est que: X= { i E 1 ; IDtï 1= VvoGl[vo,aLa~, ... ,a~]} E .:? ; soit a0 E
"fT Mi ; on veut montrer que "fT IDtï/.:? 1= G1[a ,a lt.l
lt.l
0
11 ... ,an]·
Or pour tout i EX,
IDtï 1= G1[aJ,aL ... ,a~], donc l'ensemble { i ; IDtï 1= G1[aJ,aL ... ,a~] } contient X et appartient à .:?. Par hypothèse d'induction, cela implique que :
fT IDtï/.:? 1= Gl[io,al, ... ,an]· lt.l
5.12 La réciproque de cette proposition est vraie : toute formule qui est préservée par produit réduit est équivalente à une formule de Horn. Cependant, la démonstration utilise des techniques qui n'ont pas été abordées dans ce court aperçu et on ne la donnera pas ici. On se contentera des formules de Horn universelles.
226
Chapitre 8. Un peu de théorie des modèles
PROPOSITION : Soient F une formule close. Les trois conditions suivantes sont équivalentes : i) Fest équivalente à une formule de Horn universelle; ii) Fest préservée par produit réduit et par sous-structure; F est préservée par produit fini et par sous-structure. iii)
~ L'implication i) ====* ii) découle de la proposition 5.11 et du corollaire 5. 3 ; L'implication ii)====* iii) est évidente. Voyons l'implication iii)====* i). Puisque F est préservée par sous-structure, elle est équivalente à une formule universelle :
G = VvNv2 ... VvnH[vhv2, ... ,vn)· On peut de plus supposer que H est écrite sous forme conjonctive, (voir chapitre 3, 4.3), c'est-à-dire :
H[v1,v2, ... ,vn) = H1[v1,v2, ... ,vn) A H2[vhv2, ... ,vn) A ... A Hk[vhv2, ... ,vn), où chacune des formules Hh pour i compris entre 1 et k, est la disjonction de formules atomiques et de négations de formules atomiques. Or les quantificateurs universels commutent avec la conjonction, ce qui fait que notre formule G est équivalente à l'ensemble suivant : {VvNv2 ... VvnH i[vhv2,···,vn) ; 1 ~ i ~ k }. On va remplacer chacune des formules VvNv2... VvnH ï[v 1,v 2,... ,vn] par une formule de Horn grâce au lemme suivant :
LEMME : Soient T une théorie, K une formule close de la forme: VvNv2 ... Vvn(A1 v A2 v ... v Au v -,81 v -,82 v ... V -,8t), où chaque A iJ pour i compris entre 1 et u est une formule atomique, de même que chaque 8j, pour j compris entre 1 et t. On suppose queT U { K} est préservée par produit fini. Alors il existe une formule de Horn universelle J telle que :
~
Pour chaque v compris entre 1 et u, considérons la formule: Kv = VvNv2 ... Vvn(Av V -,81 V -,82 V ... V -,8t)· C'est manifestement une formule de Horn universelle; il est tout aussi manifeste que 1- Kv ====* K . On va montrer qu'il existe un entier v compris entre 1 et u tel que: T 1- K ====* Kv . On raisonne par l'absurde et on suppose le contraire: pour 1 ~v ~ u, on obtient une structure Vltv qui est modèle de T, de K et de -,Kv. Il existe donc dans Mv des points a~, a;, ... ,a~ tels que:
6. Les théories aleph-zéro-catégoriques
227
rotv t= -,Av[ar,a;, ... ,a~] et rotv t= Bï[ar,a;, ... ,a~] pour 1 ~ i Considérons alors le produit rot=
~ t.
~ roti , et, dans ce produit, les points
1(
I(U
ak = (ak; 1 ~v~ u) pour 1 ~ k ~ n. Par définition du produit, on a: rott= -,Av[aha 2, ... ,an] pour v compris entre 1 et u, et rott= Bv[a 1,a 2 , ... ,an] pour v compris entre 1 et t. On en déduit que K n'est pas satisfaite dans rot, ce qui contredit le fait que T
U{
K} est préservée par produit fini. ~
Revenons à la preuve de la proposition : on applique le lemme à la formule K = VvNv2 ... VvnH1[vl,v2,···,vn) et à la théorie T = {VvNv2... VvnH i[vl,v2, ... ,vn) ; 2 ~ i ~ k }. On obtient une formule de Horn universelle J1, de telle sorte que G soit équivalente à l'ensemble { J1} U {VvNv2... VvnH i[vhv2, ... ,vn) ; 2 ~ i ~ k }. puis on fait la même chose pour remplacer la formule VvNv2... VvnH 2(vhv2, ... ,vn) par une formule de Horn universelle, etc., jusqu'à obtenir une ensemble de formules de Horn universelles, qui lui-même est équivalent à une formule de Horn universelle. ~
6. LES THEORIES ALEPH-ZERO CATEGORIQUES
Le théorème d'omission des types
6.1 Rappelons qu'une théorie No-catégorique est une théorie ayant un modèle dénombrable, et dont tous les modèles dénombrables sont isomorphes. Les modèles dénombrables d'une telle théorie possèdent un certain nombre de belles propriétés que nous allons mettre en évidence. Dans toute cette section, T sera une théorie complète dans un langage L dénombrable, et modèle voudra dire : modèle de T. On commence par introduire les notions de type et de type isolé, qui sont essentielles dans cette matière.
228
Chapitre 8. Un peu de théorie des modèles
DEFINITIONS : 1") Soit n un entier. Un n-type p est un ensemble de formules de L, clos par conjonction et tel que seules les variables v0, vh ... , Vn-1 peuvent être libres dans une formule de p. On parlera de type si on ne veut pas préciser la valeur de l'entier n. ~)Soient p un n-type, rot un modèle et a0,ah···,an-1 des points de rot. On dit que la suite (a 0,a 11 •.. ,an-1) réaJise p si, pour toute formule F(vo,v1, ... ,Vn-1] de p, on a :
rotl= F(ao,ah···,an-1]· 3") On dit qu'un modèle rot réalise un n-type p, ou que p est réa.lisé dans rot, s'il existe une suite de rot réalisant p. Dans le cas contraire, on dit que rot omet p. 4") Soit a= (ao,a 1,... ,an-1) une suite de points d'un modèle rot. On appelle type de a dans rot, et on note t(a/rot) le n-type:
{ F(vo,v1, ... ,vn-1] ; rot 1= F(ao,ah···,an-1] }. 5") Soient p un n-type et G(v0,vh···,Vn-1] une formule. On dit que G(vo,v 1,... ,Vn-1] isole psi: T ~ 3vo3v1 ... 3vn-1G(vo,v1,···,Vn-1], et, pour toute formule F(vo,v 1,... ,vn-1] de p : T ~ VvoVv1···Vvn-t(G(vo,vt,···,Vn-1]::::::} F[vo,vt,···,Vn-tD· On dit que p est isolé s'il existe une formule qui l'isole.
6.2
Voici d'abord quelques lemmes et remarques avant d'aborder le théorème clef
qui est le théorème d'omission des types.
LEMME 1 : Si p est un n-type, alors les trois conditions suivantes sont
équivalentes i) ii) iii)
: il existe un modèle dénombrable réalisant p ; il existe un modèle réalisant p ; pour toute formule F(vo,v11 ••• ,Vn-1] E p, on a : T ~ 3vo3v1 ... 3vn-1F(vo,v1,···,Vn-1]·
~
Il est évident que la condition i) implique la condition ii). Montrons que cette
dernière implique iii). Si rot est un modèle de Tet (ao,ah ... ,an-1) une suite de points de M réalisant pet si F(vo,v1,... ,Vn-1] appartient à p, alors, rot 1= F(ao,ah ... ,an-1], et donc :
rot 1= 3vo3v1···3vn-1F[vo,v1,. .. ,Vn-1]·
6. Les théories aleph-zéro-catégoriques
229
Puisque T est complète, tout autre modèle de T est élémentairement équivalent
à rot, et par conséquent : T 1-- 3vo3v1 ... 3vn-1F[vo,v1,···,vn-1]. Supposons maintenant que la condition iii) soit vérifiée. Ajoutons au langage L des symboles de constante, Co, ch ... ,Cn-1, et considérons la théorie T'suivante : T'= T U { F[co,ch···,Cn-1] ; F[vo,vl,···,Vn-1] E p }. Cette théorie est consistante : sinon, par le théorème de compacité, il existerait un sous-ensemble fini p0 de p tel que : T U { F[co,ch··· ,Cn-1] ; F[vo,v1, ... ,vn-1] E Po} soit inconsistante. La conjonction G[v 0 ,v 1, ... ,Vn-1) des formules de p0 appartient à p (parce que p est clos par conjonction) et : T 1-- -,G[Co,Ch···,Cn-1). Comme les symboles Co, c1, ... ,Cn-1 n'apparaissent pas dans T, on en déduit, comme d'habitude, que : ce qui contredit iii). Par le théorème de Lôwenheim-Skolem, on peut trouver un modèle dénombrable
rot' de T'. Si, pour i compris entre 0 et n - 1, on appelle ai le point de ce modèle qui interprète Cï, et si on appelle rot le réduit de rot' au langage originel L, alors la suite (ao,a 1, ... ,an-1) réalise le type p dans rot. ©
DEFINITION : On dit qu'un type est consistant s'il satisfait les conditions
du lemme 1.
Les deux remarques suivantes sont évidentes : REMARQUE 1 : Si
rot' -
cette même suite réalise p dans REMARQUE 2 : Si
rot et rot' sont deux modèles isomorphes et si pest réalisé dans l'un de
ces deux modèles, alors il est réalisé dans 1' autre.
LEMME 2 :Soient p un type consistant et rot un modèle. Alors il existe une extension élémentaire rot1 de rot dans laquelle p est réalisé.
230
Chapitre 8. Un peu de théorie des modèles
~ On sait qu'il existe un modèle rot' dans lequel p est réalisé. Comme rot et rot' sont élémentairement équivalents, il existe une extension élémentaire rot1 de rot et un plongement élémentaire de rot' dans rot1 (théorème 3 .1 ), donc une sous-structure élémentaire rot2 de rot1 isomorphe à rot'. Les remarques 1 et 2 montrent que pest réalisé dans rot1. f;;)
REMARQUE 3: Un type isolé est réalisé dans tout modèle de T (et est donc consistant). Soit p un n-type isolé, et soit G[v 0,v 1, ... ,Vn-1) une formule qui l'isole. Si rot est un modèle de T, il existe dans M des points a 0 , a 11 .•• ,an-1 tels que:
rot F G[ao,a1, ... ,an-1l· Il est alors clair que le suite (a 0 ,a 1,... ,an-1) réalise p. 6.3
Le théorème d'omission des types est une réciproque à la remarque 3.
THEOREME : Soit p un n-type non isolé. Alors il existe un modèle dénombrable de T omettant p.
~
On va construire un modèle de T en utilisant la méthode de Henkin qui nous a
permis, au chapitre 4, de démontrer le théorème de complétude. Pour obtenir un modèle omettant p, il va falloir jouer un peu plus serré. Soit C = {Ci ; i E w} un ensemble infini de nouveaux symboles de constante que l'on adjoint à L pour obtenir L'. On va construire une théorie T' dans L' jouissant des propriétés suivantes : 1°) T ç T'; 2°) T' est complète dans L' ; 3°) T' admet des témoins de Henkin: si F[v 0] est une formule de
L', alors il
existe un entier i tel que 3v0 F[v 0]::::::} F[ci] ET' ; 4°) si (d 0,d 1,... ,dn-1) est une suite de longueur n d'éléments de C, alors il existe une formule F[vo,v 11 ••• ,Vn-1) E p tel que : -,f[do,d1, ... ,dn-1] ET'. Il est conseillé au lecteur de relire les démonstrations des propositions A et B se trouvant en 2.3 et 2.4 du chapitre 4. On y retrouve les conditions 1o ), 2°) et 3°) ci-dessus, et, à l'aide de ces conditions, on montre les propriétés suivantes : • la relation binaire R sur C définie par : pour tous i et j dans w, R(Ci,Cj) si et seulement si T'~ Ci~ Cj est une relation d'équivalence ; si d E C, on notera (1 sa classe modulo R;
231
6. Les théories aleph-zéro-catégoriques
• appelons M l'ensemble des classes d'équivalence relativement à cette relation; alors on peut définir une L'-structure rot' dont l'ensemble de base est Met telle que: pour tout entier n, pour tous symboles do, d1, ... , dn-t de C, pour toute formule
On utilise maintenant la condition 4°) pour montrer que rot, le réduit de rot' à L, omet le type p : soit (a 0 ,a, ... ,an-t) une suite de points de M, et, pour chaque i compris entre 0 et n - 1, di un point de C tel que ai soit la classe de di· On sait, par 4o ), qu'il existe une formule F[vo,v, ... ,vn-t] E p telle que -,F[do,d 1, ••• ,dn-t] ET', et on en déduit, par (*), que rot 1= -,F[a 0,a, ... ,an-t] : aucune suite de M ne réalise p. Petite digression : le lecteur qui répugnerait à se replonger dans la démonstration du théorème de complétude peut remplacer le raisonnement ci-dessus (comment construire un modèle omettant p à partir de T') par l'argument suivant : T' est une théorie consistante, donc admet un modèle rot' ; si on appelle N l'ensemble des interprétations dans rot' des symboles de C, alors on voit au moyen de la condition 3° ), du test de Tarski-Vaught (théorème 1 .4) et de la remarque qui 1' accompagne, que N est 1' ensemble de base d'une sous-structure élémentaire m de rot' ; le réduit de mau langage Lest donc un modèle de T, et on vérifie, au moyen de la condition 4°), qu'il omet p. Reste à construire T'. Pour ce faire, on aura besoin : • d'une énumération (Ki; i E IN) de toutes les formules closes de L'; • d'une énumération (Gï[v 0); i E IN) de toutes les formules de L' à une seule variable libre vo ; • d'une énumération ( 7i ; i
E IN)
de toutes les suites de C de longueur n.
On définit par récurrence sur l'entier k une suite de théories (T k entre autres, satisfera les propriétés suivantes :
;
k E IN) qui,
- pour tout k E IN, T k est l'union de T et d'un ensemble fini de formules closes de L'; - pour tout k E IN, T k est une théorie consistante ; - pour tous k, rn E IN, si k
~
rn, alors T k Ç Tm·
La théorie T' sera l'union des théories T k, pour k E IN, et on voit déjà (par compacité) que ce sera une théorie consistante contenant T. On commence la récurrence avec T 0 = T . Soit k un entier positif ou nul. On suppose que Tm a déjà été défini pour tout rn ~ k. La définition de T k+t se scinde en trois cas, suivant que k est congru à 0, 1 ou 2 modulo 3.
232
Chapitre 8. Un peu de théorie des modèles
• Cas où k = 3 i, pour un entier i : si T k U {Ki} est une théorie consistante, alors on pose T k+ 1 = T kU {Ki} ; sinon, comme T k est consistante par hypothèse d'induction, c'est que T k u {-,Ki} est consistante, et on pose T k+ 1 = T k U {-,Ki}. • Cas où k = 3i + 1, pour un entier i : on choisit un entier j tel que Cj n'apparaisse ni dans T k, ni dans Gi (c'est possible puisque T k est l'union de T, où aucune constante de C n'a d'occurrence, et d'un ensemble fini de formules). On pose : T k+1 = T k U { 3voG i(vo] ===> Gi(Cj]}. La théorie T k+ 1 est consistante par le lemme 2. 4 du chapitre 4. Pour l'instant, on n'a fait que copier la démonstration du théorème de complétude, en laissant libre une étape sur 3. On est déjà assuré que la théorie T' sera complète et admettra des témoins de Henkin. • Cas où k = 3i + 2, pour un entier i : soient d0 , dh ... ,dn-1 des symboles de C tels que 7i = (do,dh···,dn-1). On sait, par hypothèse de récurrence, qu'il existe une formule close H de L'telle queT k est équivalente à TU { H }. On peut écrire H sous la forme H = D(do,dh···,dn-1,eo,eh···,em-1] où D(vo,v1,... ,Vn-1,vn,vn+h···,vn+m-1] est une formule de L, et où, pour tout i compris entre 0 et n - 1 et pour tout j compris entre 0 et rn - 1, ej E Cet di :t: ej. Posons :
E(vo,vh···,Vn-1] = 3vn3Vn+1···3vn+m-1D(vo,v1,···,Vn-hVn,Vn+h···,Vn+m-1]· La formule 3vo3v1... 3vn-1E(vo,vh···,vn-1] est conséquence de T k· Comme c'est une formule close de L et comme T est complète, on a : T 1-- 3vo3v1... 3vn-1E(vo,vh···,Vn-1]· Parce que p n'est pas un type isolé, il contient une formule F(vo,v1, ... ,vn-1] telle que : TU { •(VvoVv1···Vvn-1(E(vo,vh···,Vn-1] ===> F(vo,vh···,Vn-1]))} soit consistante. Cela revient à dire que : TU { 3vo3v1... 3Vn-1(3vn3Vn+1···3vn+m-1D(vo,v1, ... ,Vn-hVn,Vn+1, ... ,vn+m-1] A. -,F(vo,v1, ... ,Vn-1]} est consistante, ou encore que la théorie : TU { 3vo3v1... 3vn+m-1(D(vo,vh···,Vn-1,vn,Vn+1, ... ,vn+m-1] A. •F(vo,v1, ... ,Vn-1])} est consistante. Puisque les constantes de C n'apparaissent pas dans cette théorie, on en déduit sans difficulté que T U { D(do,d1, ... ,dn-1,eo,eh···,em-1] A. -,F(do,d1, ... ,dn-1]} est une théorie consistante. Il suffit donc de poser : T k+1 = T kU { •F(do,dll···,dn-1] }.
6.4 REMARQUE : On peut modifier la démonstration précédente et obtenir le résultat plus fort suivant : soit { pj ; jE IN } un ensemble dénombrable de types non isolés (pour fixer les idées, disons que pj est un nj-type). Alors il existe un modèle dénombrable de T ne réalisant aucun des types pj, pour jE IN.
6. Les théories aleph-zéro-catégoriques
233
Il sufffit, dans la démonstration précédente, de mieux tirer parti des étapes de la forme 3i
+ 2 : on énumère l'ensemble des couples ( 7,j), où
7 est une suite finie de C, j est
un entier et la longueur de 7 est égale à nj. En utilisant la même technique de sabotage que ci-dessus (celle qui nous a permis, à l'étape 3i
+ 2,
d'empêcher que la suite 7i ne
réalise le type p, en exigeant que cet te suite satisfasse le négation d'une formule de p), on s'assure à l'étape 3i
+ 2 que, si
(7,j) est le couple numéro i, alors 7ne réalise pas Pj·
Structures aleph-zéro- catégoriques
6.5
COROLLAIRE 1 : Supposons que T soit une théorie
~-catégorique.
Alors
tout type consistant est isolé.
r;;l
Supposons qu'il existe un type p non isolé et consistant. D'après la définition
6.2, il existe un modèle dénombrable réalisant p. Le théorème 6.4 affirme, lui, qu'il existe un modèle dénombrable omettant p. Ces deux modèles ne peuvent pas être isomorphes (remarque 2 de 6. 2), et T n'est pas ~-catégorique. ~
DEFINITION : On dit qu'un n-type p est complet, si, premièrement il est consistant, et deuxièmement, pour toute formule F[v 0 ,v 1, ... ,vn-t] de L, F[vo,v., ... ,Yn-t] E p ou .,F[vo,Vt,···,Vn-t] n-types complets.
E
p. On notera Sn l'ensemble des
On notera que, si p et q sont deux n-types complets et si p Ç q, alors p = q : en effet, si F[vo,v., ... ,vn-t] ~ p, alors .,F[vo,Vt, ... ,Vn-t] E p, donc .,F[vo,v11 ... ,vn-t] E q, et, puisque q est consistant, F[vo,v 1, ... ,vn-t] ~ q.
a est une suite de longueur n d'un modèle mt, t(a/mt) est un mt, que l'on peut même supposer dénombrable, et une suite a de mt réalisant p, et on voit sans peine que t(a/mt) =p. Par exemple, si
type complet. Réciproquement, si p est un n-type complet, alors il existe un modèle
REMARQUE : Si une formule F[v 0 ,v 1, ... ,vn-t] isole un n-type complet p, alors elle appartient à ce type: puisque T 1- 3v0 3v 1... 3vn-1F[vo,v 1, ... ,vn-t], il est faux que:
234
Chapitre 8. Un peu de théorie des modèles
T ~ VvoVv1 ... Vvn-1(F[vo,v1,···,Vn-1):::::) -,F[vo,v1,···,Vn-1]) ;
donc -,F[vo,vh···,vn-1] n'appartient pas à p. Comme p est complet, F[v0 ,v1,... ,vn-1) appartient à p.
COROLLAIRE 2 : Supposons que T soit une théorie No-catégorique. Alors, pour tout entier n, l'ensemble Sn est fini.
(';;) Si p est un n-type complet, il est isolé (corollaire 1) ; choisissons une formule Fp[vo,vh···,Vn-1] qui l'isole. On vient de voir que Fp[vo,vh···,Yn-1] appartient à p. Si p et q sont deux n-types complets distincts, alors -,F P E q : supposons le contraire en vue d'obtenir une contradiction; parce que q est complet, on a: Fp E q. Si
F[vo,v1, ... ,vn-1) E p, alors, par choix de Fp, -,F[vo,v1,... ,vn-1) A Fp(vo,vh···,Vn-1) n'est pas consistant, et donc -,F[v 0 ,v1,... ,vn-1) t. q. Comme q est complet, on en déduit que F[vo,vh···,Yn-1] E q : on a montré que p Ç q, et on a déjà remarqué que cela impliquait que p =q.
Raisonnons encore par l'absurde et supposons que, pour un entier n, l'ensemble Sn soit infini. Ajoutons au langage un ensemble {Ci ; 0 ~ i ~ n - 1} de nouveaux symboles de constante deux à deux distincts, et considérons la théorie : T'= TU { -,Fp(co,ch···,cn-1] ; p E Sn}. Cette théorie est consistante. Pour le prouver, il suffit, en vertu du théorème de compacité, de montrer que, pour tout sous-ensemble fini X de Sn, la théorie : T x= T U { -,Fp(co,c1,···,cn-1) ; p EX} est consistante. Choisissons un n-type complet q n'appartenant pas à X (c'est possible car X est fini et il y a une infinité de n-types complets), un modèle rot et une suite (a 0 ,a 1,... ,an-1) de points de M telle que t((a 0 ,a 1,... ,an-1)/rot) = q. On a vu que, pour tout p E X, -,F P E q, et donc :
rotl= -,Fp[ao,ah···,an-1]· Pour avoir un modèle de T x, il suffit d'interpréter Ci par
ah
pour i compris entre 0 et
n - 1.
Il existe donc un modèle rot de T' contenant des points bo, b1, ... , bn-1 tels que, pour tout p E Sn, rot 1= -,Fp[bo,b 1,... ,bn-1). Alors t((bo,b1,···,bn-1)/rot) ne peut pas appartenir à Sn, ce qui constitue une contradiction. ~
6.6
On va montrer une réciproque au corollaire 1 de 6.5.
6. Les théories aleph-zéro-catégoriques
235
THEOREME : Supposons que, pour tout entier n, tout n-type complet soit isolé ; alors T est N.0 -catégorique.
(:.:;')
On montre d'abord deux lemmes :
LEMME 1 : On suppose que, pour tout entier n, tout n-type complet est
isolé. Soient mt et m deux modèles de T, (ao,ah···,an-1) et (bo,b1, ... ,bn-1) des suites de M et N respectivement telles que t((ao,a 1,... ,an-1)/mt) = t((b 0,b 1,... ,bn-1)/m). Alors, pour tout a E M, il existe b E N tel que
t((ao,a1, ... ,an-11a )/mt)= t((bo,b1, ... ,bn-1,b )/m).
(:.:;') Posons p = t((ao,a 1,... ,an-1)/mt) et q = t((ao,a1, ... ,an-11a )/mt) ; soient F1[vo,v 11 ... ,Vn-1) et F2[vo,v 1,... ,Vn-hvn) des formules isolant respectivement p et q. On voit alors que 3vnF2[vo,v 11 ... ,vn-11 vn) E p, et, puisque t((bo,b1, ... ,bn-1)/m) = p, m 1= 3vnF2[bo,bh···,bn-1,vn)· Soit donc bun point de N tel que m 1= F2[bo,b11···,bn-1,b). Alors t((bo,bh···,bn-1,b )jm) = q.
e
LEMME 2: On reprend les hypothèses du lemme 1. Soient mt et
mdeux
modèles dénombrables de T, (ao,a 11 ... ,an-1) et (bo,b 1,... ,bn-1) des suites de M et N respectivement telles que t((ao,a1, ... ,an-1)/mt) = t((bo,bh···,bn-1)/m). Alors il existe un isomorphisme f de mt sur tel que, pour tout i compris entre 0 et n - 1, f(a i) =bi.
m
(:.:;') On va construire f par la méthode du va et vient (celle qui nous a servi 2.7): soient (ci; i E IN) une énumération de M et (di; i E IN) une énumération de L'application fest déjà déterminée sur l'ensemble { a0 ,a 1,... ,an-1}. On va la compléter définissant par récurrence sur l'entier k, un point an+k de M et un point bn+k de N, telle sorte, que pour tout entier k,
(*)
en N.
en de
t((ao,ah···,an+k)/mt) = t((bo,bh···,bn+k)/m). Pour définir an+k et bn-+k en supposant que les points ai et bi pour i < n + k aient déjà été définis conformément à (*), on distinguera deux cas : • Si k = 2i est pair, alors on pose an+k =Ci; par hypothèse de récurrence, on a: t((ao,ah···,a n+k-1)/mt) = t((bo,bh···,bn+k-1)/m),
236
Chapitre 8. Un peu de théorie des modèles
et le lemme 1 nous permet de trouver un point bn+k tel que : t((ao,a1, ... ,an+k)/rot) = t((bo,b1, ... ,bn+k)/91). • Si k = 2i + 1 est impair, alors on pose bn+k= dï, et on utilise encore le lemme 1 pour trouver un point an+k tel que t((ao,a 11 ••• ,an+k)/rot) = t((bo,b 11 ••• ,bn+k)/91)). On remarque que, quelques soient les entiers rn et p, ·am= a P si et seulement si bm = bp: en effet, en supposant par exemple que p ~ rn, am= ap si et seulement si vm ~ vp E t((ao,a 1,... ,ap)frot), si et seulement si Vm ~ vp E t((bo,b 11 ••• ,bp)/91), si et seulement si bm = bp. On peut donc définir une bijection de l'ensemble {am; rn E IN} sur l'ensemble { bm ; rn E IN} en posant : pour tout entier rn, f(am) = bm. Or le choix de an+k pour k pair nous assure que {am; rn E IN}= M, et le choix de bn+k pour k impair que { bm; rn E IN}= N :fest donc une bijection de M sur N. Cette bijection est un isomorphisme de rot sur 91 : cela découle immédiatement du fait que, pour toute formule F[vo,v 11 ••• ,vm-1], les conditions suivantes sont équivalentes: 1) rot 1= F[ao,ah···,am-1] ; 2) F[vo,v 11 ••• ,vm-1] E t((ao,a 1,... am-1)/rot); 3) F[vo,v1, ... ,vm-1] E t((bo,b1, ... ,bm-1)/91) ; 4) 911= F[bo,bh···,bm-1]· © Soient rot et 91 deux modèles dénombrables de T ; le type complet que la suite vide réalise dans rot est la théorie de rot, et il est égal au type complet que réalise la suite vide dans 91 (parce que, T étant complète, on a Th(rot) = Th(91)). On peut appliquer le lemme 2, et on voit que rot et 91 sont isomorphes. ©
Le lemme 2 a une autre conséquence très intéressante. En considérant le cas où les modèles rot et 91 sont égaux, on obtient :
PROPOSITION : Soit rot un modèle dénombrable d'une théorie l>t0 -catégorique, et supposons que (ao,a 1,... ,an-1) et (bo,bh···,bn-1) soient des suites de M telles que t((ao,a 1,... ,an-1)/rot) = t((bo,b1, ... ,bn-1)/rot). Alors il existe un automorphisme f de rot tel que, pour tout i compris entre 0 et n- 1, f(ai) =bi.
6.7 Soit n un entier. On peut définir, sur l'ensemble des formules le L dont les seules variables libres sont v0 , v11 ••• ,vn-1 une relation = qui manifestement est une relation d'équivalence par : pour toutes formules F[vo,v1,... ,Vn-1] et G[vo,v1, ... ,vn-1], F[vo,v 1,... ,vn-1] =G[vo,v1,... ,Vn-1] si et seulement si T 1- VvoVv 1... Vvn-1(F[vo,vh···,Vn-1] {:::::::} G[vo,v1, ... ,Vn-1D·
6. Les théories aleph-zéro-catégoriques
237
Autrement dit, F(vo,v 11 ••. ,vn-1] =G(vo,v 11 ••. ,vn-1] si et seulement si pour tout modèle rot de T et pour toute suite (ao,a1, ... ,an-1) de M, rott= F[ao,ah···,an-1] ~ G(ao,ah···,an-1]· L'ensemble des classes relativement à cette relation est notée Lindn (pour : «algèbre de Lindenbaum» : c'est naturellement une algèbre de Boole). Si F = F(vo,v 1,... ,Vn-1] est une formule de L, notons : Sn(F) = { p E Sn ; F E p }. Il est d'abord clair que, si deux formules F = F(vo,v 11 ••• ,vn-1] et G = G(vo,v 1,... ,Vn-1] sont équivalentes modulo ::, alors Sn(F) = Sn(G). Réciproquement, si F et G ne sont pas équivalentes modulo ::, alors il existe un modèle rot de T et une suite (a 0 ,a 11 ••• ,an-1) de points de M vérifiant l'une des formules, disons F, et pas l'autre. Alors t{(a 0 ,a 1,... ,an-1)/rot) est dans Sn(F) et pas dans Sn{G): il n'y a donc pas plus d'éléments dans Lindn que de sous-ensembles de Sn, et, si Sn est un ensemble fini, il en est de même de Lindn. Le théorème suivant résume et complète les résultats que nous avons obtenus sur les théories No-catégoriques :
THEOREME : Les cinq propriétés suivantes sont équivalentes: i) T est No-catégorique ; ii) pour tout entier n, tout n-type consistant est isolé; iii) pour tout entier n, tout n-type complet est isolé; iv) pour tout entier n, l'ensemble Sn est fini; v) pour tout entier n, l'ensemble Lindn est fini.
~ L'implication i):::::} ii) est le corollaire 1 de 6.5; ii):::::} iii) est évident; iii):::::} i) est le théorème 6.6. Par ailleurs, l'implication i):::::} iv) est le corollaire 2 de 6.5, et on vient de montrer l'implication iv):::::} v). On terminera en montrant que -,iii):::::} •v). On sait par hypothèse qu'il existe un entier n et un n-type p complet et non isolé. On construit par récurrence sur k une suite {Fk(vo,v 11 •.• ,vn-1] ; k E IN) de formules appartenant à p, de telle sorte que, pour tout k : T 1- VvoVv1 ... Vvn-1(Fk+1(vo,vh···,Vn-1]:::::} Fk(vo,vh···,vn-1]) et T 1- -NvoVv1 ... Vvn-1{Fk(vo,vh···,Vn-1]:::::} Fk+1(vo,v1,. .. ,Vn-1D· On part de n'importe quelle formule Fo(vo,v 11 ... ,Vn-1] de p. Supposons que l'on ait déjà défini Fk(vo,v 11 ••. ,vn-1]. Parce que p n'est pas isolé, on sait qu'il existe une formule G(vo,v1, ... ,vn-1] E p telle que :
T 1- -NvoVv1 ...Vvn-1(Fk(vo,v1, ... ,Vn-1]:::::} G(vo,vh···,Vn-1]).
238
Chapitre 8. Un peu de théorie des modèles
On pose Fk+1[vo,v1, ... ,Vn-1] = Fk[vo,v1, ... ,vn-1] 1\ G[vo,vh ... ,Vn-1]· Il est alors clair que les formules Fk[v 0 ,v 1,... ,vn-1) pour k E IN sont deux à deux non équivalentes modulo
=·
~
On dira qu'une structure est N0-catégorique si sa théorie complète l'est. Soit rot une structure dénombrable N0 -catégorique. Considérons, pour chaque entier n, la
6.8
relation binaire Rn sur Mn définie par : pour toutes suites (ao,a 1,... ,an-1) et {b 0 ,b 1,... ,bn-1), Rn((ao,a 1,... ,an-1),{bo,b 1,... ,bn-1)) si et seulement si il existe un automorphisme f de rot tel que, pour tout i compris 0 et n - 1, f{a i) =bi· Il est facile de voir que cette relation est une relation d'équivalence. On peut remarquer que l'ensemble des automorphismes de rot est un sous-groupe du groupe des permutations de M, et on voit que les classes modulo Rn ne sont rien d'autres que les orbites pour l'action de ce groupe sur Mn. On a vu (proposition 6. 6) que, si deux suites de M de même longueur réalisent le même type complet, alors elles sont équivalentes modulo Rn. Il découle du théorème 6.7 que, si rot est N0-catégorique, les relations Rn n'ont qu'un nombre fini de classes.
La réciproque est vraie, ce qui permet de donner une caractérisation purement algébrique (aucune référence à la notion de formule) des structures N0 -catégoriques :
THEOREME : Soit rot une structure dénombrable. Alors les conditions
suivantes sont équivalentes : i) rot est N0 -catégorique ; ii) pour tout entier n, la relation Rn définie ci-dessus n'a qu'un nombre fini de classes.
~
On suppose que, pour tout entier n, la relation Rn n'a qu'un nombre fini de
classes, et il s'agit de montrer queT= Th{rot) est No-catégorique. Fixons l'entier n. Si deux suites (a 0 ,a 1,... ,an-1) et {bo,b 1, ... ,bn-1) sont équivalentes modulo Rn, elles réalisent le même type complet. Il n'y a donc qu'un nombre fini de n-types complets réalisés dans rot. Soit { p1,p 2 , ... ,pk} l'ensemble de ces n-types et montrons que cet ensemble est égal à Sn(T) : supposons le contraire et soit q E Sn(T) différent de tous les Pi· Alors q contient une formule F[vo,vh ... ,Vn-1] telle que, pour tout i, •F[vo,v 1,... ,vn-1) E Pi· On a 3vo3v 1... 3vn-1F[vo,vh ... ,Vn-1] ET et il doit donc exister des points a0 ,ah ... ,an-1 tels que rot 1= F[a 0 ,a 1,... ,an-1], ce qui n'est pas possible, puisque la suite (a 0,a 1,... ,an-1) doit réaliser l'un des types Ph pour i compris entre 1 et k. Cela montre que, pour tout entier n, Sn(T) est fini, et donc T est No-catégorique par le théorème 6.7. ~
239
Exercices
EXERCICES
On considère un langage du premier ordre L comportant deux symboles de prédicat unaire E et P et un symbole de prédicat binaire A. On appelle T la théorie de L constituée des formules suivantes : 1.
Ho: H1 : H2 : H3 : H4 : Hs:
Vvo(Evo <====:} • Pvo) VvoVv1(Avov1 ===} (Evo 1\ Pv 1)) Vv 1Vv2 ((Pv 1 1\ Pv2 1\ Vvo (Avovl <====:} Avov2)) ===} v1 ~ v2) 3vo (Pvo 1\ Vv 1•Av1vo) Vv 1(Pv 1 ===} 3v2(Pv2 1\ Vvo (Evo ===} (Avov1 <====:} •Avov2)))) Vv 1Vv23vJ((Pv 1 1\ Pv2) ===} Vvo(AvoVJ <====:} (Avov1 V Avov2)))
et, pour chaque entier n
~
1, de la formule Fn
Vv1 Vv2 ... Vvn (( 1<0n Evi)
===}
:
3wl Vwo (Awow1
<====:} (
1<){n wo
~vi))).
a) Soient X un ensemble non vide et .9'(X) l'ensemble de ses parties, que l'on suppose disjoint de X. On définit une L-structure IDlx de la manière suivante : • l'ensemble de base est Mx= X U .9'(X) ; • l'interprétation de E est X ; • l'interprétation de P est .9'(X) ; • l'interprétation de A est l'ensemble A= { (x,y) E Mx2 ; xE X, y E .9'(X) et xE y}. Montrer que Mx est un modèle de T. b) Existe-t-il un modèle dénombrable de T ? c) Quels sont les entiers n pour lesquels T admet un modèle dont l'ensemble de base admet n éléments ? d) Démontrer queT est équivalente à {Ho, H1, H2, H3 , H4 , H5 , F1 }. e) Montrer queT n'est pas N0 -catégorique. 2.
On reprend l'exercice 15 du chapitre 3. a) Soit rot=< M, ëf, g >un modèle quelconque de T. On définit sur M une relation binaire~ par :
a
~
b si et seulement si il existe des entiers naturels rn, n, p et q tels que :
ëfm(g"(a)) =ëfP(gq(b)). pour
~
Montrer que~ est une relation d'équivalence sur M. Chaque classe d'équivalence sera appelée une grille. Montrer que chaque grille est stable pour ëf et
g.
240
Chapitre 8. Un peu de théorie des modèles
Montrer que chaque grille, munie des restrictions des applications ëf et g, est une sous-structure de rot qui est un modèle de T. b) Soit L1 le langage obtenu en ajoutant à L deux nouveaux symboles : des symboles de constante .X et p. Pour chaque quadruplet (m,n,p,q) d'entiers naturels, on appelle Gmn pq la formule close de L1 : -,d"'g",X ~ dPgqp. En utilisant cette famille de formules, démontrer l'existence d'un modèle non standard de T (c'est-à-dire d'un modèle de T non isomorphe au modèle standard). c) Soit A un ensemble non vide. Construire un modèle de T dont l'ensemble de grilles est équipotent à A. d) Montrer que deux modèles de T ayant des ensembles de grilles équipotents sont isomorphes. e) Montrer que T n'est pas ~0-catégorique. On considère un ensemble .% de L-structures ayant les propriétés suivantes : • les éléments de .% sont des modèles dénombrables de T ; • si rot E .%, 'Jt E .% et rot 1 'Jt, alors rot et 'Jt ne sont pas isomorphes ; • tout modèle dénombrable de T est isomorphe à un des éléments de .%. Quel est le cardinal de .% ? f) Soit
K.
un cardinal infini non dénombrable. Montrer que T est K.-catégorique.
3. Soit < G,., e > un groupe. On lui associe un langage du premier ordre Le comportant, pour chaque élément a E G, un symbole de fonction unaire fa. On désigne par T la théorie suivante de Le :
{Vvofevo ~ vo} U {Vvofaff}vo ~ fnf}vo; a E G, {JE G} U {Vvo-,favo ~ vo; a E G, a 1 e }. a) Montrer que, pour tout terme t de Le, il existe un élément a symbole de variable x, tels que : T 1- Vxt ~ fœc.
E
G, et un
b) Après avoir remarqué que chaque formule atomique de Le comporte au plus deux variables, montrer que, pour toute formule atomique F = F[v0 ,v1] de Le, on a une des trois possibilités suivantes : • T 1- Vvo Vv1 F ; • T I-VvoVv1-,F ; • il existe un élément a
E
G tel que : T 1- Vvo Vv1 (F
(:::==}
vo ~ favl)·
c) Montrer que la Le-structure <6, dont l'ensemble de base est G et où, pour chaque a E G, le symbole fa est interprété par l'application p..-.. a.{J de G dans G (multiplication à gauche par a), est un modèle de T.
241
Exercices d) Soit rot=< M, (rt~a)OE.G considère l'ensemble:
>
un modèle de T et soit a un élément de M. On
O(a) = {xE M ; il existe a E G tel que x= 'Pa( a)}. Montrer que O(a) est une sous-structure de rot qui est isomorphe à~. Montrer que: X,.={O(a);aEM} est une partition de M. Montrer que si rot et msont deux modèles de T et si sont équipotents, alors rot et sont isomorphes.
x,. et XN
m
e) Montrer que, si G est infini, la théorie Test complète. f) On suppose que G est fini. Existe-t-il un cardinal infini À tel que T soit À-catégorique ? La théorie T est-elle complète ? 4.
On considère le langage L constitué d'un symbole de relation binaire R. On
appelle Loo le langage obtenu en ajoutant à L une infinité dénombrable de nouveaux symboles de constante : co, ch c2, ... , Cn, ... Pour chaque entier n, on appelle Ln le langage L U { c9,c1,c2, ... ,cn }. Etant donnés une L00-Structure rot et un entier n, on notera rotn la Ln-structure qui est le réduit de rot au langage Ln. On considère une théorie T du langage L qui exprime que l'interprétation de R est une relation d'équivalence admettant une infinité de classes d'équivalences qui sont toutes infinies. a) Ecrire des axiomes pour la théorie Tet donner un exemple de modèle de T. b) Montrer queT n'est équivalente à aucune théorie finie deL. c) Pour quels cardinaux infinis À la théorie T est-elle À-catégorique? Trouver deux modèles rot1 et rot2 de T tels qu'il n'existe ni injection élémentaire de rot1 dans rot2, ni injection élémentaire de rot2 dans rot1. d) La théorie T est-elle complète ? e) Soit T + la théorie suivante du langage Loo : T + = T U { •RCnCm; n E IN, rn E IN et n :/= rn}. Donner un exemple de modèle de T +· Montrer queT+ n'est équivalente à aucune théorie finie du langage L00• f) Pour quels cardinaux infinis À la théorie T + est-elle À-catégorique ? g) Soient rot1 et rot2 deux modèles dénombrables de T +· Montrer que, pour tout n E IN, les réduits de rot1 et rot2 au langage Ln, que l'on désignera respectivement par
rot1 tL n et rot2 tL n, sont isomorphes. En conclure que T + est une théorie complète de L00•
5. On considère un langage du premier ordre L dénombrable et on désigne par Y 1 l'ensemble des formules à une variable libre (au plus) de L.
242
Chapitre 8. Un peu de théorie des modèles
Etant données une formule F[x] E .5'1 et une L-structure rot=< M, ... >, on appelle valeur de F dans rot, et on note Vai(F,rot), le sous-ensemble de M que définit la formule F, c'est-à-dire 1'ensemble : Vai(F,rot) = {a E M ; rot 1= F[a]}. Pour chaque cardinal infini .X, on appelle .X-structure toute L-structure infinie rot vérifiant la propriété suivante : La valeur de chaque formule F E .5'1 dans rot est : soit un ensemble fini, sOit un ensemble de cardinal .X. On appellera .X-modèle d'une formule ou d'une théorie tout modèle de cette formule ou de cette théorie qui est une .X-structure. a) Montrer que, si .X est un cardinal infini, toute .X-structure est de cardinal .X. b) Montrer que toute structure de cardinal N0 est une N0-structure. c) Soient T une théorie de L et F[x) une formule de .5'1• On suppose que, pour tout entier n, T admet un modèle dans lequel la valeur de la formule Fest un ensemble à au moins n éléments. Montrer que, pour tout cardinal infini .X, T admet au moins un modèle dans lequel la valeur de F est un ensemble de cardinal égal à .X. (Indication : ajouter au langage un ensemble de symboles de constante de cardinal .X). d) Soit T une théorie de L qui admet au moins un modèle infini. Montrer que, pour tout cardinal infini .X, T admet au moins un .X-modèle. (Indication: choisir un modèle infini valeur dans
roto
de T, et, à chaque formule G E 5J"1 dont la
roto est un ensemble infini, associer un ensemble de symboles de constante Cc
de cardinal .X). e) Soit S une théorie non contradictoire de L qui n'admet que des modèles infinis. On suppose qu'il existe au moins un cardinal infini .X tel que tous les .X-modèles de S soient isomorphes. Montrer que S est complète. 6. On considère les langages L1 = { f} et L2 = { f, P} où fest un symbole de fonction unaire et P un symbole de relation unaire. On appelle T 1 la théorie de L1 suivante : {Vx Vy (fx ~ fy :=:::} x ~ y) , Vx 3y fy ~ x } U {Vx -. f" x ~ x ; n E IN* }. (Le terme f"x étant défini comme d'habitude :fOx= x et, pour tout n E IN, f"+ 1x = ff"x). On appelle T 2 la théorie de L2 suivante : T 1 U { 3x Px , 3x -.Px , Vx (Px
(:=::}
Pfx) }.
a) Montrer que T 1 est une théorie complète de L1. b) Montrer que T 2 n'est catégorique en aucun cardinal infini. c) En utilisant les résultats de l'exercice précédent, montrer que T 2 est une théorie complète de L2 .
243
Exercices
7. a) Soit L0 le langage comportant un unique symbole de prédicat binaire R. On appelle T 0 la théorie contenant, d'une part les axiomes exprimant que R s'interprète comme un ordre total, d'autre part les deux formules suivantes :
Vv1 3v2 (Rv1v2 A -.v1 Vv13v2 (Rv2v1 A -,yl
~ ~
v2 AVv3 ((Rv1v3 A-,vl ~ v3) :::::::} Rv2v3)) ; v2 AVv3 ((Rv3v1 A-,yl ~ v3):::::::} Rv3v2)).
Montrer qu'on peut trouver deux modèles roto et rot1 de T 0 tels que sous-structure de rot1 sans en être une sous-structure élémentaire.
roto soit une
b) Montrer queT 0 n'est équivalente à aucune théorie V3 de L0 (voir 5 .5). 8.
Soient L un langage dénombrable et T une théorie non contradictoire de L qui
n'admet que des modèles infinis. On dit que T est modèle-complète si et seulement si, quels que soient les modèles rot et 'Jt de T, si 'Jt est une extension de rot, c'en est une extension élémentaire. On dit qu'un modèle rot de Test un modèle premier de T si et seulement si tout modèle de Test isomorphe à une extension (simple) de rot. a) Montrer que toute théorie modèle-complète qui admet un modèle premier est complète. b) Montrer que les quatre conditions suivantes sont équivalentes : 1o ) T est modèle-complète ; 2°) pour tout modèle rot de T, toute formule de D(rot) est conséquence de L\(rot) U T (voir 2. 3 pour les notations) ; 3°) pour tout modèle dénombrable rot de T, toute formule de D(rot) est conséquence de L\(rot) U T ; 4 °) pour tous modèles dénombrables rot et rot' de T, si rot Ç rot', alors
c) Montrer que, si Test modèle-complète, Test équivalente à une théorie V3. La réciproque est-elle vraie ?. d) Soit F[v 0 ,v1,... ,vn) une formule de L. On considère la condition suivante portant sur Tet F[vo,vl, ... ,vn) : pour tous modèles rot et rot' de T tels que rot Ç rot', pour tous éléments a0 ,
(*)
a1, ... ,an de M, si rotl= F[ao,a 11 ••• ,an) alors rot' 1= F[ao,ah···,an) Montrer que F[v 0,v 1,... ,vn) satisfait (*) si et seulement si il existe une formule
existentielle G[v 0 ,v1,... ,vn) deL telle que : T 1= VvoVv1... Vvn(F[vo,v1, ... ,vn) ~ G[vo,vh···,vnD·
(Indication : ajouter des symboles de constante Co, c11 théorème 5. 2.)
... ,cn
et s'inspirer de la preuve du
244
Chapitre 8. Un peu de théorie des modèles
e) Montrer que T est modèle-complète si et seulement si, pour toute formule universelle F[vo,vh ... ,vn] de L, il existe une formule existentielle G[v0,vh ... ,vn] de L telle que:
9. Le but de cet exercice est la démonstration du théorème de Lindstrôm: soit T une théorie V3 dans un langage dénombrable; si T n'admet pas de modèle fini et est catégorique en un cardinal infini, alors T est modèle-complète. On reprend les notations et les résultats de 1'exercice 8. a) Soient .À un cardinal infini et F[v 0 ,v1,... ,vn] une formule de L. Montrer que les deux conditions suivantes sont équivalentes :
1") pour tous modèles rot et rot' de T de cardinalité
.À
tels que rot Ç rot', pour
tous éléments ao, ah ... ,an de M, si rott= F[a 0 ,ah ... ,an] alors rot' t= F[a 0 ,ah ... ,an]· 2") il existe une formule existentielle G[v0,vh ... ,vn] de L telle que :
TF VvoVvl ... Vvn(F[vo,vh ... ,vn] ~ G[vo,vl, ... ,vn]). b) On suppose que T est une théorie V3. Soient F[vo,v 1,... ,vn] une formule universelle et .À un cardinal infini. Montrer que T admet un modèle rot de cardinalité .À possédant la propriété suivante :
(•)
pour tout modèle rot' de T tel que rot Ç rot', pour tous éléments ao, ah ... ,an de M, si rott= F[ao,a 1,... ,an] , alors rot' t= F[ao,a 11 ... ,an]· c) Démontrer le théorème de Lindstrom. d) Le langage étant constitué d'un symbole de fonction unaire f, on pose:
T o = {VvoVv 1(fvo ~ fv1
==}
vo ~ v1)} U { Vvo..,fn vo ~ vo ; n E IN} .
Montrer que T 0 est une théorie V3 qui n'est ni complète ni modèle-complète. En enrichissant le langage et en ajoutant des axiomes à T 0 , construire une théorie V3, complète, qui ne soit pas modèle complète. 10. Le langage L est constitué d'un symbole de prédicat binaire R et d'un ensemble infini dénombrable de symboles de constantes : { co,c 11 ... ,cn, ... }. Soit A une formule close de L exprimant que R s'interprète comme un ordre
strict total dense sans extrémités. Pour chaque n E IN, Fn est la formule Rcncn+l· On considère la théorie :
T ={A}
U {Fn; n
EIN}.
On désigne par 21, ~et (les trois L-structures dont l'ensemble de base est
q, où
R s'interprète comme l'ordre strict usuel, et où la suite de symboles de constante (cn)n~ est interprétée respectivement par les suites de rationnels :
Exercices
245 a= (an)n~' {J= (fJn)n~ et 1= ('Yn)n~,
ainsi définies : pour tout n E IN,
an = n ; fJn
=- n
+1 1
n
1
'Yn = k E=0I :K! T
a) Montrer queT est complète dans L. b) Montrer que tout modèle dénombrable de T est isomorphe à l'une des trois ~ et
L-structures 2l,
c) Montrer que la théorie Test modèle-complète (voir l'exercice 8). d) Montrer que tout modèle dénombrable de T admet une extension élémentaire isomorphe à ~et une extension élémentaire isomorphe à ~. 11.
Soit L le langage du premier ordre constitué d'un symbole de fonction unaire f et
d'un symbole de prédicat binaire R. On appelle A la conjonction des formules suivantes :
VvoRvovo; Vvo Vv 1( (Rvov 1 ~ Rv1vo) ==* vo ~ v1) ; VvoVv 1Vv2((Rvov1 A Rv1v2) ==* Rvov2); Vvo3v 1(fv 1 ~ vo AVv2(fv2 ~ vo ==* v2 ~v,)); Vvo Vv 1(Rvov 1 {:::::::::} Rfvofv 1) ; Vvo (Rvofvo A -wo ~ fvo) ; Vvo Vv 1((•vo ~v, A Rvov 1) ==* Rfvov,). a) Montrer que, dans tout modèle de la formule A, l'interprétation du symbole R est une relation d'ordre total sur l'ensemble de base du modèle, sans plus petit ni plus grand élément, telle que tout élément admette un successeur, c'est-à-dire un plus petit majorant strict. b) Montrer que
"U..
muni de la relation d'ordre habituelle et de la fonction
successeur est un modèle de A. Soit X=< B,~ >un ensemble totalement ordonné quelconque. On considère la L-structure rotx suivante :
-l'ensemble de base de rotx est l'ensemble B x "U..; -l'interprétation deR dans rotx est l'ensemble
x< y ou (x=y et n ~ m)}; - l'interprétation de f dans rotx est l'application qui à (x,n) correspondre (x,n + 1). {((x,n),(y,m)) E (B
x
"U..) 2 ;
E (B x "U..) fait
Montrer que rotx est un modèle de A. c) Soit rot= < M , f, R > un modèle de A. On veut montrer qu'il existe un ensemble totalement ordonné X tel que rot soit isomorphe à rotx.
246
Chapitre 8. Un peu de théorie des modèles
On définit sur l'ensemble de base de mt deux relations binaires~ et R: par : pour tous a, b dans mt, a ~ b si et seulement si, pour tout n E IN, mt 1= Rf"a b ; a R: b si et seulement si il existe des entiers n et p tels que mt 1= f" a
et Montrer
~
fPb.
que~
est transitive et antiréflexive, que R: est une relation d'équivalence et que : a R: b si et seulement si a ~ b et b ~ a sont tous les deux faux. Montrer que chaque classe modulo R: est une sous-structure de mt isomorphe à 71..
Montrer que la relation ~ permet de définir sur l'ensemble M/R: des classes une relation d'ordre total. Montrer que, si X=< C,
> est l'ensemble ordonné ainsi obtenu, alors mt est isomorphe
d) Montrer que, si X et Y sont deux ensembles totalement ordonnés, alors mtx et roty sont isomorphes si et seulement si X et Y sont isomorphes.
Montrer que A n'a que des modèles infinis et n'est catégorique en aucun cardinal infini. e) On veut montrer que {A} est une théorie complète.
1•) Montrer que, si a et b sont deux points dans un modèle mt de A, et si a
~
b, alors il existe une extension élémentaire mt1 de mt et un point c dans mt1 tels que : a~ c et c ~b.
2") Montrer de même que, si a est un point de M, alors il existe une extension élémentaire mt1 de mt et des points b etc de M1 tels que : b ~a et a~ c.
3") Soient mt et m deux modèles de A, {a 1,a 2,... ,an) et {b 1,b 2,... ,bn) deux suites finies de même longueur d'éléments de mt et m respectivement. On considère la condition P({mt, a 1,a2, ... ,an), {m, b11 b2,... ,bn)) suivante: pour toute formule atomique F[v 11 v2, ... ,vn] de L, mt 1= F[al,a2, ... ,an] si et seulement sim 1= F[b11b2,. .. ,bn]. Montrer que cette condition est équivalente à : pour tous entiers i et j tels que 1 ~ i, j ~ n, et pour tout k E IN, (mtl= ai~fkaj si et seulement si ml= bi~fkbj) et (mtl= Raiaj si et seulement si ml= Rbibj).
4") On suppose que la condition P({mt, a 11 a2, ... ,an), {m, b1,b2, ... ,bn)) est satisfaite. Montrer que, si c est un élément de mt, alors : -s'il existe un indice i compris entre 1 et n tel que cR: ah alors il existe un point d de m tel que P((mt, al,a2,···,an,C), (m, bl,b2,•••,bn,d)); - sinon, il existe une extension élémentaire m 1 de met un point d de m 1 tels que P((mt, al,a2, ... ,an,c), (m', bhb2, ... ,bn,d)).
247
Exercices
5") Montrer l'assertion suivante par induction sur la hauteur de la formule G[v1,v2, ... ,vn) deL : si rot et 9t sont deux modèles de A, si (aha 2,... ,an) et (b 1,b 2,... ,bn) sont deux suites finies d'éléments de rot et 9t respectivement, alors : P((rot, aha2, ... ,an), (9t, bhb2, ... ,bn)) implique: rot 1= G[aha2, ... ,an] si et seulement si 9t 1= G[bhb2, ... ,bn)· 6") En conclure que {A} est une théorie complète. 12. Soient L le langage ne comportant qu'un symbole de prédicat binaire ~ et T la théorie des ordres denses sans premier ni dernier élément (voir 1.3). Montrer que, pour toute formule F[vo,v1, ... ,vn), il existe une formule sans quantificateur H[v0 ,v1, ... ,vn] telle que:
13. Soit L un langage. On dit qu'une classe ~ de L-structures est close par ultraproduit si, pour tout ensemble 1, pour tout ultrafitre U sur 1, pour toute suite (roti ;
i E 1) de structures appartenant à
~,"fT rotïfU lE 1
appartient à
~.
Soit Tune théorie dans L. Montrer que la classe des L-structures qui ne sont pas modèles de T est close par ultraproduit si et seulement si T est finiment axiomatisable. Soit K un corps (le langage est { O,l,+,x} ). Soient 1 un ensemble et :7 un filtre
14. sur 1.
a) Montrer que K1/ :7 est un anneau et que c'est un corps si et seulement si :7 est un ultrafiltre. b) Soit
tf le sous-ensemble de K1 défini par: tf= {(ki; i E 1) E K1 ; {i E 1; ki =0} E !?}.
Montrer que tf est un idéal de l'anneau K1 et que l'anneau quotient K1/ tf est égal à
K'/.:7. 15.
Le langage est celui des ensembles ordonnés : L = { ~ }. a) Soit a un ordinal infini. Montrer qu'il existe un ensemble ordonné,
élémentairement équivalent à
< a, ~ >, qui ne soit pas bien ordonné.
b) Montrer qu'il existe un ordinal dénombrable a tel que : ~ <~h~>. (~ 1
désigne le premier ordinal non dénombrable.) c) Montrer qu'il existe deux ordinaux dénombrables distincts ~ <,8,~
>.
a et ,8 tels que:
248
Chapitre 8. Un peu de théorie des modèles
16. On considère le langage L (non dénombrable) comprenant : pour chaque entier n, un symbole de constante n. ; pour chaque sous-ensemble A de IN, un symbole de prédicat unaire A ; pour chaque application f de IN dans IN, un symbole de fonction unaire f. Soit la L-structure dont l'ensemble de base est IN, et où chaque symbole~ de Lest interprété par X. Soit T la théorie de m.
m
a) Montrer que chaque modèle de T est isomorphe à une extension élémentaire de m. b) Soient rot une extension élémentaire propre de
m et
a un point de M
n'appartenant pas à IN. Montrer que l'ensemble: ~a=
{A ç IN ; rot 1= Aa}
est un ultrafitre non trivial sur IN. c) Soit a une bijection de IN 2 dans IN. Pour chaque nombre réel positif r, on choisit deux suites de nombres entiers (Pr(n) ; n E IN) et (qr(n) ; n E IN) telles que la suite (Pr(n)/qr(n) ; n E IN) soit convergente de limite r. On définit l'application fr de IN dans IN par: pour tout nE IN, fr{n) = a(pr(n),qr(n)). Montrer que, si rets sont deux réels positifs distincts, alors l'ensemble:
{nE IN; fr(n) =f5{n)} est fini. d) Montrer que tout modèle de T non isomorphe à supérieure ou égale à
.Jo. Montrer que T est ~-catégorique.
ma
une cardinalité
e) Soient L' le langage obtenu en ajoutant à L un nouveau symbole de prédicat unaire X et T' la théorie : T U { Xn.; n E IN}. Montrer que T' n'admet pas de modèle fini, est lt0 -catégorique et n'est pas complète.
Solutions des exercices du ton1e II
250
Solutions des exercices
CHAPITRE 5
1. L'ensemble des sous-ensembles récursifs primitifs de IN étant clos par union finie, il suffit de montrer que les ensembles réduits à un élément sont récursifs primitifs. Or la fonction caractéristique de { n } est égale à : ÀX.((x + 1).: n)((n + 1).: x). 2.
Posons g(n) = lll(f(n),f(n + 1)); on a alors:
g(O) = ll2(1,1), g(n + 1) = lll(.B~(g(n)),,B~(g(n)) + ,B~(g(n))), ce qui montre que g est récursive primitive, de même que f qui est égale à ,B~og. 3. a) Si a(o)=a(u')=n, alors uet u' ont même longueur p=,B~(n) et sont égales car ap(u) = ap(u') = ,B~(n). L'image de a est l'ensemble {x; ,B~(x) *0} qui est récursif primitif. b) On vérifie facilement que : 2 ,
ll2(xl,x2) < {x1 + x2 + 1) et, par récurrence sur p,
ap(xhx2, ... ,xp) <{xl+ x2 +· · ·+ xp + 1)
p-1 2
.
Il suffit donc de choisir g(x) =(x+ 1)r. c) Montrons d'abord que la fonction se reportant à la définition des fonctions
t/J= ..\px.IP(p,p,x)
.Bi (1.11), on
est récursive primitive. En
voit qu'elle peut se définir par
récurrence par :
t/J{O,x) = 0 ; t/J{1,x) =x ; t/J{p + 1,x) = ,8~( t/J{p,x)). Maintenant, la fonction cp elle-même se définit par récurrence par : IP{O,i,x) = 0 ; IP{1,i,x) =x si i = 1, 0 sinon ; IP(p + 1,i,x) = 0 si i = 0 ou si i > p + 1 ; IP(p + 1,i,x) = IP(p,i,x) si 0 < i < p ; IP(p + 1,i,x) = ,B~(IP(p,i,x)) si p > 0 et i = p; IP(p + 1,i,x) = t/J{p + 1,x) si p > 0 et i = p + 1. d) Le fait que 1 est une fonction injective se démontre sans peine à partir du théorème d'unicité de la décomposition d'un nombre en facteurs premiers ; quant à son image, c'est l'ensemble:
Chapitre 5
251
{ x ; pour tout p inférieur à x et pour tout q inférieur à p, si p et q sont premiers et si p divise x, alors q divise x }, qui est défini par quantifications bornées et opérations booléennes à partir d'ensembles récursifs primitifs ; il est donc récursif primitif. e) Soit u une suite finie, et supposons que a( u) =x ; on peut alors calculer la longueur de il qui est égale à p = ,B~(x), et on voit que :
'Y(u) = rr::~-1 ~i)lp(p,i+1,x) +1 j-p-1
on peut donc poser f{x) = fli:O
.
~i)4~
OÙ
;
1
1
p = fJ2(x) (avec f(x)=1 si ,82(x)=0).
Pour la fonction h, on commence par faire la même chose : on définit sans peine deux fonctions récursives primitives p(x) et D(i,x) qui sont telles que, si u = {xhx2,... ,xp) est une suite et 1( u) =x, alors p(x) est égale à la longueur p de x et, pour tout i compris entre 1 et p, Xi= O(i,x). On utilise alors la fonction g du b) et on définit h par: h{x)=~y~g(x){,B~(y)=p(x) et, pour tout i compris entre 1 et p(x), O(i,x)=IP(p(x),i,,B~(y))).
4.
Le nombre e est la somme de la série : 1 1 1 1 +r! +21+··· +nr+··· 1 + 2T 1 + · · · + nr 1 =nT an ( an étant un entier ) . Posons en = 1 + I! Un calcul simple montre que : 1 1 (n+1)! < e -en< n.n!'
*,
et on voit alors que e.n!- an est strictement compris entre n! 1 et et donc que, si n > 2, an est la partie entière de e.n!. Si pest un entier quelconque, on a: 1 p 1 1 e.n!-p 1 > n+1 et 1 e-nr 1 > (n+1)!. 1
Soit alors~ un rationnel positif quelconque; il peut s'écrire sous la forme~, et donc : q q.
(*)
1e
-~ 1 > (q! 1)!·
Fixons n et posons q = 10n + 1. On va montrer que la n-ème décimale de eq est égale à la n-ème décimale de e : soit ,8 la partie entière de 10n .eq. Il est clair que ,8 < 10n .e, et il suffit donc de montrer que 10n .e est inférieur à ,8 + 1. Si on suppose le contraire, on voit, d'après l'inégalité(*), que: lL±_1
1
e- 10n >q1, et on a déjà vu que : 0 < e - eq <
1 1 --qqr < qT ,
ce qui contredit la définition de ,8. Maintenant, on voit facilement que la fonction a= Àn.an est récursive primitive, de même que la fonction qui à n fait correspondre la n-€me décimale de a( 10 n + 1) ; ceci {10n+1 )! termine l'exercice.
252
Solutions des exercices
5. a) On se débarrasse du cas où a 0 est nul ( il y a alors au moins un zéro entier ; cette remarque devra aussi être faite pour b )). Dans les autres cas, il est clair qu'un zéro de P =ao + a1X +· · ·+ apXP doit être négatif et que, s'il est entier, il doit diviser a 0. On va supposer que pest pair, par exemple (l'autre cas se traite de la même façon) ; on voit alors que P a un zéro dans 71. si et seulement si il existe un nombre y E IN inférieur ou égal à a0 tel que ao + ati +· · ·+ apyP =a1y + a3y 3 +· · · + ap-1yP-1. L'ensemble E est donc défini par quantification bornée à partir d'un ensemble récursif primitif. b) On peut encore supposer que ao n'est pas nul, et, en raisonnant par récurrence sur p, que ap est aussi différent de O. Supposons que y=-~ soit un zéro de P où r et s appartiennent à IN, s est non nul et r et s sont premiers entre eux. On voit alors facilement que r doit diviser a0 et s que doit diviser a p. En supposant toujours que p soit pair, on voit donc que P a un zéro dans Qsi et seulement si il existe un entier r inférieur ou égal à a0 et un entiers inférieur ou égal à ap tel que : aoSP + a:PP-2r2 +·. ·+ aprP =a1sP-1r + a]SP-3r3 +·. ·+ ap-1srP-1. c) On construit d'abord deux fonctions récursives primitives IJ1(x,y) et telles que si x code la suite (ao,a1,···,ap) (c'est-à-dire si n(ao,a1,···,ap) =x), alors: IJ1(x,y) = .E f5{2i,x).y 2i
~(x,y)
21~X
et
~(x,y) = .E
21~ 1~X
b(2i
+ l,x).y 2 i~ 1 .
( f5 est la fonction définie en 1.12.) Ces fonctions sont récursives primitives. On utilise ensuite le même raisonnement qu'au a) : xE F si et seulement si il existe y~ b(O,x) tel que IJ1(x,y) = ~(x,y). 6.
La formule F a un modèle de cardinalité n si et seulement si elle a un modèle rot
dont l'ensemble de base est An= { O,l, ... ,n-1 }. Celui-ci sera alors caractérisé par l'interprétation R ÇA~ du prédicat binaire. On code le modèle par le couple (n,u(R)), où u(R) est l'entier défini par u(R) =
<.D, 1,
J
t.
R
w( lt2(i,j)).
Il est facile de voir que u(R) est borné par une fonction récursive primitive den, ( lt2(n,n)! par exemple). On voit aussi sans trop de peine que l'ensemble des codes des L-structures finies : M = { (n,u); il existeR ÇA~ tel que u = u(R) }, est récursif primitif. On va montrer que l'ensemble: U(F) = { (n,u(R)) ; R ÇA~ et (An,R) est un modèle de F }, est récursif primitif. Il s'ensuivra que n E Sp(F) si et seulement si il existe un entier u inférieur à lt2(n,n)! tel que (n,u) E U(F), et donc que Sp(F) est récursif primitif.
253
Chapitre 5
La formule F est équivalente à une formule de la forme : Q1Q2···QpB[vl,v2, ... ,vp], où pest un entier, où, pour i compris entre 1 et p, Qi représente soit le quantificateur 3vi soit le quantificateur Vvi et où B[v1,v2,... ,vp] est une formule sans quantificateur. On commence par montrer que si C[v 11 v2,... ,vp] est une formule sans quantificateur deL (et dont les variables libres sont parmi vh v2, ... , vp), alors l'ensemble: X(C) = { (n,u(R),a 1,a2,···,ap); (An,R) 1= C[a 1,a2, ... ,ap] } est récursif primitif. Ceci se fait sans histoire par induction sur la complexité de C : si C est atomique, c'est-à-dire de la forme RviVj, avec i et j compris entre 1 et p, alors : (n,u,a 1,a 2, ... ,ap) E X(C) si et seulement si (n,u) E M et a1, a2, ... , ap sont tous compris entre 0 et n -1 et ;r(ll2(ai,aj)) divise u. Ensuite, on remarque que X(C 1 A C2) = X(C 1) n X(C 2), X(C 1 V C2) = X(C 1) u X(C 2), et que (n,u,a 11 a 2,... ,ap)
E
X(-.C) si et seulement si (n,u)
E
M, a 1, a 2, ... , ap sont tous compris
entre 0 et n -1 et (n,u,aha 2,... ,ap) ~ X(C). Il en résulte donc que X(B) est récursif primitif. Maintenant, l'ensemble U(F) est défini par (n,q) E U(F) si et seulement si T 1T 2... T p((n,q,x 1,x2,... ,xp) E X(B)) où, pour chaque i compris entre 1 et p, Ti est égal à 3xi ~ n - 1 si Qi est le quantificateur 3vi, et Ti est égal à Vxi donc que U(F) est récursif primitif.
~
n -1 si Qi est le quantificateur Vvi. On voit
7.
Laissé au lecteur.
8.
La machine a autant de bandes que l'on veut, mais seule la première a de
1'importance ; aussi nous négligerons les autres. Elle a trois états e0 , e1 et er. Voici sa table:
+ 1) ; M(eh 1) = (e0,b, + 1) ;
M(e0 ,d) = (e 0 ,d,
M(eo, 1) = (e1,b, + 1) ; M(e 1,b) =(e1,b, 0);
M(e 0 ,b) = (er,b,O). 9.
a) Soit .At une machine à n bandes calculant f; on va simuler le calcul effectué par
.At à l'aide d'une machine A' à 3 bandes de la façon suivante: le calcul se fera en réalité sur la troisième bande ; la suite des cases numéro 1, n + 1, 2n + 1, etc. de cette bande jouera le rôle de la première bande de .At ; la suite des cases numéro 2, n + 2, 2n + 2, etc. jouera le rôle de la deuxième bande, et ainsi de suite. La machine A' doit d'abord recopier le contenu de la première bande sur la troisième en utilisant seulement une case sur n ; puis elle doit simuler le calcul de .At. Ensuite elle doit recopier le contenu de la suite des cases numéro 2, n + 2, 2n + 2, etc. sur la seconde bande; enfin elle doit effacer la troisième bande. On laisse au lecteur le soin de trouver le nombre exact d'états nécessaires et d'écrire la table de A' s'ille désire.
254
Solutions des exercices b) L'ensemble rotn est fini !
c) Il suffit de rajouter p + 1 nouveaux états f0 ,f1,... ,fp à l'ensemble des états de .Jt. L'état initial de .A'p est fo ; lorsque la machine est dans l'état fi {0 ~ i ~ p - 1) elle ajoute un bâton sur la première bande et elle passe dans l'état fi+ 1 ; lorsqu'elle est dans l'état fp elle ramène sa tête en début de bande et passe dans l'état initial de .Jt ; A'p a donc n + p + 1 états. d) Supposons que la fonction E soit T-calculable; alors la fonction .\x.E{2x + 1) + 1 l'est aussi, et on peut supposer que c'est par une machine .Jt ayant 3 bandes et n états. La machine A'n construite en c) a alors 2n 1 états, et, partant de la
+
configuration blanche termine, avec E{2n + 1) + 1 bâtons sur sa seconde bande, ce qui contredit la définition de E. 10.
Si f est récursive, alors la fonction caractéristique de son graphe G est
Xc = ..\xy.{1.:. ((y.:. f{x)) + {f{x).:. y)]) qui est manifestement récursive. Réciproquement,
f{x) = p.y {x,y) E G, et donc fest récursive siG l'est. 11.
a) On laisse le lecteur vérifier que la relation
antisymétrique et totale. Si {a,b,c) E IN
3
,
« est
bien transitive, réflexive,
et {x,y,z) « {a,b,c), alors x, y, et z sont tous les
trois inférieurs à sup{a,b,c), ce qui montre que l'ensemble { {x,y,z) E IN 3 ; {x,y,z) « {a,b,c) } a, au plus, (sup{a,b,c) + 1) 3 éléments. Soit (a,b,c) E IN 3. On va définir, en distinguant plusieurs cas, un autre élément 3
(a',b',c') de IN dont on vérifiera que c'est le successeur immédiat de {a,b,c); posons sup{a,b,c) = k : • si k > c, • si k = c, k > b + 1 et k > a, • si k = c, k > b + 1 et k = a,
• si k = c = b =a + 1,
alors alors alors alors alors alors
• si k = c = b = a,
alors a' =0, b' =0, c' =c + 1.
• si k = c = b + 1, • si k = c = b et k > a
+ 1,
a' =a, b' = b, c' = a'= a, b' = b + 1, a'= a, b' = b + 1, a' =a, b' =b + 1, a' =a+ 1, b' =0, a' =a+ 1, b' =0,
c+ 1; c' = c ; c' = 0; c' =0; c' =c; c' =0;
b) Les fonctions 'Yh 72 et 'YJ sont définies simultanément par récurrence comme dans l'exemple 1.13 : 71{0) = 72{0) = 13{0) = 0 et 71(n + 1), 72(n + 1), 13(n + 1) sont définis à partir de 71{n), 12( n), 13( n) : • si sup('Y1(n),'Y2(n),'YJ{n)) > 'YJ{n), alors 71(n + 1) = 11(n), 72{n + 1) = 72(n), et 13(n + 1) = 'YJ{n) + 1;
Chapitre 5
255
sup(71(n),7:z(n),73(n)) = 73(n), 7:z(n) + 1 < sup(71(n),72(n),73(n)), et 11(n) < sup(71(n),7:z(n),73(n)), alors 11(n + 1) = 11(n), 7:z(n + 1) = 72(n) + 1, et 73(n + 1) = 73(n) ; • si sup(71(n),7:z(n),73(n)) = 73(n), 7:z(n) + 1 < sup(71(n),72(n),73(n)), et 11(n) = sup( 71(n),7:z(n),73(n)), alors 11(n + 1) = 11(n), 7:z(n + 1) = 12(n) + 1, et 73(n + 1) = 0; • si sup(71(n),7:z(n),73(n)) = 73(n) = 7:z(n) + 1, alors 71(n + 1) = 71(n), 7:z(n + 1) = 7:z(n) + 1, et 73(n + 1) = 0; • si sup( 71(n),72(n),73(n)) = 73(n) = 12(n) et 11(n) + 1 < sup( 71(n),7:z(n),73(n)), alors 71(n + 1) = 71(n) + 1, 7:z(n + 1) =0, et 73(n + 1) = 73(n); • si sup(71(n),72(n),73(n)) = 73(n)= 72(n)= 11(n) + 1, alors 11(n + 1) = 71(n)+1, et 72( n + 1) = 73( n + 1) = 0 ; • si sup(71(n),72(n),73(n)) = 73(n) = 12(n) = 11(n), alors 71(n+1) = 7:z(n+1) =0, et 73(n + 1) = 73(n) + 1. Il est clair que (0,0,0) = ( 71(0),72(0),73(0)) est l'élément minimum de IN 3 pour la • si
relation(. D'autre part, en comparant avec ce qui a été dit au a), on voit que, pour tout
n, (71(n + 1),72(n + 1),73(n + 1)) est le successeur immédiat, pour la relation (11(n ), 7:z(n ), 73(n )). Pour tout entier n, on voit alors par récurrence sur p
(71(n + p),72(n + p),73(n + p))
~
<,
de
0, que :
> (71(n),7:z(n),73(n))
et que l'inégalité est stricte si p > O. Ceci montre bien que, pour tous rn, n,
( 71(m),72(m),73(m)) ( (11(n),7:z(n),73(n)) si et seulement si rn ~ n, et que, si rn < n, alors l'inégalité ( 71(m),72(m),73(m)) « ( 71(n),7:z(n),73(n)) est stricte: l'application
r
= ..\n.( 71(n),72(n),7J(n)) est injective.
Passons à la surjectivité. Soit (a,b,c) E IN 3, et posons d = sup(a,b,c). On raisonne
3
par l'absurde et on suppose que pour tout n < (d + 1) , f(n) montrer, par récurrence, que, pour tout n ~ (d + 1)3 :
=t:-
(a,b,c). On va alors
(71(n),12(n),73(n)) « (a,b,c). C'est vrai pour 0, puisque ( 71(0),72(0),73(0)) = (0,0,0) est le minimum pour la relation«. Si on suppose que c'est vrai pour n, comme par hypothèse, ( 71(n),12(n),73(n)) =t:- (a,b,c), on voit que (71(n),72(n),73(n)) est strictement inférieur, pour l'ordre «, à (a,b,c), et puisque (71(n+1),72(n + 1),73(n + 1)) est le successeur immédiat de (71(n),72(n),73(n)), on en déduit :
(11(n + 1),72(n + 1),73(n + 1)) « (a,b,c). On voit donc que l'ensemble { (x,y,z) ; (x,y,z) « (a,b,c) } possède au moins (d + 1)3 + 1 éléments ce qui est impossible puisqu'on a vu au a) que ce dernier ensemble a, au plus, (d + 1) 3 éléments. c) Le fait que H soit un ensemble récursif primitif n'est pas complètement clair : pour calculer XH(n), il faut avoir à sa disposition toutes les valeurs XH(P) pour p < n (et
256
Solutions des exercices
pas seulement XH(n - 1) comme dans une récurrence habituelle). On se reportera à la solution de l'exercice 13 pour voir comment procéder. Passons maintenant à l'équivalence: nE H si et seulement si 71(n) = {(72(n),73(n)). Elle se montre par récurrence sur n. Pour n = 0, elle est vérifiée puisque 0 71(0) = 72(0) = 73(0) = 0 et {( 12(0),71(0)) = 1. Pour n
~
H et que
"* 0, on distingue plusieurs cas :
• si 72(n) = 0, alors l'équivalence se déduit sans difficultés des définitions; • même chose si 73(n) = 0; • plaçons-nous dans l'autre cas; posons z = 71(n), y= 72(n) et x= 73(n). On suppose d'abord que z = {(y,x) et on veut en déduire que nE H. Par définition de la fonction d' Ackermann, Puisque
r
z ={(y - 1,{(y,x - 1)). est bijective, il existe deux entiers p et q tels que :
71(P) = {(y,x- 1), 72(p) =y et 73(p) =x- 1 et 11(q) =z, 72(q) =y- 1 et 73(q) = 71(p). Des propriétés de la fonction d' Ackermann, il découle facilement que : (71(P),72(P),73(P)« (71(n),72(n),7J(n)) et (71(q),72(q),73(q)) « (71(n),72(n),73(n)) et ( 71(P ), 72(P ), 73(P )*( 71( n), 12(n ), 73(n)) et ( 71(q), 72( q), 73( q))*( 11(n ), 12(n ),73(n )), et donc, p < n et q < n ; par hypothèse de récurrence, p et q appartiennent à H. La définition récursive de H montre alors que n aussi appartient à H. Réciproquement, supposons que n E H, et considérons les entiers pet q dont il est question dans la définition récursive de H. Par hypothèse de récurrence, on voit alors que 71(P) = {(y,x- 1) et z ={(y- 1,71(p)), et cela implique bien que z = {(y,x). d) D'après ce que l'on a vu, (y,x,z) E G si et seulement si il existe + 1)3 tel que nE H et 71(n) =z, 72(n) =y et 73(n) =x: la fonction
n ~ (sup(x,y,z)
d' Ackermann est récursive (exercice 10). 12. Soit fE ~1 une fonction récursive croissante ; si fest bornée, son image est finie et donc récursive. Sinon, définissons la fonction g par :
g(x) = JLY f(y) ~x; g est alors une fonction récursive totale, et xE lm(f) si et seulement si f(g(x)) =x. Soit maintenant A Ç IN un ensemble récursif infini ; on définit la fonction f par récurrence :
f(O) = JLY y E A ; f( n + 1) = JLY (y E A et y > f( n)) ; f est récursive, strictement croissante et son image est A.
Chapitre 5
257
13.
La fonction g sera définie comme suit : g{O) =f{O); g(n + 1) =f{p) où pest le plus petit entier tel que f{p) t {g{O),g(1), ... ,g(n) }. Il est à peu près clair que g est une fonction totale injective et que son image est égale à celle de f; il n'est pas complètement évident qu'elle soit récursive, car pour calculer g(n + 1), il faut connaître toutes les valeurs g(i) pour i :E;;: n, et non pas seulement g(n) comme dans une récurrence classique. On va donc commencer par définir la fonction h{x) = n~:~ t'{g(t)) par la récurrence suivante qui, elle, est tout-à-fait orthodoxe: h{O) = t'{f{O)) ; h{n + 1) = h{n).t'{f{J'Y(t{f(y)) ne divise pas h{n)))). La fonction g se définit alors facilement par g{O) = f{O) et g{n + 1) = J'Y(tiy) divise h{n + 1) mais ne divise pas h{n)). On a vu dans le cours (4.5 et 4. 7) qu'il existe des fonctions récursives dont l'image n'est pas récursive. Il en existe donc aussi qui, de plus, sont injectives. 14. Soit A un sous-ensemble récursivement énumérable infini de !NP ; on veut montrer qu'il contient un ensemble récursif infini. En remplaçant A par son image par ap (voir 1.11), on se ramène au cas où A ç; IN. On sait alors que A est l'image d'une fonction récursive primitive fE -iJ1• On définit la fonction gE -iV1 par: g{O) =f{O); g(n + 1) =sup(g(n),f{n + 1)); g est une fonction récursive primitive croissante dont l'image est infinie et incluse dans A. Cette image est récursive d'après l'exercice 12. 15.
a) L'ensemble B est la projection d'un ensemble récursif: il est donc récursive-
ment énumérable. Montrons que, pour tout Xo E IN, il existe x1 E IN, x1 > x0 et x1 ~ B : il suffit de choisir x1 > xo tel que a{x 1) soit minimum dans l'ensemble { a{y) ; y> Xo }. b) Il est clair que A est récursivement énumérable ; il suffit donc de montrer que, sous les conditions de b), le complémentaire de A est récursivement énumérable (voir 4.2). Puisque C est inclus dans le complémentaire de B, si xE C et si y> x, alors a(y) > a{x) ; donc a est strictement croissante sur C. Puisque C est infini, l'ensemble { a{x) ; xE C } n'est pas borné. Soient t un entier et x0 un élément de C tels que a{Xo) > t. Alors t est dans A si et seulement si il existe y< Xo tel que a(y) = t. Autrement dit : t t A si et seulement si il existe xE C tel que a{x) >tet, pour tout y< x, a(y) =1=t, et on voit que le complémentaire de A est la projection d'un ensemble récursivement énumérable. c) Soit A un sous-ensemble infini de IN qui est récursivement énumérable mais pas récursif; c'est l'image d'une fonction totale récursive, donc, d'après l'exercice 13, c'est
258
Solutions des exercices
aussi l'image d'une fonction récursive injective que l'~n appellera a. Si on pose B = {x; il existe y> x tel que a(y) < a{x) } et D =IN - B, on voit que B est récursivement énumérable et que D est infini (question a)). Mais D ne peut pas contenir de sous-ensemble récursivement énumérable infini, car alors A serait récursif (question b)). On en déduit que tout ensemble récursivement énumérable infini a une intersection non vide avec B. 16. a) L'ensemble des bijections muni de l'opération de composition est un groupe ; il suffit de montrer que les bijections récursives en forment un sous-groupe, et pour cela il faut montrer que l'idendité est récursive, ce qui est évident, que la composée de deux bijections récursives est récursive, ce qui est encore évident, et que la réciproque d'une bijection récursive est récursive, ce qui n'est pas bien difficile : si fest une bijection, f- 1 est définie par f-1(x) = ~y(f(y) =x). b) Rappelons que l'ensemble C1 Ç IN·4, défini par: (i,t,x,y) E C1 si et seulement si la machine d'indice i qui a démarré avec x sur sa première bande a terminé son calcul au temps t et il y a y bâtons inscrits sur sa deuxième bande, est récursif primitif. Si on suppose que fest récursive primitive et que, pour tout x, f{x) ;;::: T(x), alors
t. B\
c) Le fait que g soit récursive et strictement croissante est à peu près évident. Comme g(x) ;;::: T(x) pour tout x, elle n'est pas récursive primitive d'après la question a). Son graphe G1 et son image 1 sont récursifs primitifs car : • (x,y) E G1 si et seulement si il existe i :s;;; x tel que (i,y- 2x) E G et, pour tout j :s;;; x, il existez :s;;; y- 2x tel que (j,z)
E
G.
• y E 1 si et seulement si il existe x :s;;; y tel que (x,y)
E
G1•
d) On n'a pas le choix: g'(n) doit être le (n + 1)-ème élément de IN -1 ; comme 0 n'appartient visiblement pas à 1 (il faut au moins une étape pour effectuer un calcul), il faut poser g'(O) = 0 . D'autre part, pour tout n, l'ensemble 1 n {y ; y :s;;; 2n } a au plus n éléments, donc l'ensemble (IN -1) n {y ; y :s;;; 2n } en a au moins n + 1, ce qui prouve que g'(n) :s;;; 2n, et ce qui nous permet de terminer la définition de g' par récurrence: g'(n
+ 1) =~y :s;;; 2n + 2 (y t-1 et y> g'(n)).
e) Il est clair, d'après sa définition, que la fonction h est récursive, injective et surjective. On voit aussi qu'elle ne peut pas être récursive primitive sinon g le serait aussi. Maintenant h-1 peut être définie de la façon suivante :
Chapitre 5
259
h-1(x) = 2(p.y ~ x ((y,x) E G1)) si x E 1 ; h-1(x) = 2(p.y ~ x (g'(y) =x)) + 1 sinon, ce qui montre que h-1 est récursive primitive. En revanche, on vient de voir que h, sa réciproque, ne 1'est pas. 17.
Prenons un ensemble B' Ç IN récursivement énumérable non récursif (le domaine de définition de la fonction partielle h.
Considérons la fonction partielle gE
ai
définie par : g(x,t) = p.y (
Elle est récursive et, si ~ est une bijection de IN dans IN, alors ,\t.g(x,t) est la bijection réciproque. Soit i un indice de g ; on a donc, pour tous x et t : g(x,t) = cpl(i,x,t). En appliquant maintenant le théorème smn on obtient : g(x,t) =
Définissons :
fo=g, et, par récurrence sur x, fx+1(Y) = h(fx(a(y)),y,x) Il est alors clair que la fonction partielle ,\xy.fx(Y) est l'unique fonction partielle qui satisfasse les conditions de l'énoncé. Il est aussi évident que chacune des fx est récursive, mais il n'est pas clair, a priori, que f elle-même le soit. Pour le montrer, on va copier la démonstration qui a permis de montrer que la fonction d'Ackermann est récursive. Considérons l'application qui, à chaque fonction partielle k E k* E
ai, fait correspondre
ai définie par : k*(O,y) = g(y) ; k*(x
+ l,y) = h(k(x,a(y)),y,x).
On remarque que f est la seule fonction partielle qui satisfasse f* = f. D'autre part, comme dans le cas de la fonction d'Ackermann, on trouve, en utilisant le théorème smn, une fonction récursive primitive {J telle que, si k =~alors k* =~lx>. Le théorème du point fixe nous apprend qu'il existe un entier i tel que
Solutions des exercices
260
20. Si la fonction ,\x.T 1(i,x) peut être prolongée en une fonction totale récursive h, alors A est récursif: pour savoir si n E A, on regarde si la machine d'indice i a terminé son calcul après h(n) étapes. 21. a) Pour montrer qu'une fonction récursive primitive est calculable en un temps récursif primitif, il suffit de reprendre la démonstration du fait que toute fonction partielle récursive est T-calculable; si on n'utilise pas le schéma !J., comme c'est le cas lorsqu'on a affaire à une fonction récursive primitive, on s'aperçoit que l'on peut borner le temps de calcul par une fonction récursive primitive. La réciproque est exactement la première remarque faite en 3.14. b) Découle du corollaire 2.4. c) Lorsque l'on fixe n (et A et i), la fonction .Àx.{(n,x) est récursive primitive, de même que la fonction ,\x.g(i,A,n,x). Réciproquement, supposons que f E 1 soit récursive primitive. Alors, d'après a) et b ), il existe des entiers i, n et A tels que f(x) soit calculée par la machine d'indice i en un temps qui est borné par sup(A,{(n,x)). Autrement dit :
a-
f = .\x.g(i,A,n,x).
d) On voit donc que l'ensemble des fonctions .\x.g(i,A,n,x), où i, A et n sont des entiers, est égal à l'ensemble de toutes les fonctions récursives primitives à une variable. On obtient la fonction cherchée en posant :
#_x, y) = g(~ (x),P~(x),P~(x),y ). e) On utilise un argument diagonal : l'ensemble X= {x; #_x,x) = 0} est manifestement récursif. Il n'est pas récursif primitif, car, s'il l'était, il existerait un entier y tel que sa fonction caractéristique soit égale à .\x. #_y ,x) et on en déduirait que : y E X si et seulement si y ~ X,
ce qui est absurde. 22. a) C'est toujours le même argument diagonal: si on suppose que l'ensemble des fonctions totales récursives à une variable est énuméré au moyen de la fonction F(x,y), on obtient une contradiction en considérant la fonction ,\x.F(x,x)
+ 1.
b) Soit F(x,y) une fonction récursive énumérant les fonctions récursives primitives à une variable (exercice 21). On définit G(x,y) par :
G(x,O) = F(x,O) ; G(x,y + 1) = sup(G(x,y) + 1,F(x,y + 1)). On vérifie que, pour tout x, la fonction Gx = .Ày.G(x,y) est récursive primitive et strictement croissante, et que, de plus, si Fx est elle même strictement croissante, Gx = Fx. L'ensemble { Gx ; xE IN } est donc bien égal à l'ensemble de toutes les fonctions récursives primitives strictement croissantes à une variable.
Chapitre 5
261
c) On utilise la même technique : on définit la fonction H par H(x,O) = F(x,O) ; H(x,y + 1) = F(x,y + 1) si F(x,y + 1);. { H(x,t) ; 0 ~ t ~y } ; H(x,y + 1) =sup { H(x,i) + 1; 0 ~ i ~y} sinon. (Pour montrer que la fonction H est récursive et que les fonctions Hx sont toutes récursives primitives, il faut utiliser la technique indiquée dans la solution de l'exercice 13). d) On va construire une fonction g récursive strictement croissante, dont l'image B ne contient aucun des ensembles Ax; B sera un ensemble récursif d'après l'exercice 12, ce qui répondra à la question. On définit g par : g(O) = 0 g(x + 1) = P~(J.Lt[P~(t) = F(x,P~(t)) et P~(t) > g(x)] + 1. La fonction g est manifestement récursive, et le fait que l'image de ..\y.F(x,y) est infinie entraîne qu'elle est totale. Pour tout entier x, posons: a= (J.Lt[P~(t) = F(x,P~(t)) et P~(t) > g(x)], b = P~(a), c = P~(a). On a alors: g(x + 1) = b + 1, b > g(x) et b = F(x,c). Cela montre que g est strictement croissante et que b qui appartient à l'image de la fonction ..\y.F(x,y) (c'est-à-dire à Ax), est strictement compris entre g(x) et g(x + 1) et n'appartient donc pas à l'image de g. Si l'ensemble des fonctions récursives strictement croissantes ou des fonctions récursives injectives était récursivement énuméré, il le serait à l'aide d'une fonction FE 2 telle que, pour tout entier x, l'image de ..\y.F(x,y) est infinie: on vient de construire une fonction g récursive strictement croissante, donc injective, ne pouvant être égale à aucune des fonctions ..\y.F(x,y).
a-
23
a) Immédiat à partir du fait que l'ensemble des fonctions récursives totales
contient la fonction identité et est clos par composition. b) Supposons que B soit un ensemble récursivement énumérable : c'est donc le domaine de définition d'une fonction partielle récursive h. Maintenant, si A est réductible à B, c'est qu'il existe une fonction récursive f telle que : si xE A alors f(x) E B et donc hof(x) est défini ; si x;. A alors f(x);. B et donc hof(x) n'est pas défini ; cela montre que A est le domaine de définition de hof et qu'il est donc récursivement énumérable. Il est bien clair que A ~ B si et seulement si IN -A
~
IN - B . Donc, si on suppose
que B est récursif, alors A et IN- A sont tous les deux récursivement énumérables, et donc A est récursif.
262
Solutions des exercices
c) On sait que Y est récursivement énumérable; donc, avec le résultat du b), on voit que, si A ~ Y, alors A est récursivement énumérable. Réciproquement, supposons que A soit le domaine de définition de la fonction partielle récursive d'indice e. Alors xE A si et seulement si rp1(e,x) est défini, si et seulement si lt2(e,x) E Y: A est réductible à Y. d) Il est d'abord bien clair que A et B sont tous deux réductibles à C : xE A si et seulement si 2x E C, et xE B si et seulement si 2x + 1 E C. Soient D Ç IN et f et g deux fonctions telles que : xE A si et seulement si f(x) E D, et x E B si et seulement si g(x) E D. Il s'agit de montrer que C est réductible à D. Il suffit de considérer la fonction h définie par:
h(x) = f(x/2) si x est pair ; 1 ) si x est impair ; h(x) = g(x
2
et on voit alors facilement que xE C si et seulement si h(x) E D. e) Soit B Ç IN ; appliquons la construction du d) aux ensembles B et IN - B, et on obtient un ensemble C. On va montrer que C est autodual : puisque B et IN - B sont tous deux réductibles à C, on voit que IN- B et B sont réductibles à IN- C. Il découle de la propriété de minimalité de C démontrée end) que C est réductible à IN- C. f) i) Soit f une fonction partielle récursive n'appartenant pas à :F; considérons la fonction IJ(x,y) =f(y) + rp1(x,x)- rp1(x,x), et posons, pour chaque entier n:
On= ..\y.IJ(n,y); On est donc la fonction partielle de domaine vide si n E IN - X, et est égale à f sinon. Si e est un indice pour 0, le théorème smn nous dit que s~( e,n) est un indice pour On. On voit que n E IN -X si et seulement si s~(e,n) E A, ce qui montre que IN -X est réductible à A donc X à IN - A. ii) On va choisir maintenant une fonction partielle récursive f appartenant à :?, et on pose encore IJ(x,y) =f(y) + rp1{x,x)- rp1(x,x) et, pour chaque entier n, On = ..\y.IJ(n,y). Si e est un indice de 0, s~{e,n) est un indice de On ; alors, n EX si et seulement si s~{e,n) E A, et X est réductible à A. iii) On raisonne par l'absurde et on suppose qu'il existe une fonction récursive f telle que pour tout entier x, xE A si et seulement si f{x) E IN- A. Le premier théorème du point fixe fournit un entier n tel que rp! = VJJ
et pour chaque entier
n
tK_x,y) = rp (P~(x),P~(x)), posons f/Jn = ..\y. tM_ n ,y) . Cette fonction partielle est totale (et
263
Chapitre 5
constante) si n E Y et n'est jamais définie sinon ; d'autre part, si e est un indice pour '1/J,
s~(e,n) est un indice pour tPn· Donc, si n E Y, alors cp1 (s~(e,n),s~(e,n)) est défini et s~(e,n) EX. Réciproquement si nf. Y, alors cp1 (s~(e,n),s~(e,n)) n'est pas défini et s~(e,n) f. X, ce qui montre que Y~ X. 24.
Le fait que '1/J soit une fonction partielle récursive provient de ce qu'elle a été
= 0 si cp1(x,O) est défini, et g(x) = 1 sinon. Autrement dit, g est la fonction caractéristique de
définie par cas, comme cela nous a été permis en 4. 6. On voit aussi que g(x) l'ensemble: {x; cp1(x,O) n'est pas défini }, qui n'est pas récursif d'après le théorème de Rice: g n'est pas récursive. 25.
a) Tout d'abord, A est le domaine de définition de la fonction partielle récursive
.h.cp1(x,O); c'est donc un ensemble récursivement énumérable. Considérons l'ensemble: vi= { f; fE~ , fest récursive et f(O) est défini } ; il est bien clair que vi n'est ni vide, ni l'ensemble de toutes les fonctions partielles récursives à une variable, et le théorème de Rice permet donc de conclure que A n'est pas récursif. Comme on sait déjà que A est récursivement énumérable, on en déduit que son complémentaire n'est pas récursivement énumérable (4.2). b) Considérons la fonction partielle H = ..\xy .sg(l
+ cp1(x,O)) ; elle est
récursive, et
= ..\y.H(n,y).
Le théoréme
elle possède donc un indice a :
H=~. Pour chaque entier n, considérons maintenant la fonction Hn
smn nous dit que s~(a,n) est un indice de Hn, et, d'autre part, on voit facilement que si nE A, alors Hn est la fonction constante égale à 1, tandis que sin f. A, Hn est la fonction de domaine vide. Donc : n E A si et seulement si s~(a,n) E B. On peut donc prendre pour a la fonction récursive primitive ..\x.s~(a,x). Le fait que 8 n'est pas le complémentaire d'un récursivement énumérable découle du petit lemme suivant qui va servir plusieurs fois dans la suite :
LEMME : Soient C Ç IN et f E ~1 une fonction récursive totale et on suppose
que, pour tout entier n, n E A si et seulement si f(n) E C ; alors IN- C n'est pas récursivement énumérable.
Supposons le contraire, et soit h une fonction partielle récursive dont le domaine est IN-(; alors nf. A si et seulement si h(f(n)) est défini, ce qui implique que IN -A est récursivement énumérable (domaine de la fonction hof). Or cela est faux.
264
Solutions des exercices
c) On remarque que, si n ~A, alors B1(e,z,n) n'est vérifié pour aucune valeur de z, et par conséquent, la fonction .\y.F(n,y) est égale à la fonction constante égale à 1. D'un autre côté, si nE A, B1(e,z,n) est vérifié pour toutes les valeurs de z qui sont supérieures ou égales au temps de calcul de la machine d'indice e travaillant avec l'entier n représenté sur sa première bande à l'instant initial ; la fonction .\y.F(n,y) a donc dans ce cas un domaine fini. La fonction F est manifestement récursive : appelons b un indice de F. Alors, par le théorème smn, s~(b,n) est un indice de .\y.F(n,y). On voit donc que: n E A si et seulement si s~( e,n) E IN - B, d'où il découle, par le lemme ci-dessus, que B n'est pas récursivement énumérable. d) Posons B' = {x ;
1/4 = f } ; pour
montrer que ni B' ni son complémentaire ne
sont récursivement énumérables, on va construire deux fonctions récursives primitives 7 et 6 à une variable telles que, pour tout entier n : nE A si et seulement si
7(n) E B';
n E A si et seulement si
6(n) E IN- B'.
Considérons les fonctions H' et F' définies par : H'(x,y) =f(y).H(x,y); F'(x,y) =f(y).F(x,y), (où H et F sont les fonctions définies aux questions b) et c)) et soient, respectivement, c et d des indices de ces fonctions. On voit, comme précédemment, que, pour tout entier n, s~(c,n) et s~(d,n) sont des indices pour les fonctions H~ = .\y.H'(n,y) et F~ = .\y.F'(n,y).
En utilisant ce que l'on sait sur les fonctions H et F, on voit que, si n E A, alors H~ est égale à f et F ~ est une fonction de domaine fini (donc différente de f) ; si, au contraire, n ~ A, F~ est égale à f et H~ est la fonction de domaine vide. On a donc démontré que : n E A si et seulement si sHc,n) E B'; n E A si et seulement si s:(d,n) E IN- B'. La proposition de l'énoncé découle alors du lemme. 26.
a) Considérons la fonction .\nx.n ; elle est récursive et il existe donc un entier i tel
que, pour tous n et x : ljil(i,n,x) = n, et en posant 6= .\n.s:O,n), on voit que la fonction
rA(n)
est bien la fonction constante
égale à n. b) La troisième version du théorème du point fixe nous dit qu'il existe une fonction récursive primitive h(n,t) telle que, pour tous net t, 1
1
!ph(n,t) =!poy(n,t,h(n,t))·
Si h(n,t) ~ t, alors 7(n,t,h(n,t)) = .5(n) ; sinon 7(n,t,h(n,t)) = t et on obtient bien ce que l'on veut.
Chapitre 5
265
c) L'application de At dans l'ensemble { 0,1, ... ,t} qui à n fait correspondre h(n,t) est injective: en effet, si n et rn sont dans At et n 1 rn, alors :
cÀ
=
*
27. a) On montre d'abord que i) implique ii). La fonction cp1 est partielle récursive, donc il existe un indice i tel que cp1 = '1/J~ et donc tel que, pour tous x, y : cp1(x,y) = 1/J(i,x,y) = .,P1(uW,x),y) = O(u~(i,x),y). Il suffit donc de choisir fJ= ÀX.u~(i,x). Pour montrer que ii) implique i), posons : t/f(i,x1,x2, ... ,xp) = fJ(i,ap(x1,x2, ... ,xp)). La propriété (énu) est facile à vérifier : soit f une fonction partielle récursive à p variables. Alors la fonction g = h.f({J~(x),{J~(x), ... ,,BC(x)) est aussi partielle récursive, et il existe un entier i tel que g =(Ji, et on voit que f =VIf . Passons donc à la propriété (snm) : on sait qu'il existe un entier etel que fJ= ri~, et, en posant o(i) = s~(e,i), on voit que (Ji= cp!m ; on a : .,pn+m(i,x1,x2,···,Xn,YhY2,···'Ym) = fJ(i,an+m(x1,x2,···,xn,Y1,y2,···,Ym)) = cp1( o(i),an+m(x1,x2, ... ,Xn,Y1,Y2, ... ,ym)). Considérons maintenant la fonction partielle ..\ix1x2... XnZ. cp1( o(i), an +m(x1,x2,· .. ,xn ,,B~(z ),{J~(z ), ... ,,B~(z)) ). Elle a un indice e', et donc, pour tous i,x 1,x 2,... ,xn et z: .,pn+m(i,x1,x2,· .. ,xn ,,B~(z),,B~(z ), ... ,,B~(z)) = cp1( o(i), an +m(xhx2, ... ,Xn ,{J ~(z ),,B~(z ), ... ,,B~(z))) = cp"+ 2(e',i,x 1,x2, ... ,xn,z) = cp1 (s~+2(e',i,x1,x2, ... ,xn),z) = fJ(,B(s~+2(e',i,x 1 ,x2, ... ,xn)),z). En remplaçant z par am(y 1,y 2,... ,ym), et en posant oW(i,x 1,x2, ... ,xn) = {J(s~+2(e',i,x 1 ,x2, ... ,xn)), on obtient : .,pn+m(i,x1,x2, ... ,xn,Y1,y2, ... ,ym)
= fJ(oW(i,x1,x2, ... ,xn),ltrn(Y1,y2,· .. ,Ym)) = t/1"( oW(i,x1,x2, ... ,xn),y1,y2, ... ,ym)·
b) La démonstration des théorèmes du point fixe qui se trouve dans le cours n'utilise que le théorème d'énumération et le théorème smn : on fait exactement la même démonstration. c) La fonction a a déjà été construite, et la fonction {J est donnée par les hypothèses. Il faut juste voir que l'on peut les supposer injectives. On sait comment faire pour la fonction a: il suffit d'utiliser une fonction 6(n,x), strictement croissante en sa première variable et telle que, pour tous n et x, 1
1
'Pii
266
Solutions des exercices
Pour la fonction {J, on fait le même raisonnement. Il faut donc montrer qu'il existe une fonction 'Y(n,x) telle que, pour tous n et x,
O.,
fn(P) =e(p) et gn(P) =e-1(p) si p ~ n f n( p) = gn( p) = 0 si p > n. On va s'arranger pour que, de plus, pour tout p inférieur ou égal à n, 'PP= 01 n
IIi
Op=
Chapitre 6
267
CHAPITRE 6
a) Il suffit de vérifier les axiomes Ah A2, ••. et A7 , ce qui n'offre pas grande difficulté. Traitons A7 à titre d'exemple. Soient donc a et b dans M, et montrons que (•) axSb=(axb)+a. 1.
Il faut distinguer plusieurs cas :
i) a et b sont tous deux dans IN ; alors (•) est évident puisque rot est une extension de IN;
ii) a EX x "O., disons a =(x,n), et b EIN; alors Sb =b + 1, a x Sb =(x,nx(b + 1)). -Si b = 0, a x Sb= (x,n) =a et a x b = 0, et on a bien (a x b) +a= a x Sb ; -Si b =1=0, a x b = (x,n x b) et (a x b) +a= (x,(n x b) + n) =a x Sb; iii) a E IN et bE X x "O., disons b = (y,rn) ; alors Sb= (y,m + 1) et a x Sb= (y,a x (rn+ 1)). D'autre part, a x b = (y,a x m), et (a x b) +a= (y,(a x m) +a); iv) a EX x "O. et bE X x "O., disons a= (x,n) et b = (y,m); alors Sb= (y,rn + 1),
a x Sb= (f(x,y),n x (m + 1)); (f(x,y),(n x rn)+ n).
d'autre
part,
a x b = (f(x,y),n x m)
et
a x b +a=
b) On va se servir de a) pour construire un modèle de .90 dans lequel aucune des formules données n'est vraie. Il suffit de prendre un ensemble X ayant au moins deux éléments, par exemple X= IN et une fonction f non associative, par exemple f(x,y) =x+ 2y. Dans le modèle
rot construit
en suivant a) à partir de ces données, on a,
par exemple : (1,1) + (2,0) = (1,1) et (2,0) + (1,1) = (2,1), ce qui montre que l'addition n'est pas commutative, et et
((1,1) x (2,2)) x (3,3) = (5,2) x (3,3) = (11,6) (1,1) x ((2,2) x (3,3)) = (1,1) x (8,6) = (17,6),
ce qui montre que la multiplication n'est pas associative. Pour la troisième formule on voit par exemple que (1,0) ~ (1,1) (parce que (1,1) + (1,0) = (1,1))et (1,1) ~ (1,0) (parce que (1,-1) + (1,1) = (1,0)). La quatrième formule n'est pas vérifiée parce que, par exemple, 0 x (1,0) = (1,0). c) Dans les modèles que l'on vient de construire, 1' addition est associative. Mais on peut utiliser la même idée pour voir que l'associativité de l'addition ne découle pas de
.90 . Voici un modèle de .90 , parmi beaucoup d'autres, dans lequel l'addition n'est pas associative : l'ensemble de base est IN U (IN x "O.), c'est une extension de IN, et S, + s-4 x sont interprétés de la façon suivante : S(n,a) = (n,a+1); (n,a) +rn= (n,a+m) = m + (n,a); (n,a) + (rn,b) = (n+2rn,a+b) sin
=1=
m et (n,a) + (n,b) = (n,a+b);
268
Solutions des exercices
(n,a) x rn= (n,arn) =rn x (n,a) si rn :t:O et (n,a) x 0 = 0 x (n,a) =0; (n,a) x (rn,b) = (2nb,ab). Là encore, il n'y a aucune difficulté à montrer que les sept axiomes de .90 sont vérifiés et, par exemple: ((1,0) + (2,0)) + (3,0) = (11,0) ; (1,0) + ((2,0) + (3,0)) = (17,0).
2. a) Il est clair que la relation RI est symétrique ; elle est réflexive à cause de l'axiome A4 • Voyons la transitivité : si x, y et z sont des éléments de rot et s'il existe des entiers n, rn, p et q tels que : rot 1= x :!: n '::!. y :!: m. et rot 1= y .:! Q '::!. z :!: g, ; alors, parce que l'addition est associative et commutative dans tous les modèles de .9 : rot 1= x :!: 1l...±...R '::!. z :!: m...±.g.
b) Par hypothèse, on a des entiers n, rn, pet q tels que : rot 1= a :!: n '::!. a1 :!: m. et rot 1= b :!: Q '::!. b1 :!: g,
et, parce que l'addition est associative et commutative dans tout modèle de .9: rot 1= (a:!: b):!: n...±....Q '::!.(a':!: b'):!: m...±.g.
c) La réflexivité est évidente. Montrons la transitivité : on suppose donc que x, y et z sont dans E et que xRy et yRz. Il existe donc a dans x, b et b' dans y et c dans z tels que rot 1= a
~
b 1\ b'
~
c ; de plus, il existe n dans IN tel que rot 1= b ~ b'
+ n.
On en déduit : rot 1= a ~ c + n.
et donc que xRz, puisque c + n est aussi dans z. Voyons maintenant que Rest antisymétrique: on suppose qu'il y a des points a et a' dans x E E et b et b' dans y E E tels que : rot 1= a ~ b et rot 1= b' ~ a' .
Il s'agit de montrer que x= y. On traduit les hypothèses : il existe u et v dans rot et des entiers n, rn, pet q tels que : rot 1= a :!: u '::!. b ; rot 1= b' :!: v '::!.a'
;
rot 1= a :!: n'::!. a':!: m.
; rot 1= b:!: Q '::!. b' :!: Q. .
Tout ceci, en utilisant l'associativité et la commutativité de l'addition, donne: rot 1= a :!: u :!: v :!: JL±..m. '::!. a :!: .n._±.g, .
De la propriété (19) de 1.4, on déduit que rot 1= u ~ n.±Q. , et parce que IN est un segment initial de rot, u E IN et a RI b . Ainsi, x= y. L'ordre R est bien total : si x et y sont des éléments de E, si a Ex et b E y, alors rot 1= a ~ bou rot 1= b ~a, puisque l'ordre~ est total dans rot; on a donc xRy ou yRx.
Les éléments standards sont tous équivalents, et la classe qu'ils forment est inférieure à toutes les autres. En revanche, si a est un élément non standard, a et a + a ne sont pas équivalents, et la classe de a + a est strictement supérieure à celle de a.
269
Chapitre 6 Pour montrer que Rest un ordre dense sur E, on montre d'abord que:
9' 1-- Vvo3v 1(v1:!: v1 ~ vo V v1:!: v1 ~ vo + 1) , ce qui se fait sans difficulté par induction sur vo. Si a et b sont des éléments de rot, si on suppose par exemple que a ~ b, et si c est l'élément tel que c + c =a + b ou c + c =a + b + 1, alors on voit facilement que cR~ a si et seulement si cR~ b. Il en résulte que, s'il est faux que a R~ b, alors, strictement comprise entre la classe de a et celle de b, il y a la classe de c.
3.
On démontre par récurrence sur n que, si {bo,b 17 ••• ,bn) est une suite d'entiers
premiers entre eux deux à deux et si ( ao,a17 ••• ,an) est une autre suite de même longueur, alors il existe a E IN tel que, pour tout i compris entre 0 et n, on ait : a congru à ai modulo bi· Pour n = 0, il suffit de prendre a= ao. Voyons encore le cas n = 1. Puisque b0 et b1 sont premiers entre eux, le théorème de Bewut nous dit qu'il existe des éléments 7o et 71 dans 71. tels que : ce qui, en multipliant par a 1 -
ao,
7obo + 11b1 = 1, donne
( a1 - ao)7obo + ao = ( ao- a1)11b1 + a1, et on obtient un élément rn de 71., à savoir ( a 1 - ao)7obo + ao, congru à ao modulo b0 et à a 1 modulo b1. Pour avoir un élément dans IN possédant le même propriété, il suffit de lui ajouter kb 0b1 pour un entier k assez grand. Voyons maintenant le cas n + 1. Par hypothèse de récurrence, il existe un entier c tel que, pour tout i compris entre 0 et n, on ait : c congru à ai modulo bi· Mais bn+l et b0b1... bn sont aussi premiers entre eux. On vient donc de voir qu'il existe a E IN tel que a soit congru à c modulo bob 1... bn et à an+l modulo bn+l· Cela implique bien que, pour tout i compris entre 0 et n + 1, a est congru à ai modulo bi. 4. Supposons que la formule F[vo,v 1,... ,vp) représente une fonction totale f de INP dans IN. Alors (voir 4 .4) : x= f(n 11 n2,... ,np) si et seulement si il existe y tel que(# F[x,nhn 2,... ,np),y) E Dem 0 . Considérons alors la fonction g: g(nhn2, ... ,np) =l'Y((# F[.B~(y),nhn2,···,np],,8~(y)) E Demo). Elle est totale, récursive, et f(n 11 n2,. .. ,np) = .8~(g(n 1 ,n2, ... ,np)). 5.
Il s'agit d'une technique connue sous le nom de méthode du pléonasme: on
énumère T = { Fn ; n E IN } de telle sorte que la fonction
>.n.# Fn soit une fonction
récursive totale (voir 4.5 au chapitre 5). Pour chaque nE IN, on appelle Gn la formule F1 A F2 A ... A Fn . Posons T'= { Gn ; n E IN } . Alors il est clair que T et T' sont des
270
Solutions des exercices
théories équivalentes et que la fonction >.n.# Gn est récursive totale et strictement croissante, ce qui implique que T' est une théorie récursive (exercice 12 du chapitre 5). 6.
Il faut d'abord se persuader que cette question a un sens, c'est-à-dire vérifier que le grand théorème de Fermat s'exprime par une formule de ..t0 , ce qui n'est pas le cas a priori à cause des exponentielles xt, etc. On commence donc par éliminer ces exponentielles en utilisant des formules qui les représentent. Soit donc F[v 0 ,v 1,v 2] une formule E telle que, pour tous entiers n, rn et p, !/10 1- F[n,!!l,Q] si et seulement si n =rn P. On remarque alors que la négation du grand théorème de Fermat s'exprime dans le langage ..t0 par la formule close E suivante : G = 3vo3v13v23v33v43vs3v6(v2 ~ 1 A v4 ~ 1 A v5 ~ 1 A vo ~ 3 A F[v17v2,vo] A F[v3,v 4,vo] A F[vs,v6,vo] A v1 + v3 ~vs). Si G est vraie dans IN, alors elle est démontrable dans !/10 (proposition 4.6), et le grand théorème de Fermat est réfutable dans !/10 . 7. a) Il est bien clair que si IN 1= 3v1'Dml[li,v1], alors il existe un entier n tel que IN 1= 'Dml[#F,n], et donc tel que (#F,n) E Dem. Il en résulte que la formule Fest vraiment démontrable dans !fJ, et donc qu'elle est vraie dans IN. b) La preuve du second théorème d'incomplétude fournit un modèle
rot de
!fJ et
une formule close F tels que rot 1= 3v{Dan[li,v1] A 3v2'Dan[U,v 2]. Ceci montre que b) ne peut pas être vérifiée en même temps pour F et pour -,F. c) On suppose que c) est vrai pour toute formule close F et on en déduit une contradiction. Puisque, dans IN, F est vraie ou -,F est vraie, !fJ démontre F ou démontre ,F, autrement dit !fJ est une théorie complète : on sait que cela est faux. d) Evidemment faux car d) implique c). 8.
On peut prendre pour formule F[v0] la formule 'Dan[#O ~ 1,vo], et pour H la
formule G[vo,vh ... ,vn] <=F> 'Dan[#ll ~ 1,vo].
9.
Supposons que : !fJ 1- 3v0'Dan[li,vo] =::) F ; alors, par contraposition : !fJ 1- -,F =::) -,3vo'Dan[li,vo] ;
soit encore : !fJ U { -,F } 1- -,3vo'Dan[il,vo].
Or -,3v 0'Dan[# F,v 0] veut dire que F n'est pas démontrable dans !fJ, autrement dit que !fJ U { -,F} est une théorie cohérente. On a donc : !fJ U { ,F} 1- Coh(!fJ U { ,F }),
ce qui implique, d'après le second théorème d'incomplétude de Gôdel, que !fJ U { -,F } n'est pas une théorie cohérente, donc que !fJ 1- F.
Chapitre 6
271
10. a) On va montrer par induction sur la hauteur de la formule G[v 1,v2,... ,vp] que, pour tous éléments aha 2,... ,ap deN, on a: rot F G[aha2, ... ,ap] si et seulement si 91 F G[aha 2,... ,ap]. C'est vrai si G est une formule atomique parce que est une sous-structure de rot. Les connecteurs propositionnels n'offrent guère de difficulté. Voyons à titre d'exemple le cas de 1\; on suppose donc que G[vhv2,... ,vp] = G1 1\ G2 et que aha 2,... ,ap sont des points de N. Alors :
m
rot F G[a 1,a 2,... ,ap) si et seulement si rot F G1[aha 2,... ,ap) et rot F G2[aha 2,... ,ap]. Or par hypothèse d'induction:
rot F G1[a 1,a2, ... ,ap] si et seulement si 91 F G1[a 1,a 2,... ,ap], rot F G2[aha 2,... ,ap] si et seulement si 91 F G2[aha 2,... ,ap] ; et cela montre bien que : rot F G[a 1,a 2,... ,ap] si et seulement si 91 F G[aha 2,... ,a p). Occupons-nous maintenant du quantificateur existentiel. On va supposer que
G[v 1,v2,... ,vp] = 3voF[vo,vh···,vp], et soient a1,a 2,... ,ap des points de N. Si on suppose que 91 F G[a 11 a2,... ,ap] alors il existe un point ao de N tel que 91 F F[ao,a 1, ... ,ap] et par hypothèse d'induction rot F F[a 0 ,a 1, ... ,ap] et donc rot F G[aha 2,... ,ap]. Réciproquement, supposons que les points a11 a2,... ,ap sont dans N et qu'il existe a0 dans M tel que rot F F[a 0 ,a 1, ... ,ap]. Considérons la formule: H[vo,vh···,vp] = (-dvp. 1F[vp+t,v 1, ... ,vp] ~ vo ~ ~) 1\ (3vp+ 1F[vp. 1,v 1, ... ,vp) ~ (F[vo,v 1, ... ,vp) 1\ Vvp+l < vo •F[vp. 1,v 1, ... ,vp])) . La formule H définit donc la fonction f de MP dans M suivante : • s'il existe au moins un élément xE M tel que rot F F[x,a 1,a 2,... ,ap], alors f(a 1,a 2,... ,ap) est le plus petit des éléments satisfaisant cette formule (qui existe à cause du schéma d'induction). • sinon, f(a 1,a 2,... ,ap) =O. Par hypothèse (parce que 91 est clos pour les fonctions définissables) f(a 1,a 2,... ,ap) appartient à N. De la définition de H, il découle que rot F F[f(a 1,a 2,... ,ap),a 11 a2,... ,ap] et par hypothèse d'induction 91 F F[f(aha2, ... ,ap),aha2, ... ,ap) et donc 91 F G[a 1,a 2,... ,ap) . b) Si X1 et X2 sont des sous-ensembles de M définissables respectivement par les formules F1[vo] et F2[vo], alors X1 n X2 est définissable par la formule F1 1\ F2. On a des faits analogues pour la réunion et le complémentaire, ce qui montre bien que les sous-ensembles définissables de M forment une sous-algèbre de Boole de l'ensemble des parties de M. Si f et g sont des fonctions définissables respectivement par G1[v0 ,v 1] et G2[v 0 ,v 1], alors:
{a E M; f(a) =g(a)} = {a E M; m1F 3v0 (G 1[v 0,a] qui est bien un ensemble définissable.
1\
G2[v 0 ,a]) }.
272
Solutions des exercices
c) Supposons encore que f et g sont des fonctions définissables respectivement par G1[vo,v1) et G2[vo,v 1) ; prenons par exemple f + g; elle est définissable par la formule: 3v23v3(vo ~ v2 + v3 A G1[v2,v 1) A G2[v3,v1]). On conclut tout aussi aisément pour f x g et Sf. d) Soient f, g et h dans :Y. Alors : {a E M ; f(a) = g(a) } n {a E M ; g(a) = h(a) } ç {a E M ; f(a) = h(a) } , ce qui montre que, si les deux premiers ensembles appartiennent à U , le troisième appartient aussi à U : la relation R~ est donc transitive ; la symétrie et la réflexivité sont évidentes. De même: {a E M; f(a) =f'(a)} n {a E M; g(a) =g'(a)} ç {a E M; (f + g)(a) =(f' + g')(a) }, et donc, si f R~ f' et g R~ g', alors f + g R~ f' + g'. On peut faire le même raisonnement pour le successeur et le produit. e) Il s'agit simplement de vérifier que, si a et b sont des éléments de M, alors : a+b=a+l>,axb=~ etSa=Si, ce qui est évident. f) On raisonne par induction sur la complexité de F. On va, à titre d'exemple traiter le cas de -, et de 3. • -, : on suppose que F[vhv2,... ,vp) = -,G[v1,v 2,... ,vp), et que, pour tous f1,f2,.. .fp de :Y, :Y fU F G(f1/U ,f2/U , ... ,fp/'11] si et seulement si {a E M ; rotFG[f1(a ),f2(a ), ... ,fp(a )]} EU. Mais on voit que : :Y/U F G[f1/U h/'11 ,... ,fp/'11] si et seulement si :Y/U Il F[f1/U ,f2/U ,... ,fp/'11], et, parce que U est un ultrafiltre : {a E M ; rot F G(f1{a )h(a ), ... ,fp(a ))} E U si et seulement si {a E M ; rot F F[f1(a),f2{a), ... ,fp(a)]} ~ U. • 3: on suppose maintenant que F[v1,v 2,... ,vp) = 3v0 G[v0 ,vh···,vp) et que G satisfait l'hypothèse d'induction. Supposons d'abord que: :Yfu F F[f1/'lt ,f2/'lt ,... ,fp/'11). Il existe donc une fonction f0 E :Y telle que :Y fU F G(f0 /U ,f1/U ,... ,fp/'11], et, par hypothèse d'induction {a E M; rolF G(f0 (a),f1(a), ... ,fp(a)]} E 'li, d'où il découle que {a E M; rolF F(f1(a),f2(a), ... ,fp(a))} EU. Réciproquement, supposons que A= {a E M ; rot F F(f1(a)h(a), ... ,fp(a)] } E U . Considérons encore (voir a)) la formule H(vo,v1,... ,vp) : (3vp+1G(vp+1,v1,v2, ... ,vp) ==:) {G[vo,v1,... ,vp) A Vvp+2 < vo -,G(vp+2,vl,v2,···,vp])) A (-,3vp+1G(vp+hvhv2,···,vp) ==:) vo ~ D) . On peut alors définir une application f0 de M dans M par: pour tout a E M, fo{a) est l'unique élément de M tel que rolF H(f0(a),f1(a), ... ,fp(a)) et on voit que pour tout a E A, on a:
273
Chapitre 6
!Dlt= G[f0(a),f1(a), ... ,fp(a)), et donc, par hypothèse d'induction,
:Y/U t= G(fo/U ,f1/U ,... ,fp/U) et :Y/U t= F(f1/U ,f2/U ,... ,fp/U). Soient maintenant d1,d2, ... ,dp des points de M et ah a2, ... ,ap les fonctions constantes correspondantes. Alors {a E M : !Dl t= F[d1(a),a2(a), ... ,ap(a)] } est égal à M tout entier si !Dl t= F(d 1,d 2, ... ,dp) et est vide sinon. Donc : {a E M :!Dl t= F[d1(a),a2(a), ... ,ap(a)] } E U si et seulement si !Dl t= F(d 17 d2,... ,dp), ce qui veut exactement dire que 11application de !Dl dans :Y1u qui à a associe
a est
élémentaire. g) Soit F[v0,v1,w0 ,w 1,... ,wp) une formule de ..i'o. Notons : FoncF[wo,wh ... ,wp) = Vvo3!v 1 F[vo,vhwo,wh ... ,wp), qui est la formule qui exprime que F, lorsqu'on a substitué des paramètres aux variables Wï,
définit une fonction. On doit montrer que:
!Dl t= VwoVw1... Vwp(FoncF[wo,w 17 ... ,wp)
=::::}
Vv23v3VvoVv1((vo < v2 A F[vo,v 17 wo,w 17 ... ,wp])
=::::} vl < v3)). Puisque !Dl est une extension élémentaire de IN, il suffit de voir que cette même formule
est vraie dans IN. Or, si pour des entiers mo, m17 ... , mp, la formule F[v0 ,v1,m 0 ,m 1,. .. ,mp) définit, sur IN, une fonction, disons f, et si n2 est un entier, il existe bien un entier n3, à savoir sup{ f(x)
+1;x<
n2 } tel que : IN ~ VvoVv 1((vo < n2 A F[vo,vl,mo,ml,. .. ,mp]) =::::} v1 < n3).
h) On appelle encore ~ l'algèbre de Boole des sous-ensembles de M définissables à paramètres dans M, et on considère le sous-ensemble suivant de ~: { (a,b) ; a E IN, b E M -IN } (où [a,b) désigne l'ensemble des points de M compris entre a et b). Cet ensemble est clos par intersection finie et ne contient pas l'ensemble vide. On en déduit qu'il existe un ultrafiltre U de ~ qui le contient. Appelons m la structure .:?/ U construite ci -dessus, considérée comme extension élémentaire de !Dl. On va montrer qu'elle satisfait la propriété désirée. Soit f/U E m. Prenons un élément quelconque c non standard de rot On sait, d'après la question précédente, qu'il existe d E M, tel que si xE M et x< c, alors f(x) < d. Appelons a la fonction constante égale à d et rappelons que l'on a identifié
afU
Emet d. Alors: [O,c] Ç {a E M ; f(a) < a(a) },
et, comme [O,c] E U, on a bien, d'après f), f/U < d. 11. a) Appelons H la vérifiée par If. Si T était récursif ; or cet ensemble est un modèle) contenant
conjonction des sept axiomes de .90 , et soit T une théorie décidable, alors l'ensemble { # F ; #( H =::::} F) E Th(T) } serait est exactement Th(T U .90) qui est une théorie cohérente (IN en .90 , ce qui contredit le premier théorème de Gôdel.
274
Solutions des exercices
b) On va montrer comment construire la formule F* à partir de F. Le procédé que l'on va décrire est effectif, et il n'y a aucune difficulté à montrer l'existence d'une fonction récursive primitive a qui, au numéro de Godel de F, fait correspondre celui de F*. Cette construction se fait par induction sur la hauteur de F. Il faut commencer par les formules atomiques, qui dans $ 0 , sont de la forme t ~ s (t et s termes de $ 0 ). On se débarrasse d'abord du cas où t et s sont des termes simples, c'est-à-dire où F est de l'une des formes suivantes :
• • • • •
F =Vi~!!, F =vi~ Vj, F =Vi~ ,Svj, F =vi~ Vj.! vk, F =Vi~ Vj ~ Vk,
AG0 [vj] AVi~ Vj ; A Go(vj] A G2[vi,Vj] ; alors A Go(vj] A Go[vk] A GJ[Vï,Vj,vk] ; alors A Go(vj] A Go[vk] Il. G4 [vi,Vj,Vk]· On s'occupe ensuite des formules de la forme vi= t où test un terme. Cela se fait par induction sur t. A titre d'exemple, traitons le cas où F =Vi~ t 1 .! t 2, en supposant que l'on ait déjà construit les formules (vi ~ t 1)* et (vi ~ t 2)*. On choisit des variables w0 et w1 qui n'apparaissent pas dans Vi, t 11 t 2. On pose: F* = 3wo3wl((wo ~ t 1)* Il. (w 1 ~ t 2)* Il. (vi~ wo.! w1)*). On termine les formules atomiques en posant (t 1 ~ t 2)* = 3wo((wo ~ t 1)* A (wo ~ t 2)*), alors alors
F* = G0 [vi] F* = Go[vi] F* = Go[vi] F* = Go[vi]
où, encore une fois, w0 est une variable n'apparaissant ni dans t 1 ni dans t 2 . Ensuite, on fait une induction sans problème sur la hauteur de F :
• • • • • •
(-.F)* = -.F* ; (F 1 A F2)* = F1* A F2* ; ( F1 V F2) * = F1* V F2* ; (F1 ===} F2)* = F1* ===} F2* ; (F 1 {=::) F2)* = F1* {=::) F2* ; (3wF[w])* = 3w 0 (G 0 [w 0] A F[w 0]*) où w0 est une variable qui n'apparaît ni dans
Go ni dans F; • (VwF[w])* =Vw 0 (G 0 [w 0] ===} F[w 0]*) dans G0 ni dans F.
où w0 est une variable qui n'apparaît ni
c) Il est évident que 1) implique 2), et que 3) implique 1). Il reste donc à voir que 2) implique 3). On va utiliser le théorème de complétude et montrer, sous la condition r- ~ G, que T U { -.G* } n'a pas de modèle : supposons le contraire et soit 91 la $ 0 -structure définissable dans un modèle rot de TU { -.G* }. Puisque rot est un modèle de T, 91 est (d'après b)) un modèle der-, donc de G; puisque rot est un modèle de -.G*, 91 est un modèle de -.G, ce qui est impossible. d) On va d'abord montrer que toute théorie cohérente dans :t contenant T 0 U { H* } est indécidable (rappelons que H est la conjonction des axiomes de .9' 0 ). En effet, soit Tune telle théorie, et, comme précédemment, considérons :
Chapitre 6
275
T- = { F ; Fest une formule close de $ 0 et T ~ F* }. C'est une théorie cohérente contenant .9'0 , donc indécidable. Or, si T était décidable, Tle serait aussi car T- ~ F si et seulement si T ~ F* (et le passage de F à F* est effectif). Supposons maintenant que IN soit définissable dans rot et soit T une théorie dans 1 dont rot est modèle. Il s'agit de montrer que T est indécidable. Soit K la conjonction des formules de T 0 U { H*} (c'est une théorie finie). Alors, on voit que rot est un modèle de T'= TU { K }, qui est donc cohérente, et d'après ce que nous avons vu, non décidable. Or, pour toute formule F de 2, T'~ F si et seulement si T ce qui montre que T non plus n'est pas décidable.
~
K ===) F,
e) Il n'est pas difficile de définir IN dans "U.; par exemple avec les formules suivantes:
• Go(vo) = 3v13v23v33v..(vo ~ ((v1 ~ v1).:!: (v2 ~ v2).:!: (v3 ~ v3).:!: (v4 ~ v4)) ; (c'est ici que l'on se sert du théorème de Lagrange)
• • • •
G1(vo] = vo ~ .Q ; G2(vo,v1] = Go(vo] AGo(vl] A 3v2Vv3(v2 ~ v3 ~ v3 Avo ~ v1.:!: v2) ; G3(vo,v1,v2] = Go(vo] A Go(vl] AGo(v2] Avo ~ v1.:!: v2; G4(vo,v1,v2] = Go(vo] A Go(vl] AGo(v2] Avo ~ v1 ~ v2.
On en déduit que "U. est fortement indécidable et que toute théorie dans 1 dont "U. est modèle est indécidable ; par exemple, la théorie des anneaux, celle des anneaux commutatifs, etc. f) On s'aperçoit tout d'abord que, si x est un élément de M qui appartient à IN
x
IN,
disons x= (n,rn), il y a exactement deux éléments y de M, à savoir rn et (n + rn,n ·rn) tels que (x,y) E Rmt, tandis que, si xE IN, l'ensemble des éléments y de M tels que (x,y) E Rmt est infini ; cela permet de définir IN dans rot par la formule :
Go(vo]
= 3v13v23v3(Rvov1 A Rvov2 A Rvov3 A -.vl ~ v2 A-.v2 ~ v3 A -.v3 ~ v1).
L'addition et la multiplication sont alors faciles à définir : G3(vo,v1,v2] = Go(vo] AGo(vl] AGo(v2] A3v33v4(Rv1v3A Rv3v2A Rv3v4A Rvov4) ; G4(vo,v1,v2] = Go(vo] AGo(vl] AGo(v2] A3v33v4(Rv1v3A Rv3v2A Rv3v4A Rv4vo) . Ensuite, le zéro et le un se définissent comme les éléments neutres de l'addition et de la multiplication respectivement, et la fonction successeur se définit à l'aide de l'addition. On en déduit que rot est fortement indécidable et que la théorie vide dans le langage ne comportant qu'un seul symbole de prédicat binaire est indécidable. g) Puisqu'on dispose de l'addition, on peut définir l'ordre sur les entiers, le zéro, l'élément 1 et la fonction successeur. Il suffit de montrer que la multiplication est définissable dans rot. On commence par définir le ppcrn de deux entiers par la formule :
Gs(vo,vhv2]
= Dv1vo A Dv2vo AVv3((Dv1v3 A Dv2v3) ===) Dvov3).
276
Solutions des exercices
Or le ppcm de y et de y+ 1 est toujours y o(y + 1), ce qui fait que la relation x = y o(y + 1) est définie par la formule : G&[vo,v,] = Gs[vo,vhvl.:!: 1]. On remarque que, pour tous x et y dans IN, on a : {x+ y)o(x +y+ 1) =xo{x + 1) + yo(y + 1) + 2xy, et on peut donc poser : Vl4[vo,vhv2] = 3v33v43vs3v6(v3 ~ vo.:!: vo A G&[v,.,vl.:!: v2] A G&[vs,v,] A G6[v&,v2] A v,.~ {vs.:!: V&) .:!: v3). 12. a) A l'aide d'une récurrence sans problème sur la hauteur de F : cela revient à montrer que la classe des ensembles récursivement énumérables est close par conjonction, disjonction, quantification existentielle et quantification universelle bornée.
b) Soit f une fonction récursive de IN dans IN; d'après le théorème de représentation bis (4.6), il existe une formule sigma F[v0,v 1] représentant f. Réciproquement, si: Graph{f) = { (n,f(n)) ; n E IN } = { (n,rn); IN t= F[rn,n] } = { {n,rn) ; !l'o 1- F[.m.,n] }, où F est une formule E, alors , par a), Graph{f) est récursivement énumérable. Or f est une fonction totale, donc : (n,rn) ~ Graph{f) si et seulement si il existe m' *m tel que {n,m') E Graph{f), ce qui fait que le complémentaire de Graph{f) est aussi récursivement énumérable, et que Graph{f) est récursif (chapitre 5, 4. 2). Ainsi, fest récursive (chapitre 5, exercice 10). c) Si F[v0 ,v1] est une formuleE, alors pour tous entiers net rn, IN t= F[m,n] si et seulement si il existe une démonstration de F[m.,n] dans !1'0 (proposition 4. 6) ; a fortiori IN t= F[rn,n] si et seulement si il existe une démonstration de F[m.,n] dans !1'. Soit a la fonction à trois variables définie de la façon suivante : • Si a est le numéro de Gôdel d'une formule E à deux variables libres, disons F[v 0,v 1], alors a{a,m,n) = #F[m.,n] ; • Sinon, a(a,rn,n) =0. Cette fonction a est récursive primitive et, si a est le numéro de Gôdel de la formule F, alors, pour tous entiers n et rn, on a : IN t= F[m,n] si et seulement si il existe bE IN tel que (a(a,m,n),b) E Dem. On peut alors définir la fonction partielle k : k(a,n) =l'Y (a(a,/l~{y),n),p~(y)) E Dem, et poser: h{a,n) = P~{k{a,n)). d) Le fait que g soit récursive n'est pas difficile à voir : elle est définie par cas et les relations : a est le numéro de Gôdel d'une formule E, ou b est le numéro de Gôdel d'une démonstration dans !J' de la formule, etc. sont récursives. Montrons qu'elle est totale: soient a, b et n des entiers, et on suppose que a est le numéro de Gôdel d'une formule E, disons F[v0,v 1] et que b est le numéro de Gôdel d'une démonstration dans !J'
Chapitre 6
277
de Vv13voF[vo,v1). Il s'agit de se rendre compte qu'il existe rn E IN telle que .9 1-- F[m,n.). Mais, puisque IN est un modèle de .9, on a : IN 1= Vv13voF[vo,v1], et donc, il existe un entier rn tel que IN 1= F[m,n.] ; or F[m,n.] est une formule :E, d'où (proposition 4. 6) : .9 t- F[m ,n.). e) L'ensemble de fonctions : ~ = { .,\n.g(a,b,n) ; a et b dans IN } est, d'après ce qui précède, exactement égal à l'ensemble de toutes les fonctions récursives prouvablement totales. On applique alors un argument diagonal : la fonction .,\n.g(/l~(n),.8~(n),n) + 1 est récursive totale mais ne peut pas appartenir à é.
13. a) Si { F11 F2 , ••• ,Fn } est un ensemble fini de formules closes, .9 U { F11 F2, ••• ,Fn} est une théorie récursive. Si elle est cohérente, elle ne peut pas être complète, d'après le premier théorème de Gôdel (4 . 3). b) On fait la construction par récurrence sur la longueur de 5 : en supposant que 5 appartienne à { 0,1 }", et en supposant que les formules F0, F >, F ,sm h ... , Fcs) ,F ,sm> ,F ,sm ,···,s
soit une théorie cohérente, on va construire les formules F ,su> ,···,s
F ,sm ,···,s > ,F ,sm> ,F ,su> ,···,s
=G
et F(S(O) ,s(1) ····,s
= ·G.
c) Pour chaque u dans { 0,1 }N, posons : Ta= .9 U { F0 ,F (a(O)) ,F (a(O) ,a(1)) ,... , F (a(O) ,a(1) ,···,a(n-1)) ... }. Chaque sous-ensemble fini de Ta est inclus dans un ensemble de la forme : .9 U { F0 ,Fsm> ,F ,sU>> ,... ,F ,sU> ,···,s
avec n E IN et sE { 0,1 }",et est donc cohérent. Il en résulte, par le théorème de finitude, que Ta est une théorie cohérente. Soient maintenant u et r deux éléments distincts de {0,1 }N, et soit n le plus petit des entiers x tels que u{x) r{x). Pour fixer les idées, supposons que u{n) = 0 et r{n) = 1. Alors la formule F <-r
*
278
Solutions des exercices
14. a) Si mt est dénombrable, il n'y a qu'un nombre dénombrable de formules avec paramètres dans mt, et donc pas plus de sous-ensembles de IN définissables dans mt. b) Il existe une formule F[v0 ,v 1] de .2'0 , telle que,·pour tous entiers net rn, IN 1= F[n,m] si et seulement si le (n + 1)-ème nombre premier divise m. Soit X un sous-ensemble de IN. Ajoutons au langage .2'0 un nouveau symbole de constante c, et considérons la théorie T x suivante dans le langage ainsi obtenu : T x= { G[n.o,fl.h ... ,n.p) ; p est un entier, G[v 0 ,v 11 ... ,vp) est une formule de .2'0 , n0 , n1, ... ,np sont des entiers et IN 1= G[n.o,n.1, ... ,n.p) } U { F[n,c] ; n EX } U { ·F[n,c] ; n ~X }. Cette théorie est cohérente, d'après le théorème de finitude : on remarque que toute partie finie de T x est incluse dans un ensemble de la forme : T y= { G(n.o,fl.h ... ,n.p) ; p est un entier, G[vo,v 11 ... ,vp) est une formule de .2'0 , n0 , n1, ... ,np sont des entiers et IN 1= G[n.0 ,n.1, ... ,n.p) } U { F[n,c] ; n E Y} U { •F[n,c] ; n ~Y }, où Y est une partie finie de X. La structure IN avec la constante c interprétée par :
rJ
~k),
où ~k) est le (k + 1)-ème nombre premier, est un modèle de T y. Il en résulte (chapitre 8, 1.5) queT x a un modèle dénombrable, que l'on appellera mt. On peut même considérer (chapitre 8, 2 .3) que ce modèle est une extension élémentaire de IN. Par abus de langage, appelons c l'interprétation de c dans mt. Alors : X= { n E IN ; mt 1= F[n,c] }, ce qui montre que X est définissable dans rot. c) Pour chaque extension élémentaire dénombrable rot de IN, considérons : S(rot) = { X ; X Ç IN et X est définissable dans rot }. On a vu en a) que S(rot) est un sous-ensemble dénombrable de .9J(IN), et en b) que : ~(IN)= U { S(rot) ; rot >-IN et rot dénombrable }. Si À est la cardinalité de l'ensemble { S(rot) ; rot>- IN et rot dénombrable }, alors
À x N0 =~'d'où il suit que À=~. Or, si rot et m sont deux extensions élémentaires de IN et si fest un isomorphisme de mt sur m, alors l'image par f d'un sous-ensemble de IN définissable dans rot est définissable dans m (au moyen de la même formule). Donc si S(rot) est différent de S(m), alors rot et m ne sont certainement pas isomorphes : il y a
donc~ extensions élémentaires dénombrables de IN deux à deux non isomorphes. 15. a) Epiménides ne peut pas dire la vérité, car alors, étant crétois, il devrait mentir. Mais s'il ment, il est faux que les crétois sont menteurs, et donc il doit dire la vérité. En fait, ce raisonnement n'est pas difficile à mettre en défaut ; d'abord parce qu'un menteur peut dire occasionnellement la vérité. Ensuite, il est possible qu'Epiménides mente, la vérité étant que certains crétois, dont lui-même, sont menteurs. b) Ce barbier est une femme ; sinon, on ne pourrait pas répondre à la question : «ce barbier se rase-t-il lui-même ? » sans aboutir à une contradiction.
Chapitre 7
279
CHAPITRE 7
1. a) Pour cette question, on écrira Eau lieu de E'~'" Vérifions les axiomes de zF-. • Extensionnalité : soient x et y deux entiers tels que, pour tout entier z, on ait z E x si et seulement si z E y, c'est-à-dire que z E rp(x) si et seulement si z E rp(y) ; on en déduit que
't'(x)= rp(y), et, parce que cp est bijective, que x= y. • Paire : soient x et y deux entiers ; on cherche un entier z tel que l'ensemble (au sens intuitif) des entiers t tels que
tE
z (ou encore tE rp(z)) soit la paire (au sens intuitif)
{x,y}; on doit donc avoir rp(z) = {x,y}, ce qui définit un unique entier z, puisque cp est une bijection. • Réunion: soit x un entier ; posons z =
U
h.«p(x)
rp(t) et y= cp-1(z) ; on voit que, pour tout
entier u, u E rp{y) si et seulement si il existe un entier t tel que t E rp(x) et u E rp(t) ; cela signifie que, pour tout u, u E y si et seulement si il existe
exprimé avec la relation
E,
t tel que
on voit donc que y est, dans l'univers
tE
x et u Et
;
éléments de x. • Parties : soit x un entier ; on cherche un entier y tel que, pour tout entier z, z E rp(y) si et seulement si quel que soit t appartenant à rp(z), t appartient à rp(x) ; autrement dit, pour tout z, z E rp(y) si et seulement si rp(z) E ~('t'(x)) ; on voit facilement que ~( rp(x)) est un sous-ensemble fini de W (ensemble des parties finies de IN) ; son image réciproque par la bijection cp est donc une partie finie de IN, donc un élément de W, lequel admet un unique antécédent par cp; l'ensemble cherché est donc: y= cp- 1 (V)-1 (~(rp(x)))). • Remplacement : soient x un entier et F[v0 ,v 1) une formule du langage de la théorie des ensembles, fonctionnelle en v0 (dans l'univers
E
x et
>
1= F[n,rn) (il s'agit d'une
fonction partielle parce que F est fonctionnelle) ; on voit alors facilement qu'en posant y=cp-1(ll(rp(x))), on obtient l'ensemble cherché (on aura remarqué que l'ensemble
n( 't'(x)), image directe par la fonction partielle h de l'ensemble fini rp(x), est bien une partie finie de IN, et admet donc un (unique) antécédent par cp). • Négation de l'axiome de l'infini: on raisonne par l'absurde et on suppose que
> 1= «fest une application injective non surjective de a dans lui même» ;
on voit facilement que l'ensemble : {(x,y) E rp(a) 2 ;
> 1= «y =f(x)»}
>
280
Solutions des exercices
est une application injective non surjective de 'P(a) dans lui-même, ce qui est impossible puisque 'l'( a) est un ensemble fini. On suppose maintenant que, pour tous entiers x et y, xE 'P(y) implique x< y. Cela implique en particulier que '1'(0) est l'ensemble vide. • Axiome de fondation: on se donne un entier x> 0 (donc distinct de l'ensemble vide dans
• e<0> = 1; • e({o}) =o.
e
L'application est encore bijective de W sur IN, et, d'après la question a), ~-1 est un modèle de zF-. En revanche, il ne satisfait pas AF puisque 0 E(-1 0 (voir remarque 5.1). 2. Soient x un ordinal, y un sous-ensemble de x, transitif et distinct de x. D'après la proposition 2.3 et le corollaire 2.5, y, qui est un ensemble transitif d'ordinaux, est un ordinal ; y Ç x signifie donc y ~ x, c'est-à-dire y =x ou y E x. La première éventualité étant exclue par hypothèse, on a nécessairement y E x. Réciproquement, soit x un ensemble de la classe On'. Il y a certainement des ordinaux qui ne sont pas inclus dans x (sinon, l'axiome de compréhension appliqué à l'ensemble ~(x) ferait de la classe des ordinaux un ensemble, ce qu'elle n'est pas). Désignons par fJ le premier des ordinaux non inclus dans x. On peut alors choisir un élément a E fJ (qui sera évidemment un ordinal) tel que a~ x; a étant inférieur à {J, on a, par définition de {J, a Ç x ; de plus, a est un ensemble transitif (c'est un ordinal). Si a était distinct de x, on concluerait, parce que x est dans la classe On', que a Ex, alors que a a été précisément choisi pour qu'il n'en soit pas ainsi. Il en résulte que a= x, ce qui prouve que x est un ordinal. 3. Il suffit de reprendre la seconde démonstration du théorème 4.12 : on considère la classe des bons ordres sur les parties de x (qui est un ensemble par compréhension), puis on applique le schéma de remplacement pour montrer que f(x) est un ensemble. Cet
281
Chapitre 7
ensemble est un ordinal, car c'est manifestement un ensemble transitif d'ordinaux (proposition 2.3 et corollaire 2 .5). Il ne peut pas être subpotent à x, car cela impliquerait r(x) E r(x), ce qui est absurde, s'agissant d'un ordinal. Tout ordinal strictement inférieur à r(x) appartient à r(x), donc est subpotent à x. Il en résulte que r(x) est le plus petit des ordinaux non subpotents à x. N'étant pas lui-même subpotent à x, r(x) ne peut être équipotent à aucun ordinal subpotent à x, donc à aucun ordinal {J < r(x). Cela signifie que r(x) est un cardinal. On remarquera que, dans le théorème 4.12, l'ensemble qui jouait le rôle tenu ici par x était un ordinal, mais que cette propriété n'est nullement intervenue dans la preuve du résultat qui nous intéresse. Si l'univers .U satisfait l'axiome du choix, x, comme n'importe quel ensemble, admet un cardinal (disons A), qui est le plus grand des cardinaux subpotents à x. Comme r(x) est un cardinal, et que c'est le plus petit des ordinaux non subpotents à x, on en conclut immédiatement que r(x) = A+ 4. • AC::::::} a) :soit a un ensemble et soit 1 l'ensemble des parties non vides de a ; considérons la famille (ai).If.1 telle que, pour tout i E 1, ai= i.
n
Par définition de 1, tous les ai sont non vides et, d'après AC, le produit If. ai est 1 alors non vide ; soit x un élément de ce produit : x est une application de 1 dans U ai iE.I telle que, pour tout i E 1, x(i) E ai; en remarquant que V ai =a, on voit donc que x est IE.I une application de 1 dans a telle que, pour toute partie non vide i de a, x(i) E i, c'est-à-dire une fonction de choix sur a. On remarquera qu'il est tout à fait possible que a soit l'ensemble vide et que, dans ce cas, il n'est pas nécessaire d'utiliser AC pour prouver l'existence d'une fonction de choix sur a : l'application vide convient parfaitement {l'ensemble des parties non vides de a est alors l'ensemble vide). • a) ::::::} b) : soient x et y deux ensembles et g une surjection de x sur y. On considère une fonction de choix VJ sur l'ensemble x et on définit une application h de y dans x de la manière suivante: pour chaque tE y, h(t) = cp(g-1({t}). Cette définition est légitime parce que, g étant surjective, pour tout élément t E y, l'image réciproque par g de {t} est une partie non vide de x. Il est immédiat que, pour tout tE y, g(h(t)) = t ; go h est donc bien l'identité sur y. • b)::::::} c) :soit a un ensemble tel que, pour tous éléments x et y distincts appartenant à a, x~ 0 et y~ 0 et x n y= 0 ; posons w =Ua. Par hypothèse, pour chaque élément tE w, il existe un unique élément xE a tel quet Ex. Nous pouvons poser x= g(t), définissant ainsi une application g de w dans a, qui est surjective parce que l'ensemble vide n'appartient pas à a. D'après la condition b), il existe alors une application h de a dans w, telle que go h soit l'identité sur a. Désignons par b l'image de
282
Solutions des exercices
cette application h, et remarquons que, pour tout xE a, h(x) Ex (parce que x= g(h(x))). On en déduit que, pour tout xE a, h(x) E b n x, et, pour tout élément y de a autre que x (et par là-même, d'après l'hypothèse, disjoint de x), h(y) f:. x. Cela prouve que, pour tout élément x de a, h(x) est l'unique élément de b n x: on a trouvé un ensemble dont l'intersection avec chaque élément de a est un singleton. • c) ==::}AC : soit (ai).lE 1 une famille d'ensembles non vides ; posons bi= { i} x ai pour chaque i E 1 et a= {bi ; i E 1}. Les éléments de a sont non vides et deux à deux disjoints ; il existe donc un ensemble b tel que, pour tout i E 1, b n bi soit un singleton. Posons c =V ai ; b est donc un sous-ensemble de 1 x c, et on voit que, pour tout i E 1, il lt.l existe un et un seul élément de b, (l'unique élément de b n bi) dont la première projection est i : b est donc une application dei dans c, et, pour tout i E 1, b(i), qui est la deuxième projection de l'unique élément de b n bï, appartient à ai: il s'agit donc d'un élément du produit de la famille (ai).lE , lequel est en conséquence non vide. 1
AC==> d) : soient a et b deux ensembles. On utilise le théorème de Zermelo (théorème 3.3). On sait qu'il existe des ordinaux a et /Jéquipotents respectivement à a et b. Par ailleurs, le corollaire 2. 5 nous dit que a est inclus dans P(donc a est subpotent à p, ce qui implique que a est subpotent à b) ou Pest inclus dans a (et dans ce cas Pest subpotent à a, et b est subpotent à a). d) ==>AC : cette fois encore, nous allons remplacer AC par le théorème de Zermelo qui lui est équivalent. On considère un ensemble x et on montre qu'il existe au moins un bon ordre sur x. On utilise le cardinal d'Hartog de x, défini dans l'exercice 3, noté r(x), qui est le plus petit ordinal non subpotent à x. Puisque d) est supposé vérifié, il faut donc que ce soit x qui soit subpotent à r(x). Soit cp une injection de x dans l'ordinal f(x). Posons : r={(u,v) Ex x x; cp(u) Ç cp(v)}. Une vérification routinière nous garantit que r est un bon ordre sur x: on n'a fait qu'« importer», par l'intermédiaire de l'injection cp, le bon ordre de l'ordinal r(x). 5. Il est évident que, dans ZF, le théorème de Zermelo (et donc aussi l'axiome du choix) implique chacun des énoncés a), b) et c) (puisque n'importe quel ensemble est alors bien ordonnable). Toujours dans ZF, il va de soi que a) implique b), et on voit facilement que b) implique a) : soit (x,R) un ensemble bien ordonné, et soit a l'unique ordinal isomorphe à (x,R) ; l'isomorphisme entre a et x induit une bijection entre~( a) et ~(x); cette bijection permet de« transférer» un bon ordre sur ~(a) (qui existe d'après b)) pour le transformer en un bon ordre sur ~(x). Montrons également que, dans ZF, c) implique b). Pour cela, il suffit de prouver que, pour tout ordinal a, l'ensemble ~(a) est totalement ordonnable. Posons : r = { (u,v) E ~(a) 2 ; u =v ou le plus petit élément de la différence symétrique u /).v appartient à u }.
Chapitre 7
283
On vérifie sans peine que r est un ordre total sur '.Jl( a). Nous allons montrer pour terminer que, dans ZF + AF, l'énoncé a) implique le théorème de Zermelo (et donc l'axiome du choix). Observons d'abord que, dans ZF + AF, le théorème de Zermelo équivaut à l'énoncé suivant : (•) pour tout ordinal a, 1'ensemble Vn est bien ordonnable. En effet, il est clair que cet énoncé se déduit du théorème de Zermelo. Réciproquement, s'il est satisfait, étant donné un ensemble x quelconque, on peut choisir un ordinal a tel que x E Vn (parce que 1' axiome de fondation est satisfait) ; mais alors x Ç Vn (V n est transitif) et, comme on peut trouver par hypothèse un bon ordre sur Vn, la restriction de ce bon ordre à x sera un bon ordre sur x. Raisonnons alors par l'absurde en supposant que a) soit satisfait en même temps que la négation de (•). On peut alors considérer l'ordinal a minimum tel que Vn ne soit pas bien ordonnable, et on voit que a est nécessairement un ordinal limite (si a= fJ + 1, alors Vn = '.Jl(VtJ), VtJ est bien ordonnable et Vn ne l'est pas, ce qui contredit a)). On sait donc que, pour tout ordinal
fJ < a,
il existe un bon ordre sur VtJ; on va
utiliser a) pour montrer qu'il existe une famille (s({J) ;
fJ < a), où, pour chaque fJ < a,
s({J) est un bon ordre sur VtJ. Pour tout fJ < a, posons : XtJ = {'Y; 'Y est l'ordinal d'un bon ordre sur VtJ} (c'est un ensemble: voir la preuve de 4.12); posons ensuite: X=
U
tJ~n
XtJ et appelons 6 la borne supérieure de X. Soit r un bon ordre sur '.Jl( 5) (il en
existe d'après a)). La famille (s({J) ; fJ
< a) est définie par induction. fJ = 0, il n'y a pas de problème : s({J) =O. • Si fJ est un ordinal limite, alors on sait que VtJ = U V"f· On vérifie alors que la • Si
relation s({J) sur V~ définie comme suit est un bon ordre : 1~ur tous éléments x, y de x s({J) y si et seulement si :
V~'
- rg(x) < rg(y) (voir en 5. 2 la définition de rg) ou
- rg(x)=rg(y), et, en posant -y=rg(x), xs(-y)y (remarquer que 7< {J, et
donc s( 7) est déjà défini). • Si fJ est un ordinal successeur, disons fJ= 1 + 1, appelons~ l'unique ordinal tel que (V"f,s(-y)) soit isomorphe à (~,E), et f"f l'unique isomorphisme de (V"f,s(-y)) sur (~,E).
Il est clair que~~ 6, et f"f induit une bijection g de VtJ (qui est égal à '.Jl(V"f)) sur
'.Jl(~) (qui est inclus dans
'.}1(5)). On définit alors s({J) en transférant l'ordre
rt'.Jl(~) sur
VtJ: pour tous éléments x et y de VtJ, x s(fJ) y si et seulement si g(x) r g(y). Lorsqu'on dispose de la famille (s(fJ) ; fJ < a), on peut définir un bon ordres sur Vn par : pour tous éléments x, y de Vn, x s y si et seulement si : ou
- rg(x) < rg(y) - rg(x) = rg(y), et, en posant fJ= rg(x), x s(f/) y. On aboutit donc à une contradiction.
284 6.
Solutions des exercices
On se référera au théorème de Cantor-Bernstein (4.2) par les initiales CB. (1) =* (2) : soient x un sous-ensemble dénombrable de a, cp une bijection de w sur x, c l'image par cp de l'ensemble des entiers pairs, et b l'image par cp de l'ensemble des entiers impairs ; on définit une application f de a dans a comme suit: la restriction de f à a- x est l'identité, et, pour tout ensemble t Ex, f(t) = cp{2 cp-1(t)) ; on vérifie facilement que fest une bijection de a sur a-b, et b est un sous-ensemble dénombrable de a. (2) =* (3) :soient b un ensemble dénombrable quelconque, x un sous-ensemble dénombrable de a, avec une bijection f de a sur a -x, et cp une bijection de b sur x ; l'application g, de a u b dans a, qui coïncide avec cp sur b et avec f sur a -(a n b) est clairement une injection; par ailleurs, l'identité est évidemment une injection de a dans aU b ; on en déduit que a et aU b sont équipotents (CB). (3) =* (4) :soient x un ensemble fini et b un ensemble dénombrable contenant x (par exemple wU x) ; on a une bijection de a u b dans a, dont la restriction à a u x est une injection de a Ux dans a ; comme 1'identité est une injection de a dans a u x, on en conclut que a etaU x sont équipotents (CB). (4) =* (5) : soient x un sous-ensemble fini de a, y un ensemble équipotent à x et disjoint de a, et f une bijection de au y sur a ; appelons z l'image directe de y par f et posons : t =x n z, u =x- t, v= z- t et w =a -(x Uz) ; on vérifie facilement que les ensembles t, u, v et w constituent une partition de a, que x et z sont équipotents, de même que u et v; choisissons une bijection cp de u sur v, et considérons l'application h, de a dans a, qui coïncide avec l'identité sur wu t, avec cp sur u, et avec cp-1 sur v; h est une bijection de a sur a qui échange x et z, et l'application composée g = h of est une bijection de a Uy sur a telle que l'image de y soit x et l'image de a soit a- x; la restriction de g à a est une bijection de a sur a -x : ces deux ensembles sont équipotents. (5) =* (6) :évident (n'importe quel entier non nul convient). (6) =* (7) :puisque a est non vide, il résulte de (6) que, pour tout sous-ensemble y de a à un élément, a et a -y sont équipotents ; considérons un tel sous-ensemble, par exemple y = {t}, où t E a, et une bijection f de a sur a -y ; soit maintenant x un ensemble quelconque à un élément, disons x= {u} ; évidemment, si u E a, l'équipotence entre a et a u x n'est pas difficile à établir ... ; si u ~a, l'application g de a Ux dans a qui coïncide avec f sur a et qui à u associe t est une bijection, ce qui montre que a Ux et a sont équipotents et prouve (7) (avec n = 1, c'est-à-dire, en fait, (8) !). (7) =* (8) :soient n (> 0) un entier donné par (7), t un ensemble quelconque, et y un ensemble de cardinal n - 1 ne contenant pas t ; posons x =y U {t} ; on a alors a ça u {t} Ça u x, et (d'après (7)) a est équipotent à aU x; cela prouve que a etaU {t} sont équipotents (CB). (8) =* (9): choisissons un ensemble u tel que u ~a; soit f une bijection de aU {u} sur a, et posons t =f(u); on voit que la restriction de f à a est une bijection de a sur a- {t}, ces deux ensembles sont donc équipotents.
Chapitre 7
285
{9) :::::} {10) : soit t un ensemble tel que t E a et tel que a soit équipotent à b =a- {t} ; a n'étant pas vide, b, qui lui est équipotent, ne l'est pas non plus ; d'autre part b *a parce quetE a et t équipotente à a.
~
b; b est donc une partie de a, non vide, distincte de a, et
{10):::::} {11): évident («équipotent» est plus fort que «subpotent»). (11):::::} (1) :on considère un ensemble b tel que b Ça, b *0, b *a, et a est d'éléments subpotent à b ; soit f une injection de a dans b ; on définit une suite (xn) de a, par induction sur les entiers, comme suit :
:xo
nuo
est un élément arbitraire de
l'ensemble a-b (il y en a) et, pour tout nEw, Xn+ 1 =f(xn); désignons parc l'image de cette suite (c = { t E a ; (3n E w)(t = xn)} ), et montrons que c est un ensemble dénombrable ; pour cela, il nous suffit de prouver que, pour tous entiers n et rn distincts, Xn
* Xm ;
supposons que ce ne soit pas vrai, et appelons k le plus petit élément de
l'ensemble (alors non vide) suivant: Z = {nEw; (3rn Ew) (rn >nA x,. =xn)}; soit h un
*
entier tel que h > k et xh = Xk ; si k 0, on a xh = f(xh-1) = Xk = f(xk-1}, et, parce que fest injective, Xh-1 = Xk-h ce qui prouve que k -1 E Z et contredit la définition de k ; on en déduit que k = 0, mais cela aussi mène à une contradiction car
:xo t. b, tandis que xh, qui
est un élément de l'image de f (puisque h > 0), appartient à b, ce qui interdit l'égalité X()=Xk· Le lecteur perspicace aura compris que les ensembles qui satisfont une des onze propriétés dont nous venons de prouver 1'équivalence sont les ensembles infinis. Il conviendrait de préciser infinis au sens fort, un ensemble infini au sens faible étant un ensemble qui n'est équipotent à aucun entier. Ces deux notions n'en font qu'une lorsque l'univers satisfait l'axiome du choix, mais, en l'absence de celui-ci, rien ne prouve qu'un ensemble qui n'est équipotent à aucun entier doive contenir un sous-ensemble dénombrable. 7. Pour cet exercice et les trois suivants, nous nous contenterons de donner les réponses, avec éventuellement des indications sommaires. Le lecteur pourra (avec profit) faire les preuves complètes. On utilise les faits suivants : •
card(~(tf)} =ca rd (tt") = card(Q") = card(IR} = card(R") = 2No ;
• 1'ensemble ~r(tf} des parties finies de IN est dénombrable ; • 1'ensemble ~~~~~(tf) des parties infinies de IN est de cardinal card(x1} =
~:à
~.
chaque partie infinie de If, on associe la suite de ses
éléments pris dans 1'ordre croissant, ce qui donne une bijection de ~~~~~(IN} sur x., qui est
1'ensemble des suites d'entiers strictement croissantes ; card(x2) = 2No: x2 est l'ensemble des suites d'entiers bornées, il contient l'ensemble
cJ4;
286
Solutions des exercices card(x3) = 2N°: x3 est l'ensemble des suites de rationnels strictement
croissantes, il contient x1
;
N
card(x4) = 2 ° : x4 est l'ensemble des suites de rationnels bornées, il contient x2
;
card(x5 ) =2N°: à chaque élément fE x11 on associe l'application g de IN dans Q qui, à chaque entier n, associe- 1 + \(n); g est une suite strictement croissante et bornée de rationnels, et on a ainsi une injection de x1 dans x5 ;
card(x6) =No: pour chaque n E IN, on pose : Zn
on a donc X6 =
U nt.
équipotent à
U
nt.N
IN
Zn ;
Qn+t,
= {f E QN ; (Vp E IN){ n ~ p :::::} f( n) = f(p))} ; or chacun des Zn est équipotent à Qn+l ; on en déduit que x6 est
ensemble qui est dénombrable (théorème 4.9, 3" )) ;
card(x7 ) = 2N°: x7 est l'ensemble des suites de réels non bornées ; il contient x1.
8.
card(E 0 ) = card(ININ) = 2No; card(El) = (2No)No = 2N~ = 2No;
card(E 2 ) = 2N° : utiliser le fait que l'ensemble des suites strictement croissantes d'entiers naturels est de cardinal 2N° (voir l'exercice 7) ; à une telle suite u, 1 faire correspondre la suite de rationnels v définie par v( n) = 1 + u( n) pour tout n ; card(E 3) = 2N° : E2 Ç E3 Ç Eo ; card(E 4) = 2N°: E2 Ç E4 Ç Eo; card(E 5 ) = 2N° : toute suite strictement croissante d'entiers naturels est une suite non bornée de rationnels, et E5 Ç E0 ; card(E6) = card(E 1) = 2No; card(E 7 ) = card(E6) = 2N°: si deux applications continues de IR dans IR ont même restriction à Q, alors elles sont égales ; card(E 8)
= 2N° : E8 est évidemment subpotent à IR x IR ;
card(E 9 ) = 2No : on utilise le résultat classique suivant : tout ouvert de IR est réunion d'une famille d'intervalles ouverts deux à deux disjoints, indexée par l'ensemble des entiers naturels ; on en déduit l'existence d'une injection de Eg dans (Es}". 9.
Nous appellerons suites les applications de w dans w. card(a 1) = 1 : a1 ne contient que la suite nulle ;
Chapitre 7
287 ca rd {a2) = 2No : a2 est égal à wiD (prendre p = f{ n)) ;
card{a 3 ) = 2No: a3 est l'ensemble des suites qui prennent au moins une fois la valeur 0 ; il contient l'ensemble des suites f telles que f{O) = 0, qui est équipotent à wLO-{o}.
'
card{a 4) = 2~0 : a2 Ç a4 Ç wiD (en fait, a4 = wiD) ; card{as) = 2~0 : as est l'ensemble des suites bornées, il contient 2ID; card{a 6) = 2No : a3
Ç a6 Ç wiD (en fait,
a6 = a3 )
;
card{b 1) = 0 : toute suite satisfait la négation de la propriété indiquée ; ca rd (b 2)
= 2~0 : b2 est égal à wiD (prendre p = f( n)) ;
card(b 3) = 0 : toute suite satisfait la négation de la propriété indiquée ; card(b 4) = 2No: b2 Ç b4 Ç wiD (en fait, b4 = wiD) ; card(bs) = 2~0 : bs = wiD (prendre p = 0) ; card{b 6) = 2~0 : b6 est l'ensemble des suites non bornées, il contient l'ensemble des suites strictement croissantes (x 1 dans l'exercice 7). card(y 1) = p: à chaque élément xE b, on associe l'application de a dans b qui prend en tout point la valeur x ; on définit ainsi une bijection de b sur y1 ; 10.
card(y 2)=p: y2 est égal à y11 car, pour tout xEs.}l(a), et pour tout fE ba, on a card(f(x)) ~ card(f(a)), ce qui montre que y1 Ç Y2, et, d'autre part, si fE y2 , on a card(f{a)) ~ 1, donc card(f(a)) = 1, puisque a est non vide, ce qui prouve que y2 Ç y1 ; card(y 3 ) = 2>- : pour toute application f de a dans b, on a f-1(b) =a, donc ca rd (f-l (b)) = ,\ ; cela montre que y3 = ba et que ca rd (y 3 ) = p>- = 2>- (puisque 2 ~ p ~ ,\) ; card(y 4) = 2>- : soient x et y deux éléments distincts de b (b est infini) ; on a {x,y}a Ç y4 U y1 Ç ba, donc 2>- ~ sup(card(y 4),p) ~ p>- = 2>-; or p < 2\ d'où le résultat ; card(ys) = ,\ : comme g est injective, le cardinal de g(b) est celui de b, c'est-à-dire p ; comme a est de cardinal ,\ > p, la différence a - g(b) est de cardinal ,\ (proposition 4.14) ; card(y 6) = 2>- : en associant à chaque élément de y6 sa restriction à l'ensemble Ys, on obtient une bijection de y6 sur bYs; card(y 7) = 2>- : tout élément de Y6 est une application surjective de a sur b, donc un élément de Y7; on en déduit que Y6 Ç Y7 Ç ba.
n. On a card{b) = ,\ (corollaire 4.14). On peut donc choisir une application bijective h de b sur a. Pour chaque i E { 1,2, ... ,n} désignons par ai l'image par h du sous-ensemble a x {i -1} de b ; le 11.
a) Soit n un entier naturel non nul. Posons b =a
x
288
Solutions des exercices
cardinal de chaque ai est évidemment l, et les ai (1 ~ i ~ n) constituent une partition de a. b) Pour tout xE~(a), on a card(a)=sup(card(x),card(a-x)) (corollaire 4.14); donc, si xE V(a), card(x) = l. c) Considérons une partition de a en trois parties a1, a2, a3, toutes de cardinal l, comme nous y autorise la question a). L'application x . . . . . a2 Ux, de ~(a 1 ) dans ~(a) est injective, et son image est un sous-ensemble de ~(a), car, si x Ç a11 alors les inclusions a2 Ç a2 U x Ç a et a3 Ç a - (a 2 U x) Ç a prouvent que card(a 2 U x) = card(a - (a 2 U x)) = l. On a donc card(~(a 1 )) ~ card(V(a)) ~ca rd(~(a)). Conclusion: card(~*(a)) = 2>-. d) Soit a1 E V(a ), et posons b =a - a1. Comme card(b) = l, on peut trouver une partition de b en deux parties b1 et b2, chacune de cardinal l (question a)). Les ensembles a1, b1 et b2 constituent une partition de a. Choisissons une bijection cp de b1 sur b2, et définissons comme suit une application ha 1 de a dans a : • la restriction de ha 1 à a1 est l'identité ; • la restriction de ha 1 à b1 est 1' application cp ; • la restriction de ha 1 à b2 est 1' application cp-1. On vérifie facilement que ha 1 est une bijection de a sur a dont l'ensemble des points invariants est a1 (pour xE b1, ha1(x) E b2, donc ha 1(x) *x; le raisonnement est le même si xE b2). e) La question précédente montre que l'application a1 .......... ha 1 est une injection de V(a) dans l'ensemble S(a) des bijections de a sur a. Comme S(a) est inclus dans l'ensemble de toutes les applications de a dans a, on en déduit que:
2>- ~ card(S(a)) ~ l>. = 2>-. Le cardinal de l'ensemble des bijections de a sur a est donc 2>-. f) Soit bE V(a), et soit X l'ensemble des bijections de a sur a dont la restriction à b est l'identité sur b. On définit une bijection de X sur S(a- b) (ensemble des bijections de a - b sur a - b) en associant à chaque élément de X sa restriction à a - b. Le cardinal de X est donc celui de S(a- b), c'est-à-dire 2\ puisque card(a- b) = l (voir la question e)).
g) A toute bijection f de a sur a, on peut associer une application tpr, injective, de ~(a), en posant tpr(x) = {f(x)} pour tout xE a. On voit tout de suite que l'application f .......... f/Jf est une injection de S(a) dans l'ensemble des applications injectives de a dans ~(a), qui est lui même une partie de ~(a )a. Or ca rd (S( a)) = 2>- et card(~(a)a) = (2>.)>- = 2>-•>- = 2>-. Le cardinal cherché est donc 2>-.
a dans
289
Chapitre 7
12. On va définir, par induction sur {JE a, une famille (fp)lko d'injections de Xp dans A telle que, pour tous ordinaux {J E a et 7 E a, si {J < 7, alors fp Ç f., : • f 0 est une injection arbitraire de Xo dans A {il y en a car card(Xo) < A) ; • si {JE a et {J est un ordinal limite, on pose f~t = U f., ; • si {JE a et {J = 7 + 1, on définit f~t comme suit ~if restriction de f~t à x., est f., et la restriction de f~t à dans A dont l'image est 11 - X., est une injection de disjointe de celle de f.,. Une telle injection existe parce que: l'image de f., est un sous-ensemble de A de cardinal card(X.,) card(X.,.1 -X.,)) ; de plus, l'axiome du choix est satisfait.
x.,.
x.,. x.,
On vérifie facilement que la famille d'applications ainsi définie a les propriétés requises. L'application f = U f~t est une injection de U X~t dans A. Pf.n
Pf.o
Conclusion : card(U Xp}
~
A.
Pf.n
13.
Par définition, !: OUt
An= card(U (An x {a})). Of.llt
Avec le corollaire 4.14, 2" ), on en déduit que: !: A0 ~ sup ( "' sup An). Clf.lt
Of.lt
Pour obtenir l'inégalité inverse, on fait les deux remarques suivantes : • l'application a~---+ (O,a) est une injection de" dans
U (An x {a}) ;
Of.llt
• l'application de U An= sup An dans U (An x {a}) qui, à tout élément x, Of.K Clf.K Of.K associe l'unique couple (x, a) tel que a E"' xE An et, pour tout {J < a, x~ Ap, est également injective. Il en résulte que " ~ !:
Of.K
Finalement : !: A0 Of.K
An et Of.K sup An ~ !: An· Of.K
= sup ( "' Clf.K sup (An)).
14. a) On a 2 ~ p ~ A, donc 2>. ~ ,i- ~ A>.= 2>-, ce qui montre que 2>. = ,i- =A>.. D'autre part, No~ p ~A, donc ANo ~A>.= 2>-. Il suffit de montrer que 2>. ~ ANo. Pour cela, on vérifie que :
(·>
n
2>- = ftf.U) 2>-" , >. et on remarque que, pour tout n E w, 2 " ~ A. Pour montrer (• ), on se donne une famille (Xn) ftf.U) d'ensembles deux à deux disjoints telle que, pour tout n, Xn soit de cardinal An, et on pose X= U Xn. Le cardinal ftf.U)
de X est A, donc celui de ~X) est 2>-. A chaque partie Y Ç X, on fait correspondre la suite (Y n) nf.U) telle que, pour tout n, Yn =Y n Xn. On a ainsi une application, qui est clairement bijective (parce que les Xn sont deux à deux disjoints), de ~X) dans
TI ~Xn}, ce qui donne bien (• ). n f.U)
290
Solutions des exercices
b) Soit 7 un cardinal. • si 7 est compris entre N0 et .X (au sens large), alors : .XNo ~ Xl ~ .X">.. = 2}. ; mais on vient de voir que 2}.
~ ,xNo, ce qui prouve les égalités ,xNo= Xl= ,x">..
• si 7 est supérieur ou égal à .X , on a 2 ~ .X ~ 7, donc : 2"~ ~ X'f ~ 7"~=2"~. c) Il suffit de choisir : a= 6 =.X, {J = 2">.., et 7 = N0 . On a bien a< {Jet 7 < 6 (la première inégalité résulte du théorème de Cantor (4.5), la deuxième du fait que p ~ N0 et .X ~ 211 ~ 2N° > N0 ). Calculons a"f et • a"f = ,xNo = .X}. = 2}. (question b)) ; • {J 6 = (2}.)}. = 2}.x}. = 2}..
tf :
On en déduit l'égalité attendue. 15. a) Pour tout ordinal a, a est cofinal à a: l'identité strictement croissante non strictement majorée de a dans a (c'est l'identité est alors l'application vide qui a aussi ces propriétés). réflexive. Pour prouver la transitivité, considérons des ordinaux a,
est une application vrai même si a= 0 : La relation est donc {Jet 7 tels que a soit
cofinal à {J et {J cofinal à 7 ; il y a donc des applications f : {J-+ a et g : 7-+ {J, strictement croissantes et non strictement majorées. Alors, f o g est une application de 7 dans a qui est strictement croissante. Montrons qu'elle n'est pas strictement majorée: soit 6 un élément de a; on peut trouver un élément { élément (
E
E
{J tel que f( {) ~ 6, puis un
7 tel que g( () ~ { ; comme f est croissante, on a :
(f 0 g)(() =f(g(()) ~ f({) ~ 6. L'ordinal NU) est cofinal à w : l'application n ~----+ Nn de w dans NU) est en effet strictement croissante et n'est pas strictement majorée. Mais w n'est pas cofinal à NU), car il ne peut exister d'application injective (et a fortiori d'application strictement croissante) de NU) dans w. La relation «être cofinal à» n'est donc pas symétrique. Les ordinaux cofinaux à 1 sont les ordinaux successeurs : si a= {J + 1 est successeur, alors l'application f de 1 (= {0}) dans a, définie par f(O) = {J est strictement croissante et n'est pas strictement majorée (pour tout 7 E a, f(O) ~ 7), donc a est cofinal à 1 ; réciproquement, si a est un ordinal cofinal à 1, et sig est une application de 1 dans a qui n'est pas strictement majorée, on doit avoir (parce que 0 est le seul élément de 1) : f(O) ~ 6 pour tout 6 E a; cela signifie que f(O) doit être le plus grand élément dans a; cette situation n'est possible que si a est successeur. b) Si a et {J sont des ordinaux tels que a soit cofinal à {J, alors l'existence d'une application strictement croissante de {J dans a, prouve que {J est inférieur ou égal à a. La classe des ordinaux {J tels que a soit cofinal à {J est donc l'ensemble : {{JE a+ 1 ; a est cofinal à {J} (axiome de compréhension). Cet ensemble n'est pas vide car il contient a; son plus petit élément, cof( a), est donc inférieur ou égal à a. Soit 7 un ordinal tel que
Chapitre 7
291
cof( a) soit cofinal à 1; par transitivité, a est alors cofinal à 1, ce qui prouve que cof( a) ~ 1: cof( a) est donc le plus petit des ordinaux auxquels cof( a) est cofinal, ce qui signifie que cof(cof(a)) = cof(a), ou encore que cof(a) est régulier. c) Supposons d'abord que fJ ~ cof(a). Choisissons une application f strictement croissante non strictement majorée de cof(a) dans a. Alors, l'application g de fJ dans a qui coïncide avec f sur le sous-ensemble cof( a) de {J, et qui vaut 0 en dehors de ce sous-ensemble, n'est pas strictement majorée dans a. Réciproquement, supposons qu'il existe une application f de {J dans a, non strictement majorée dans a. Cela signifie que la borne supérieure de l'image de f est l'ordinal a. Appelons t5le premier ordinal de l'ensemble: { 1 ~ fJ; supf({) =a}. f.t."'f
(Cet ensemble n'est pas vide car, comme nous venons de le voir, il contient {J.) On définit alors une application g de t5 dans a, comme suit : pour tout 1 E t5, g( 1) = supf({). f.t."'f
Il est facile de vérifier que g est croissante. La définition de t5 nous garantit, d'une part qu'elle prend bien ses valeurs dans a, et, d'autre part, qu'elle n'est pas strictement majorée dans a. Désignons par X l'image de g, et par h l'application de X dans t5 qui, à chaque ordinal x E X, associe le plus petit des ordinaux { tels que x = g( {). On se convainc facilement que h est un isomorphisme de X (muni de l'ordre E) sur son image, qui est un sous-ensemble Y de t5 ; Y est isomorphe à un (unique) ordinal u ~ t5 (remarque
2.5). Soit tp l'isomorphisme de Y sur u. On voit que (tp o h)-1, isomorphisme de u sur X, est une application strictement croissante non strictement majorée de u dans a. On en déduit que a est cofinal à u. En conséquence, {J, qui vérifie fJ
~
t5 ~ u, est supérieur ou
égal à la cofinalité de a. d) Comme tous les ordinaux successeurs sont cofinaux à 1 (question a)), le seul ordinal successeur qui puisse être régulier est 1 ; il l'est effectivement, car toute application de 0 dans 1 est majorée (par 0), ce qui montre que 1 n'est pas cofinal à O. L'unique ordinal successeur régulier est bien un cardinal. Comme 0 est cofinal à 0, il est régulier ; c'est aussi un cardinal. Il nous reste à examiner le cas des ordinaux réguliers limites. Soit a un tel ordinal et soit choisir une bijection f de
~
~
le cardinal de a. Bien entendu,
~ ~
a, et on peut
sur a. Comme a est limite, f n'est pas strictement majorée
dans a. Grâce à la question c), on en déduit que~~ cof(a) =a. Conclusion: ~=a et a est un cardinal. Ainsi, tout ordinal régulier est un cardinal. Soit
~un
que card(X)
<
~.
cardinal qui est un ordinal régulier, et soit X un sous-ensemble de
~tel
Muni du bon ordre E, X est isomorphe à un ordinal t5 ~ ~ (remarque
2.5) ; mais cette inégalité ne peut être que stricte puisque ca rd( 5) = card(X) < ~ et que ~ est lui -même un cardinal. Soit tp l'isomorphisme de t5 sur X ; tp est une application strictement croissante de t5 <
~dans ~qui
est régulier. On en déduit immédiatement que
292
Solutions des exercices
cp est strictement majorée dans À, ce qui signifie exactement que la borne supérieure de l'ensemble X est strictement inférieure à À. Donc À est un cardinal régulier au sens de la définition 5.7, ii. Réciproquement, supposons que À soit un cardinal régulier au sens de 5.7, ii, et considérons un ordinal a< À et une application f strictement croissante de a dans À. L'image de f est un sous-ensemble Y de À dont le cardinal est strictement inférieur à À, puisque c'est le même que celui de a. On en déduit que la borne supérieure de Y est un élément de À, ce qui montre que l'application fest strictement majorée dans À : À n'est donc pas cofinal à a ; c'est un ordinal régulier. e) On suppose maintenant que l'univers satisfait l'axiome du choix. Soit a un ordinal et appelons À la cofinalité de Nn+l· Il existe une application f, strictement croissante et non strictement majorée, de À dans Nn+l· Pour tout fJ E À, f({J) E Nn+h c'est-à-dire f({J) < Na+ 1, donc card(f({J)) ~ Na. D'autre part, comme f n'est pas strictement majorée dans Na+l qui est un ordinal limite, on a: Na+1
= supf({J) = l PE>-
J f({J).
~
On en déduit que : card(l J f({J)) = Nn+l·
JfV.
Mais, par ailleurs, on a aussi (corollaire 4.14, 2·, avec AC) : card(l J f({J)) p~
~
sup (À, supcard(f({J))). P~~
En conséquence, Nn+ 1 ~ sup(À,su~card(f({J))); or, pour pour tout {JE A, card(f({J)) ~Na, donc supcard(f({J)) ~Na< Nn+~~ ce qui implique A~ Nn+l· Mais A= cof(Nn+1) ~ Na+l· P~~ Conclusion : Na+l est régulier. Supposons que a soit un ordinal limite, et appelons 6 sa cofinalité. Soit f une application strictement croissante de 6 dans a, non strictement majorée. Alors l'application g de 6 dans Na qui à fJ E 6 fait correspondre Np est aussi strictement croissante, non strictement majorée, ce qui montre que Na est cofinal à 6 et que cof(Na) ~ 6. Pour montrer que cof(Na) = 6, on va utiliser la question c), et montrer que, si fJ est un ordinal strictement inférieur à 6 et si h est une application de fJ sur Na, alors h est strictement majorée dans Na. En effet, considérons l'application k de domaine fJ qui à 1 E fJ fait correspondre l'unique ordinal e tel que NE soit la cardinalité de h( 7) ; k est en fait une application de fJ dans a, et d'après la question c), puisque fJ est strictement inférieur à la cofinalité de a, k est majorée par un ordinal { < a. On en déduit que, pour tout 1 E {J, h( 7) < Nç+l· Comme a est un ordinal limite, { + 1 < a et Nç+l < Na : h est donc strictement majorée dans Na. f) L'application n J--t w + n de w dans w + w (il s'agit de sommes ordinales) est clairement strictement croissante et non strictement majorée. On en déduit que w + w est cofinal à w. Il est d'autre part évident qu'aucun des ordinaux w + n (0 < n < w) n'est cofinal à w : toute application strictement croissante de w dans w + n est strictement
Chapitre 7
293
majorée par w. Le plus petit ordinal strictement supérieur à w et cofinal à w est donc w + w. Quant au plus petit cardinal strictement supérieur à w et cofinal à w, il faut supposer que l'univers satisfait l'axiome du choix pour pouvoir affirmer que c'est Nu,: cela découle de la question précédente. 16. a) Soit c5la cofinalité de..\. Si ~ = ..\ (autrement dit, si ..\est régulier), alors, par le théorème de Cantor, (théorème 4.5), ..\6 >..\.Sinon, il existe un ordinal limite a tel que ..\ = N0 et cof( a) = cof( ..\), et une application strictement croissante f non strictement majorée de~ dans a (exercice 15, question e)). Pour chaque {JE~' posons ..\fi=Nr(fl> et l.lfl = ..\. Pour tout fJ E ~' on a donc ..\p < l.lfl et, d'après le théorème de Kônig (théorème 4.15): card(U ..\p) =..\
n
P~6
P~6
b) Comme No= No x No, on a .Jo= .Jo•No = (.Jo)No. De la question précédente, on déduit donc que la cofinalité de .fo est strictement supérieure à w. c) • Supposons que p < ~ (~ ..\). Alors, tout élément fE ..\P. est strictement majoré dans ..\ (exercice 15, question c)). Cela signifie que ..\P. est inclus dans l J ~K.f:'>.
• Si ..\ = p• = 2P. (..\ est donc régulier), alors ..\P.= {2~'t = 2P. 1 P. = 2IJ. = ..\. • Sinon, pour tout cardinal "strictement compris entre pet ..\, on a : ~ ~ {2"t = 2"~' = 2" =
"+ ~ . \
j
a fortiori, si " ~ p, on aura ~ ~ ..\. Ainsi : ..\P.~ card(l J ~) = suo ~ ~ ..\. K.f:'>.
L'inégalité ..\
~
M).
..\P. étant évidente (p =l' 0), on aboutit bien à ..\P.=..\.
• Supposons que ~ ~ p ~ ..\. De la question a), et avec HGC, on déduit que : 2). = ..\ + ~ ..\6 ~ ..\~' ~ ..\). = 2).. Donc, ..\P.= 2).. • Supposons que ..\ < p. Alors, 2IJ. ~ ..\P. ~ ,P =
2~'
; donc ..\P.= 2P..
17. a) On raisonne par l'absurde: soit • une fonction strictement croissante (définissable) de On dans On qui n'a pas la propriété annoncée. On désigne par ~le plus petit des ordinaux a tels que •(a)
• ao est n'importe quel ordinal strictement supérieur à a ;
•<
• pour tout n E w, au1 = an)· On distingue alors deux cas: ou bien il existe un entier n tel que an+l =an, et dans ce cas an est un point fixe de • strictement supérieur à a ; ou bien n ...._. an est une application strictement croissante non strictement majorée de w dans l'ordinal limite
294
Solutions des exercices
{J = sup an ; alors {J est cofinal à w, donc • est continue en {J, ce qui signifie que : nuo
•(fJ) =
SUQ
~Ep
•< 7) = sup •(an) (parce que • est croissante) nE~
= sup an+l = {J; nE~
là encore, on a un point fixe de • strictement supérieur à a, à savoir {J. c) Il est clair que les propriétés de croissance stricte et de continuité en un ordinal limite sont préservées par composition. La construction de la question b) peut être refaite avec la fonction \l1 o • : partant d'un ordinal a quelconque, on prend un ordinal
ao > a,
puis, pour chaque n E w, on pose an+l = (w o •)( an)· D'après la question a), on
a, pour tout nEw, an :s;;; •(an) :s;;; (w o •Han) = an+l· On en déduit que, s'il existe un entier n tel que an+l =an, alors an est un point fixe commun à • et à
w,
strictement
supérieur à a. Dans l'autre éventualité, l'ordinal {J = sup an est un point fixe de \l1 o •· nE~
Comme •
et \l1 sont strictement croissantes, on a : {J = \l1 o •(fJ) :s;;; •(fJ) :s;;; {J, et
{J = •(fJ) = w({J). On en conclut que {J est un point fixe commun à • et w, supérieur à a. d) On applique la question précédente aux fonctions • et \l1 qui, à chaque ordinal
a, associent respectivement Na et card(Va)· Ces fonctions sont continues en tout ordinal limite : cela résulte immédiatement de leurs définitions. La stricte croissance de • est également immédiate ; celle de \l1 n'est guère difficile à prouver : si
a
a< {J, alors
+ 1 :s;;; {J, donc ~(V a) =V a+l Ç V~' ce qui montre que : card(Va) < 2card
On obtient donc, pour tout ordinal a, un point fixe {J > a, commun à • et à \li, c'est-à-dire tel que : Na= card(Va) =a. 18.
a) On utilise les résultats de l'exercice 16. OnaN~= supNn ; mais: nE~
wN~ = 2N~ > N~ = supNn+l = sup2Nn = sup wNn. nE~
nE~
nE~
Donc la première fonction n'est pas continue en w. La deuxième non plus, d'ailleurs :
N
(N~)~ = 2 ~
>
N~ = sup Nn+l = sup (Nn+l)~. nE~
nE~
b) Pour la première fonction, la réponse est oui (se reporter à la définition de la somme ordinale). La deuxième fonction n'est pas continue en w: (supn) nE~
+ w= w + w; tandis que sup(n + w) =w. nE~
La troisième fonction est continue en tout ordinal limite : là aussi, il suffit d'examiner la définition du produit ordinal. Enfin, la quatrième fonction n'est pas continue en w: 2. (sup n) = 2. w= w + w; tandis que sup (2. n) =w. nE~
19.
nE~
Supposons que l'univers .U satisfasse AF (il coïncide donc avec la classe Y). Si une
formule F à une variable libre définit une classe non vide (autrement dit : si
.U 1= 3v0 F(v 0]), alors on peut choisir dans cette classe un élément a de rang minimum (ce
295
Chapitre 7
qui signifie qu'il existe un ordinal a tel que a EVa et que, pour tout ordinal {J < a, aucun élément de V~ ne satisfasse F). Il est alors clair que pour tout ensemble b tel que b E a, on a 11 1= •F[b], puisque le rang de b est strictement inférieur à celui de a. Cela prouve que le schéma d'axiome proposé est satisfait dans 11. Réciproquement, supposons que ce schéma soit satisfait, et considérons la formule F[vo] = Vv 1 (On[v1] ~ •vo EV v1) qui définit la classe $ des ensembles qui ne sont pas dans r. Si la classe$ n'était pas vide, on pourrait trouver, grâce au schéma d'axiome, un ensemble a dans cette classe tel qu'aucun ensemble b appartenant à a ne soit dans la classe $; autrement dit, tous les éléments de a devraient être dans r, c'est-à-dire dans Va pour un ordinal a approprié; a serait donc une partie de Va, c'est-à-dire un élément de Va.. 1, et serait dans la classe r et non dans la classe $, ce qui serait absurde. La conclusion est que la classe$ est vide, ou encore que l'univers coïncide avec la classe
r,
ce qui montre qu'il satisfait AF (théorème 5.2).
20.
a) Il est clair qu'un ensemble clos cofinal n'est pas vide. Pour montrer que
l'ensemble des sous-ensembles clos cofinaux de ...\forme une base de filtre, il suffit donc d'appliquer le résultat qui va être montré en b) dans le cas particulier de familles finies d'ensembles clos cofinaux. b) Posons X=
0
Id
Xi. Il est clair que X est clos: si Y Ç X et card Y<...\, alors,
pour tout i E 1, Y Ç Xï, et sup Y E Xi. Donc sup Y EX. Montrons que X est aussi cofinal : soit a E ...\. On définit par récurrence une suite (fn ; n E w) d'applications de 1 dans ...\ de la façon suivante: pour tout i E 1, f 0(i) est le
plus petit élément de
xi
supérieur à a (il en existe puisque
xi
est cofinal) ; pour tout
n E w et pour tout i E 1, fn .. 1(i) est le plus petit ordinal de Xi supérieur à sup { fn(j) ; jE 1}.
(On remarque que la cardinalité de l'ensemble { fn(j) ; jE 1} est strictement inférieure à ...\, et donc sup { fn(j) ; jE 1} est aussi strictement inférieur à...\.) Pour tout i E 1, { fn(i) ; n E w} est un ensemble dénombrable inclus dans Xï, et donc, ai= sup { fn(i) ; n E w} appartient à Xi. Or pour tous i, j appartenant à 1, ai= aj : en effet, par définition des applications fn, pour tout n E w, fn .. 1(i) > fn(j), ce qui montre que ai ~ aj. Pour une raison analogue, aj ~ ai, et donc ai= aj. Par conséquent, la valeur commune de tous les ai appartient à X. c) L'implication 1) ~ 2) est à peu près évidente: si Y1 et Y2 sont deux ensembles stationnaires disjoints, alors l'un des deux au moins ne contient pas d'ensemble clos cofinal, sinon leur intersection ne serait pas vide. Les autres implications ne sont pas plus difficiles une fois que l'on a remarqué le fait suivant : soit :Y le filtre engendré par les ensembles clos cofinaux ; alors un sous-ensemble Y de ...\ est stationnaire si et seulement si son complémentaire n'appartient pas à :Y.
296
Solutions des exercices
d) On montre d'abord que â(X) est clos : soit Y un sous-ensemble de Ll(X) dont la cardinalité est strictement inférieure à ..\ ; Y est bien ordonné par la relation d'appartenance, et donc isomorphe à un ordinal cr, qui doit être inférieur à ..\: il existe une bijection f strictement croissante de a sur Y. Par définition de â(X), pour tout {JE a, f({J) E Xr,p>. Posons 7=sup Y. Il s'agit de montrer que 7E x.,. C'est clair si 7E Y. Sinon, aest un ordinal limite, et pour tout {JE a, 7 = sup (f( li) ; {J ~ 6 < a). Mais, si {J ~ 6 < a, alors Xr,6> Ç Xnp> (propriété {2) de l'énoncé), et donc f(li) E Xnp>. Comme Xr,P> est un ensemble clos, on en déduit que 7 E Xr,P>, et comme ceci est vrai pour tout {JE a, on voit que 7 appartient à ("'\ Xr,P> , qui est égal à x., (propriété {3) de l'énoncé). Montrons maintg~~t que â(X) est cofinal. Soit a E ..\. On définit alors par récurrence une suite (an ; n E w) par : ao = a ; an+ 1 est le plus petit ordinal strictement supérieur à an appartenant à X . Posons {J = sup( an ; n E w). En utilisant toujours le On même genre d'argument, on voit que {JE Xp, et donc que {JE â(X). e) On prouve le contraposé du théorème de Fodor : soit f une application de ..\ dans ..\, et on suppose que, pour tout a E ..\, f-1(a) n'est pas stationnaire. On va construire un ensemble clos cofinal X tel que, pour tout a E X, f( a) ;;::: a. Avec l'axiome du choix et les hypothèses, on trouve une famille (T 0 ; a E ..\) de sous-ensembles clos cofinaux de ..\, telle que, pour tout a E ..\, pour tout {J E T0 , f({J) =t a. On définit alors une autre famille (X 0 ; a E ..\) de sous-ensembles clos cofinaux de ..\, par induction, de la façon suivante : • Xo=..\;
• si a est un ordinal limite, alors X0 = (\ Xp ; Pt.o • si a= {J + 1, alors X0 = Xp n T p. La famille (X 0 ; a E ..\) satisfait les conditions {1), (2) et (3) de la question précédente, et, de plus, on vérifie sans mal que: pour tout a E ..\, pour tout {JE X0 , f({J) ~ a. Soit Y l'intersection diagonale de cette famille. C'est un ensemble clos cofinal, et si a E X, alors a E X0 , et donc f( a) ~ a. f) On va montrer que tout sous-ensemble X clos cofinal de ..\ contient un ordinal de cofinalité ~0 . On définit par récurrence une suite d'ordinaux (an ; n E w), strictement croissante, par : ao est le plus petit ordinal appartenant à X et an+1 est le plus petit élément de X strictement supérieur à an. Il est alors clair que la cofinalité de {J = sup (an ; n E w) est ~ et {J appartient à X parce que X est clos. Il en résulte donc que l'ensemble des éléments de ..\ qui sont de cofinalité ~ rencontre tous les clos cofinaux et est donc stationnaire. On raisonne de même pour montrer que le sous-ensemble de ..\ composé des ordinaux de cofinalité ~ 1 est stationnaire : si X est un clos cofinal, on définit encore par induction une suite (ai; i E ~ 1 ), strictement croissante, d'éléments de X, et on pose
Chapitre 7
297
P = sup (ai ; i E N1) ; alors P E X, et la cofinalité de Pest clairement inférieure ou égale à N1. Montrons par l'absurde qu'elle ne peut pas être égale à No: il existerait une suite strictement croissante d'ordinaux ( 7n ; n E w) telle que sup ( 7n ; n E w) = P= sup( ai ; i E N1). Pour chaque entier n, posons : An= { i E N1 ;·ai ~ 7n }. Comme la suite (ai ; i E N1) est strictement croissante et n'est pas majorée par 7n, An est un segment initial propre de N1 et est donc dénombrable. Par ailleurs, si i E N1, il existe un entier n tel que ai~ 7n, ce qui prouve que U An= N1 : ce qui est impossible d'après nf.ID le corollaire 4 .14. Il est bien clair que la cofinalité d'un ordinal ne peut être à la fois No et N1 : on a bien trouvé deux ensembles stationnaires disjoints. g) Pour tout a E N1, hn(a) E a; on peut donc appliquer le théorème de Fodor: il existe Pn E N1 tel que hn 1(Pn) soit un ensemble stationnaire ; appelons Yn cet ensemble duquel on a éventuellement ôté O. Alors, pour tout 7 E Yn, f'l(n) = hn( 7) = Pn· Soit 7 E ("'\Y n· Pour tout n E w, f'l(n) = hn( 7)::::: Pn· Comme f'l est une nf.ID application surjective de w sur 7, on voit que 7 = { /Jn ; n E w}. On en déduit donc que fl Yn n'est pas un ensemble cofinal, donc ne contient aucun ensemble clos cofinal : avec n f.ID la question a), cela montre que l'un au moins des ensembles Yn n'appartient pas à :Y. 21.
a) Les remarques faites en 5.4 montrent que, si a est un ordinal limite, alors
< V0 ,E > satisfait les axiomes d'extentionnalité, de la paire et des parties. D'autre part, parce que a est strictement supérieur à w, il satisfait aussi l'axiome de l'infini: dans< V0 ,E >,west un ordinal qui n'est ni nul ni successeur. b, a 11
Restent les axiomes de compréhension. Soient F(v0,v1,... ,vn] une formule de .:tet a2 , ••• ,an des ensembles appartenant à V0 . On sait qu'il existe un ensemble c
tel que: .U 1= Vw(w E c (:::::::::} (w E b A FYO(w,a 11 ••• ,anD· Il est bien clair que c Ç b. Or, il existe fJ < a tel que bE Vfi, et donc cE Vfi+l· Comme a est un ordinal limite, P+ 1 < a, etc E V0 • Par construction de la formule Fvo., on a: .Ut= Vw(w E c (:::::::::}(wEb A FYO(w,a 11 ••• ,an]) si et seulement si < V0 ,E > t= Vw(w E c (:::::::::}(wEb A F(w,a 1,... ,an]). Les axiomes de compréhension sont bien vrais dans < Vo., E >. b) Si ZF n'est pas consistant, alors ZF n'est certainement pas conséquence de Z qui est consistant par hypothèse. Supposons donc que ZF soit consistant. Il en existe alors un modèle .U. Considérons l'ensemble V21D défini a l'intérieur de ce modèle .U On vient de voir que < V21D, E >est un modèle de Z. Ce n'est pas un modèle de ZF: sinon on pourrait définir par induction une suite d'ordinaux (an ; nEw), par:
ao
=w;
au1 =an+ 1.
298
Solutions des exercices
>,
On voit alors que, dans < V2.lrJ, E U an est un ensemble qui est égal à la classe de nuo tous les ordinaux, ce qui contredit la proposition 1 de 2. 6. 22 Tout d'abord,
F On(x) si et seulement si lll= On(x).
Or cl(w) = w, et donc west dans Y et on voit que:
y
y
lll= Vwo((W[wo] Il. W[w1] Il. W[w2] Il. F [wo,w 1,ao,a 1,... ,an] Il. F [wo,w2,ao,a 1, .•. ,an]) =:::::} w1 ~ w2), et donc, la formule W[wo] Il. W[w 1] Il. Fy[wo,wha 0 ,a 1, ... ,an] est fonctionnelle en wo dans ll. Par remplacement dans ll, on en déduit qu'il existe un ensemble c tel que : (*) lll= Vvo(vo E c {::::::::) 3wo E b (W[wo] Il. W[vo] Il. Fy[wo,vo,ao,al,···,an]). L'ensemble c est dénombrable (la formule Fy[w 0 ,w 1,a 0 ,a 1,... ,an] définit une application surjective d'une partie de b, qui est dénombrable parce qu'il est dans Y, sur c (proposition 4.9)). Par ailleurs, tous les éléments de c sont dans Y (par définition). Comme cl(c) =cU U cl(t), on voit que c est dans Y. De la relation (*),on déduit : tf. c
299
Chapitre 7
23.
Chaque nombre réel r de l'intervalle
]0,1] admet un développement décimal. Cela
veut dire qu'il existe une suite (ai ; i E w) de nombres entiers compris, au sens large, entre 0 et 9 telle que : r
a·
= i>l E lo' i
Il n'y a pas unicité. Cependant, si on pose : S* ={sE {0,1,2,3,4,5,6,7,8,9}1.0; pour tout nEw, il existe p;;: n tel que s(p) ::1=0}, alors, pour tout rE ]0,1], il existe un et un seul élément (ai ; i E w) de S* tel que r = E alOi i· i>l
Pour montrer que l'intervalle ]0,1] n'est pas dénombrable, il suffit donc de montrer que S* ne l'est pas, ou, ce qui revient au même que si (si ; i E w) est une suite d'éléments deS*, alors il existe un éléments dans S* qui n'est égal à aucun des si. Il suffit de définir la suites par : s(i) = 1
si s i(i)
*1;
=2
si si(i)
= 1.
s(i)
300
Solutions des exercices
CHAPITRE 8
1. a) On peut tout d'abord remarquer que l'ensemble IN* =IN- {0} est un exemple d'ensemble disjoint de l'ensemble de ses parties (0 appartient à tous les éléments de IN* mais à aucune de ses parties).
rotx F Ho parce que X et ~(X) constituent une partition de Mx ; rotx t= H1 parce que, pour tout couple (x,y) E A, on axE X et y E ~(X) ; rotx F H2 par extensionnalité; rotx F H3 parce que l'ensemble vide est un élément de ~(X); rotx F H4 parce que toute partie xE ~(X) a un complémentaire dans X; rotx t= H5 parce que, pour toutes parties x E ~(X) et y E ~X), x U y E ~(X) ; enfin, pour chaque entier n ~ 1, rotx t= Fn parce que, quels que soient les éléments x1, x2, ... , Xn de X, { x17 x2, ... ,xn} E ~(X). b) Oui : le langage est dénombrable, la théorie T admet des modèles infinis (par exemple, le modèle rotx de la question a), en choisissant X infini), donc (théorème de Lowenheim-Skolem descendant, 1.5) T admet un modèle dénombrable; on peut d'ailleurs aisément en décrire un en s'inspirant de la question a) avec un ensemble X dénombrable: c'est la sous-structure de rotx dont l'ensemble de base est X U~r(X) U ~cor(X), où ~r(X) est l'ensemble des parties finies de X et ~cor(X) est l'ensemble des parties cofinies de X. Il est facile de vérifier qu'il s'agit d'un modèle dénombrable de T. c) Ce sont les entiers de la forme k + 2k, où k E IN. d) On laisse au lecteur le soin de montrer par récurrence, en se servant de H5, que, pour tout entier n ~ 1, on a: { Ho,H 17 H2,H3,H 4 ,H 5,F 1 } ~ Fn. e) Désignons par
!Dto le modèle dénombrable de T décrit à question b), dont
l'ensemble de base est X U ~(X) U ~cor(X) (pour fixer les idées, on va prendre X =IN*). Nous allons décrire un modèle dénombrable rot1 de T, non isomorphe à !Dfo. Soit C un sous-ensemble infini et de complémentaire infini de X (l'ensemble des entiers strictement positifs pairs par exemple). Considérons la sous-algèbre de Boole de ~(X) engendrée par ~(X) U~cor(X) U { C} ; on obtient ainsi une sous-algèbre de Boole B de ~(X) qui est encore dénombrable. On prend alors pour structure rot1 la sous-structure de rotx dont l'ensemble de base est X U B, et il est facile de vérifier que c'est un modèle de T. Nous allons maintenant montrer que !Dto n'est pas isomorphe à rot1. Pour chaque entier p > 0, considérons la formule Fp(vo] : 3v 13v2... 3vp(Vwo(Awovo ~ ( / ~ wo ~vi)) V Vwo(•Awovo ~ ( ...~ wo ~vi))). h, ''P 1, ''P Alors roto possède la propriété suivante : pour tout élément x de roto, il existe un entier p tel que roto F Fp(x]. Evidemment cette propriété est encore satisfaite par toute structure isomorphe à roto; or elle ne l'est pas par rot1, car Cne satisfait aucune des formules Fp dans rot1.
301
Chapitre 8
2. Les préliminaires auxquels on se référera dans ce qui suit sont ceux du corrigé de l'exercice 15 du chapitre 3. a) • Il est clair que la relation s:s est réflexive (prendre m = n = p = q = 0 dans la définition) et symétrique. Supposons que a, b, cE M, a s:s b et b s:s c. Il y a alors des entiers naturels m, n, p, q, r, s, tet u tels que: d"'\g"(a)) = ëfP(gq(b)) et ëfr{g5 (b)) = (Jl(gu(c)). Le fait que ëf et g commutent entraîne (voir préliminaires) : ëf11t+r(gn +S( a)) = ëfP+r(gq+S(b)) = (1\+P(gU +q(C)), ce qui prouve a
~:s
c.
• Comme, pour tout élément a de M, a ~:s ëf(a) et a s:s g(a), la grille de a est stable par les applications ëf et g. On notera que cette propriété est plus forte que la compatibilité de la relation s:s avec les applications ëf et g (qui s'énonce, elle : si a ~:s b, alors ëf(a) ~:s ëf(b) et g(a) s:s g(b )). • Soit G une grille de rot La stabilité de G par ëf et g est suffisante pour que
e. • Le modèle standard (voir corrigé de l'exercice 15 du chapitre 3) admet une unique grille : considérons en effet deux couples (i, j) et (k, 1) d'entiers relatifs et posons m = sup(j -1, 0), n = sup(i- k, 0), p = sup(l- j, 0) et q = sup(k -i, 0) ; il est facile de vérifier qu'on a alors : Sd 18(s&"(i, j)) = sdP(s&q(k, 1)), ce qui montre que (i, j) ~:s (k, 1). Montrons maintenant une propriété qui nous sera utile dans les questions sui vantes : dans un modèle mt= < M, ëf, g > de T, toute grille G définit une L-structure e = < G ,ëftc ,gtc >isomorphe à la structure standard !Mo. Soit a un élément de G. On considère alors l'application cp del xl dans M qui, à chaque couple (i,j) d'entiers relatifs, associe l'élément
302
Solutions des exercices
qui est un modèle de T', la L-structure sous-jacente rot= < M , ëf, g> est évidemment un modèle de T, et les éléments X et p ne sont pas ~-équivalents, car, s'ils l'étaient, l'une des formules Gmnpq ne serait pas satisfaite dans rot'. Le modèle rot contient donc au moins deux grilles distinctes (celle de X et celle de ii) et n'est donc pas isomorphe au modèle standard. L'existence d'un modèle pour la théorie T' implique donc l'existence d'un modèle non standard pour la théorie T. Il ne nous reste plus qu'à montrer l'existence d'un modèle pour T', ce qui revient, en vertu du théorème de compacité, à montrer l'existence d'un modèle pour chaque partie finie de T'. Soit donc T 0 une partie finie de T'. Il existe un entier naturel N tel que : T 0 Ç T N =TU { Gmnpq ; sup(m,n,p,q) ~ N }. Appelons ~ la L'-structure obtenue en enrichissant la L-structure standard roto des interprétations suivantes pour À et p: X=(O,O), p=(N+l,N+l). Si rn, n, p et q sont des entiers naturels inférieurs ou égaux à N, on a Sd~sg"(X))=(n,m) alors que sdP(sgq(P))=(N+q+l,N+p+l), ce qui montre que la formule Gmnpq est satisfaite dans la structure~ qui est, de ce fait, un modèle de T N, et a fortiori de T 0 .
c) On considère la structure rotA=< MA, dA, gA>, où : -MA= A x 71. x 71.; - pour tout a (a,i
E
A, pour tous i, j
E
IN, dA((a,i,j)) = (a,i,j + 1) et gA((a,i,j)) =
+ l,j). On vérifie sans peine que rotA est un modèle de T ; par ailleurs, si (a,i,j) et (a',i',j')
sont des éléments de MA, alors (a,i,j) à a
E
~
(a',i',j') si et seulement si a =a' : l'application qui
A fait correspondre l'ensemble { (a,i,j) ; (i,j)
E 71. x
71.} est une bijection de A sur
l'ensembles des grilles de rotA. On peut naturellement considérer que cette question rend la précédente superflue, puisqu'on a ici fait plus que montrer l'existence de modèles non standard de T : on en a explicitement décrits. d) Soient rot=
e) Si on prend pour A un ensemble à un élément et pour B un ensemble à deux éléments, on voit que les modèles rotA et rotH, qui sont dénombrables, ne sont pas isomorphes: rotA n'a qu'une seule grille, rotH en a deux. Donc T n'est pas ~a-catégorique.
Chapitre 8
303
D'autre part, si rot est un modèle de Tet si on appelle C l'ensemble de ses grilles, on voit, d'après la question d), que rot est isomorphe à rote, et donc que :
card{M) = card{C
x "B. x
"B.)= sup(No, card{C)).
Il en résulte que le cardinal de l'ensemble des grilles d'un modèle dénombrable de T est, soit un entier strictement positif, soit No ; c'est donc un élément non nul de l'ensemble dénombrable w + 1 =wu {w}. L'application c de $ dans w + 1 qui à chaque élément de $ associe le cardinal de son ensemble de grilles est injective : en effet, si rotE.%, 'Jt E $ et c(rot) = c('Jt), alors, d'après la question d), rot et
msont
isomorphes, et d'après les propriétés de $, rot= m.
Cela prouve que le cardinal de $ est au plus No. Mais, on a vu que, pour tout élément x non nul de w + 1, rotx est un modèle de T dont l'ensemble de grilles a pour cardinal x. Les propriétés de $montrent qu'on peut y trouver un modèle isomorphe à rotx. L'application c est donc surjective sur
(w+1)-{0}. Le cardinal de $ est donc exactement No. f) Soit ,. un cardinal non dénombrable. On a vu que, si rot est un modèle de Tet si
C est l'ensemble de ses grilles, alors card{M) =sup{No, card{C)). Cela implique que, si la cardinalité de M est égale à ,. non dénombrable, la cardinalité de C est aussi égale à ,.. Donc, tous les modèles de cardinalité ,. sont isomorphes : T est catégorique en tout cardinal non dénombrable. 3.
On raisonne par induction sur t. Si t est une variable x, alors :
T 1-- Vxt
~
fex.
Si t = ftJu, et si on suppose (hypothèse d'induction) que T 1-- Vx u ~fa><, alors on a: T 1-- Vxt
~
ftJfn><, donc, d'après le deuxième ensemble de formules de T, si on pose
'Y= {Ja:
T 1-- Vxt
~
f...,x.
Ce raisonnement montre aussi qu'on peut prendre pour la variable x celle qui apparaît dans le terme t (il y en a une et une seule, puisqu'il n'y a que des symboles de fonction unaires, et pas de symboles de constante). b) En l'absence de symbole de relation autre que le symbole d'égalité, toute formule atomique s'écrit t ~ u, t et u étant des termes. Puisque chaque terme comporte exactement une variable, chaque formule atomique comporte au plus deux variables. Etant donnée une formule atomique F(vo,v 1], il existe donc deux termes t et u tels que F = t ~ u. On peut toujours supposer que v0 est la variable qui apparaît en t, et, en appelant x la variable de u, on a: x= v0 ou x= v1. Comme on l'a vu en a), il existe des
fJ et 1 de G tels que : T 1-- Vv 0 t ~ ff}vo et T 1-- Vx u ~ f...,x. PoSOIJS a= {r1o7.
éléments
304
Solutions des exercices
• Si x = v0 , on a :
T 1- Vvo (F
~ f~vo ~
f,vo) ;
et donc,
T 1- Vvo(F ~ vo ~ fuvo); si a= e, on obtient T 1- VvoVv1 F, et si a =F-e T 1- Vv0Vv1·F. • Si x = v11 on a : T 1- Vvo Vv1 (F ~ f~vo ~ f,vl) ; donc:
T 1- Vvo Vv1 (F
~
vo ~ favl)·
c) La vérification ne pose pas de problème et est laissée au lecteur. d) Pour montrer que 0( a) est une sous-structure de rot, on utilise le fait que, pour tous a, fJ dans G, rpp(rpa(a)) = 'PP·n(a). On vérifie sans problème que l'application qui à a fait correspondre fPa(a) est un monomorphisme de~ dans rot, et que son image est O(a). Montrons que Xy est une partition de M. On remarque d'abord que si bE O(a), alors a E O(b) (si b = fPa(a), alors a= rp
n-1
(b)), et O(a) = O(b). Supposons que O(a) et
O(b) ne soient pas disjoints; alors, si c appartient à leur intersection, O(a) = O(c) = O(b ). Deux éléments distincts de Xy sont donc disjoints, et, par ailleurs, il est bien clair que la réunion des éléments de Xy est M tout entier. On va maintenant supposer que les partitions Xy et XN, associées à deux modèles
rot et 'Jl, sont équipotentes. Grâce à l'axiome du choix, on peut trouver deux familles, (ax ; xE Xy) et (by; y E XN), telles que, pour tout xE Xy, axE x, et pour tout y E XN, ay E y. Il existe une bijection u de Xy sur XN, et l'application r, de {a x; xE Xy} sur { by ; y E XN }, définie par : pour tout xE Xy, r(ax) = ba
~'
et le théorème de Vaught ne peut pas être appliqué ; la
formule:
3x13x2 ... 3xK.(
0.
H~•
•Xi
~ Xj
1\
Vx \/_ x~ xi) 1<1<1t
est satisfaite dans le modèle ~mais n'est pas satisfaite dans un modèle infini de T (tel
Chapitre 8
305
que celui qu'on obtiendrait en prenant la réunion d'une infinité dénombrable de copies de à deux disjointes). La théorie T n'est donc pas complète dans ce cas. Cependant, on obtient une théorie complète en ajoutant à T les formules exprimant que l'ensemble de base est infini (voir 5.6, chapitre 3) : on est alors à nouveau dans les conditions d'application du théorème de Vaught. ~deux
4.
a) Pour k E IN- { 0,1 }, on note respectivement Fk et Gk les formules: 3v1 3v2 ... 3vk
0.
•RVïVj ; 1(;1(J(;k et Vvo3v13v2 ... 3vk( •Vï~VjA. 1(;t(;k Rvovi)· 1(;1(J(;k On pose par ailleurs : EQ = { Vvo Rvovo ; Vvo Vv1 (Rvov1 ===) Rv1vo) ; Vvo Vv1 Vv2 ((Rvov1 A. Rv1v2) ===) Rvov2)}. On peut prendre pour théorie T : T = EQ U { Fk ; k E IN-{0,1}} U { Gk ; k E IN-{0,1} }. (Le premier de ces ensembles exprime le fait que l'interprétation de R est une relation d'équivalence, le deuxième qu'elle admet une infinité de classes d'équivalence, et le troisième que chacune de ces classes est infinie.) Soient A et B deux ensembles non vides. On considère la L-structure rotA,B = < MA,B, RA,B >définie par: MA,B =A x B et pour tous (a,b), (a',b') appartenant à MA,B, RA, 8 ((a,b),(a',b')) si et seulement si a= a'. C'est un modèle de EQ, et si A et B sont tous les deux infinis, c'est un modèle de T.
0.
0
b) Supposons que T soit équivalente à un ensemble fini A de formules. Par compacité, chacune des formules de A est conséquence d'un sous-ensemble fini de T, et donc, A lui-même est conséquence d'un sous-ensemble fini S de T. Comme T est conséquence de A, T est conséquence de S, et T et S sont équivalentes. On peut trouver un entier N tel que S soit inclus dans T N = EQ U { Fk; 1 < k < N} U { Gk; 1 < k < N }. On obtient un contradiction en considérant des ensembles A et B de cardinalité N : rotA,B est un modèle de T N mais pas de T. c) Soit À un cardinal infini non dénombrable. Alors les structures rot>..,1.0 et ~,>.. sont deux modèles de T de cardinalité À qui ne sont pas isomorphes : chaque classe de la première est dénombrable, tandis que les classes de la seconde sont de cardinalité À: La théorie T n'est donc catégorique en aucun cardinal infini non dénombrable. On voit de plus que si rot' est un modèle de T et s'il existe une injection de rot>..,1.0 dans rot', alors rot' a au moins À classes : il ne peut donc pas exister d'injection élémentaire de rot>..,1.0 dans ~,>... De même s'il existe une injection de ~,>.. dans rot', alors certaines classes de rot' (celles contenant l'image d'un élément de~,>..) sont de cardinalité au moins À, et il n'y a donc pas d'injection élémentaire de~,>.. dans rot>..,1.0·
306
Solutions des exercices
Soient < M , RM > et < N , RN > deux modèles dénombrables de T. Les ensembles M/RM et N/RN étant infinis, donc dénombrables, on peut choisir une bijection cp: M/RM ~ N/RN. Les classes d'équivalence pour RM et pour RN sont également dénombrables ; on peut donc pour chaque i E M/RM, trouver une bijection fi dei sur cp(i). La réunion des fï, c'est-à-dire l'application f: M ~ N, définie par : pour tout a E M, f(a) =fcl(a) (cl(a) étant la classe de a modulo RM), est une bijection de M dans N et c'est un isomorphisme de < M , RM > sur < N , RN >. Ainsi, la théorie Test No-catégorique, et n'est catégorique en aucun cardinal infini autre que ~od) Ce qui vient d'être dit permet de conclure, avec le théorème de Vaught, queT est une théorie complète, après avoir remarqué qu'elle n'admet que des modèles infinis (ce qui est évident). e) Toute L-structure qui est un modèle de T peut être enrichie en une L00-structure qui est un modèle de T + : il suffit d'interpréter les symboles Cn, pour n E IN, par des éléments se trouvant dans des classes différentes (ce qui est possible puisqu'il y a une infinité de telles classes). Par exemple, si on part du modèle rotA,B construit à la question a), avec A et B infinis, on peut choisir des points an, pour n E IN, de A, deux à deux distincts, et un point b de B: on peut alors interpréter Cn par (an,b), et on obtient ainsi un modèle de T +· Pour montrer que T + n'est pas équivalente à une théorie finie, on montre que toute partie finie de T +admet un modèle fini ; on utilise pour cela un argument analogue à celui qui nous a servi a la question b). f) Le raisonnement utilisé à la question c) pour montrer que la théorie T n'est catégorique en aucun cardinal infini non dénombrable peut être repris pour aboutir à la même conclusion au sujet de la théorie T + : il suffit d'enrichir les deux modèles non isomorphes de cardinalité A qui y avaient été construits en des modèles de T +' de la manière indiquée au début de la question e) ; les L00-Structures ainsi obtenues ne peuvent pas être isomorphes. Mais, à la différence de T, la théorie T + n'est pas ~a-catégorique. En effet, prenons le modèle rotiN,IN de la question a) et enrichissons-le en une L00-structure de deux façons différentes : d'une part en interprétant, pour chaque n E IN, le symbole Cn par le couple (n,O) ; on obtient ainsi un modèle dénombrable de T + que l'on va appeler roto; d'autre part, en interprétant, pour chaque n E IN, le symbole Cn par le couple (n + 1,0) ; soit rot1 le modèle ainsi obtenu. Ces modèles ne peuvent pas être isomorphes pour la raison suivante : tout monomorphisme h de roto dans rot1 doit envoyer (n,O) sur (n + 1,0), et donc, pour tout n E IN, l'ensemble {xE IN x IN ; roto 1= Rcnx} = { (n,y) ; y E IN} dans l'ensemble {xE IN x IN; rot1 1= Rcnx} = { (n + 1,y); y E IN}; le point (0,0) n'appartient pas à l'image de h ; il n'y a donc pas de monomorphisme surjectif de roto sur rot1.
Chapitre 8
307
g) Soient R1 et R2 les interprétations de R dans mt1 et mt2 respectivement, et, pour tout p E IN, ap et bp les interprétations de Cp dans mt1 et mt2 respectivement. On définit d'abord une bijection h de MtfR1 sur M2/R 2 de sorte que, pour tout entier p, si 0 ~ p ~ n, h(cl(ap)) = cl(bp) (cl(x) désigne la classe de x modulo R1 ou R2 suivant le cas) (c'est évidemment possible) ; puis, pour chaque a E Mt/Rh on définit une bijection fa de a sur h(a); on exige de plus que, si a= cl(ap) (avec 0 ~ p ~ n), alors fa(ap) = bp. La réunion des applications fa, pour a E M1/R 1, est un isomorphisme de mt1 tLn sur mt2 tLn. On peut maintenant montrer par l'absurde que T + est une théorie complète dans Lao: si elle ne l'était pas, on pourrait trouver une formule close F de Lao, un modèle dénombrable mt1 de T U{ F} et un modèle dénombrable mt2 de TU { ·F }. La formule F ne fait intervenir qu'un nombre fini de symboles, donc il existe un entier n tel que FE Ln. On vient de voir que mt1 tLn et mt2 tLn sont isomorphes, ce qui est contradictoire avec le fait que l'un satisfait F et l'autre •F. 5. a) Soient ..\un cardinal infini et mt=< M, ... > une ..\-structure; M est donc un ensemble infini. La valeur dans mt de la formule x~ x est M. Ce n'est pas un ensemble fini ; c'est donc un ensemble de cardinal ..\. b) Dans une structure mt= < M, ... > de cardinal l'to, toute partie de M est : soit finie, soit de cardinal ~0 . C'est en particulier vrai pour les parties de M qui sont valeur dans mt d'une formule de 3"1 ; mt est donc une
~o-structure.
c) Soit ..\ un cardinal infini. Ajoutons à L un ensemble C de nouveaux symboles de constante, de cardinal ..\, et considérons, dans le langage enrichi, la théorie :
TF= TU { F(c] ; cE C} U{ •C ~ d ; c =1=d, c, dE C }. Il est clair que le réduit au langage L de tout modèle de TF est un modèle de T dans lequel la valeur de la formule F a un cardinal supérieur ou égal à ..\. Un argument élémentaire de compacité montre que TF a au moins un modèle : il suffit de montrer que pour tout sous-ensemble fini C0 de C, la théorie T'= TU { F[c) ; cE C0 } U{ •C ~ d ; c =1= d, c, d E C0 } a un modèle. Par hypothèse, il existe un modèle mt de T tel que Vai(F,mt) a une cardinalité supérieure à celle de C0 . On enrichit mt en un modèle de T' en interprétant les symboles appartenant à C0 par des points distincts de Vai(F,mt) (il y en a assez), les autres constantes de C étant interprétées arbitrairement. D'après le théorème de Lôwenheim-Skolem descendant, on peut trouver un modèle 'Jt de TF dont le cardinal est celui du langage enrichi, c'est-à-dire ..\ (L étant dénombrable). La valeur de F dans 'Jt ne peut être que de cardinal ..\. Le réduit de 'Jt au langage L est donc un modèle de T qui répond à la question. d) Soient ..\un cardinal infini et roto un modèle infini de T. Posons : A = { G E 3"1 ; Vai(G,rolo) est infini} ;
308
Solutions des exercices
pour chaque formule F de A, soit CF un ensemble de symboles de constante de cardinalité À, ces ensembles étant choisis de telle sorte que, si F et G sont deux éléments distincts de A, alors CF et Cc sont disjoints. Pour F E A, on considère la théorie suivante : TF= TU { F[c) ; cE CF} U { •C ~ d ; c =t: d, c, d E CF} et
T'= Th(rot) U
U
FEA
TF·
On va d'abord montrer que T' est consistante : par compacité, il suffit de montrer que si A0 est un sous-ensemble fini de A et si, pour tout F E A0 , DF est un sous-ensemble fini de de CF, alors T"
= Th(rot) U { F(c);
FE A0 etc EDF} U U
FEA 0
{•C ~ d ; c, dE DF etc =t:d}
a un modèle. On peut enrichir rot en un modèle de T" : il suffit d'interpréter, pour chaque F E A0 les symboles de DF (qui sont en nombre fini) par des points distincts de Vai(F,rot) (qui est un ensemble infini). On voit donc que T' a un modèle, et comme à la question c), il a un modèle de cardinalité À. Soient m' un tel modèle et m son réduit à L. On va montrer que m est un À-modèle: soit FE ..5'1 ; si FE A, alors, par construction, Vai(F,m) est de cardinalité À. Si F ~A, alors Vai(F,rot) a un nombre fini, disons n, d'éléments. Donc la formule close H = VvoVv1 ... Vvn ( 1\
o< ï
F[vi]
=::::)
V
o< i
Vi~ Vj)
est vraie dans rot; comme ma la même théorie, Vai(F ,m) est fini : m est un À-modèle. e) On raisonne par l'absurde: supposons que S ne soit pas complète ; il y a alors une formule close F de L telle que les théories S U {F} et SU {•F} soient toutes deux non contradictoires ; elles n'ont, comme S, que des modèles infinis ; d'après la question d), chacune de ces deux théories admet donc un À-modèle, quel que soit le cardinal infini À ; si on choisit À de telle sorte que tous les À-modèles de S soient isomorphes, on aboutit à une contradiction puisque, parmi tous ces À-modèles isomorphes, il faudrait qu'il y en ait au moins un qui satisfasse F et au moins un qui satisfasse •F, ce qui est impossible. La théorie S est donc complète.
>
6. a) La structure < 71., n ~----+ n + 1 est visiblement un modèle de T 11 que nous appellerons le modèle standard. Dans tout modèle rot= M , '{J > de T 11 on peut définir une relation d'équivalence ,., par : a ,., b si et seulement si il existe un entier n E IN tel que
<
a= ~(b) ou b =~(a). Appelons orbite de a la classe de a pour la relation ""· Chaque orbite définit une sous-structure de rot qui est un modèle de T 1 isomorphe au modèle standard. Pour que deux modèles de T 1 soient isomorphes, il faut et il suffit que leurs ensembles d'orbites soient équipotents. Si ,. est un cardinal infini non dénombrable, tout modèle de T 1 de cardinal,. a nécessairement un ensemble d'orbites de cardinal,., puisque chaque orbite est dénombrable. On en déduit que la théorie T 1 est ,.-catégorique et, puisque tous ses modèles sont infinis, qu'elle est complète (théorème de Vaught).
Chapitre 8
309
b) Un modèle rot= < M , cp, n > de T 2 est un modèle de T1 agrémenté d'un « coloriage» (en deux couleurs) pour les orbites : en effet, chaque orbite est : soit incluse
dans n (disons alors qu'elle est rouge), soit incluse dans M-Il (disons alors qu'elle est jaune) ; la formule Vx(Px (:=:::} Pfx) exclut toute autre possibilité; de plus, les deux couleurs sont effectivement représentées (3x Px, 3x-.Px). Pour que deux modèles de T2 soient isomorphes, il faut et il suffit que leurs ensembles d'orbites rouges soient équipotents, ainsi que leurs ensembles d'orbites jaunes. Soit K. un cardinal infini quelconque ; on obtient deux modèles de T 2 de cardinal K. non isomorphes en considérant, d'une part un modèle à une orbite rouge et K. orbites jaunes, et, d'autre part, un modèle à une orbite jaune et K. orbites rouges (de façon précise, on peut prendre M = "U. x K. ; cp= (n, a)~----+ (n + 1, a) ; !l1 = "U. x {0} et !l2 = "U. x {K.- {0}) ; puis :
rot1 = < M, cp, !l1 > et rot2 = < M, cp, S12 >). On voit queT 2 n'est pas K.-catégorique. c) Soient À un cardinal non dénombrable et rot=< M, cp, n >un À-modèle de T 2 (voir 1'exercice précédent, en particulier la question d)). La valeur de la formule Px dans rot n'est pas un ensemble fini (il y a au moins une orbite incluse dans n, c'est-à-dire une orbite rouge) ; on en déduit (parce que rot est un À-modèle) que Vai{Px,rot) est un ensemble de cardinal À. Un raisonnement analogue vaut pour la formule -.Px. Il en résulte que 1'ensemble des orbites rouges et 1'ensemble des orbites jaunes de rot sont de cardinal À (parce que chaque orbite est dénombrable alors que À ne l'est pas). On en déduit, comme dans la question b ), que tous les À-modèles de T 2 sont isomorphes, ce qui prouve, grâce à la dernière question de l'exercice 6, que T 2 est complète (il est clair que T 2 n'a pas de modèles finis). a) Les modèles de T 0 sont les ensembles totalement ordonnés dans lesquels tout élément admet un successeur (c'est-à-dire un plus petit majorant strict) et un prédécesseur (c'est-à-dire un plus grand minorant strict). Posons roto= < 2"'6., ~ > et rot1 = < "U., ~ > (2"'6. est 1'ensemble des entiers relatifs pairs) ; roto et rot1 sont clairement des modèles de T0 (dans roto, le successeur et le prédécesseur de l'élément 2k sont respectivement 2k + 2 et 2k- 2; dans rot1, le successeur et le prédécesseur de l'élément h sont respectivement h + 1 et h - 1) ; roto est une sous-structure de rot1, mais n'en est pas une sous-structure élémentaire, car, par exemple, la formule à paramètres dans roto : Vvo (Rv00 V R2v 0 ), est satisfaite dans roto mais pas dans rot1 (rot1 ne satisfait ni R10 ni R21). 7.
b) Pour chaque entier i E IN, posons : Ai = {x E Q ; 2 ix E "U.}, et 2li =
310
Solutions des exercices
Vlt1 (l'application qui, à tout a E 71., fait correspondre a/2i, est un isomorphisme de VJt1 sur 2li)· On est donc en présence d'une chaîne de modèles de T 0 . La réunion de cette chaîne est 1'ensemble A des rationnels dont le dénominateur est une puissance de deux, muni de l'ordre usuel ; ce n'est pas un modèle de T 0 car, quels que soient les éléments a et b de A tels que a < b, b ne saurait être le successeur de a, car le rationnel a! b, qui appartient à A, est strictement compris entre a et b. Grâce au théorème 5.6, nous pouvons donc conclure que T 0 n'est équivalente à aucune théorie V3 de L0. 8.
a) Soit VJt un modèle premier d'une théorie modèle-complète T. Etant donnés
deux modèles quelconques 2l et ~ de T, il existe des structures 2l 1 et ~~, respectivement isomorphes à 2l et ~ (donc modèles de T), telles que VJt Ç 2l 1 et VJt Ç ~ 1• Comme T est modèle-complète, on en déduit que ces inclusions sont élémentaires : VJt -< 2l 1 et VJt -< En particulier, 2l 1
1
isomorphe à 2l et
et~~ ~
à
sont élémentairement équivalentes à Vlt, donc 2l ~~
1
~ 1•
=~ • Or 2l est 1
; on en conclut que 2l =~- Ainsi, deux modèles quelconques
de T sont élémentairement équivalents : T est complète. b)
1°) implique 2° ). On va plutôt montrer que la négation de 2°) implique la
négation de 1°) : soient VJt un modèle de T et F une formule close de Ly (le langage L auquel on a ajouté un symbole de constante pour chaque point de M) tels que F ne soit pas conséquence de T U L\.(VJt) ; il existe donc un modèle Vlt 1 de TU L\.(VJt) U { -,F }, et on peut même supposer que VJt Ç Vlt 1 (voir 2.3). Pourtant, Vlt 1 n'est pas une extension élémentaire de VJt puisque F est satisfaite dans VJt mais pas dans Vlt 1 • 2°) implique 1° ). Supposons que VJt Ç Vlt 1 soient deux modèles de T. Alors Vlt 1,
lorsqu'on l'a enrichi en une Ly-structure de façon naturelle, est un modèle de TU L\.(VJt), donc un modèle de D(VJt). Il en résulte que VJt-< Vlt 1• 2°) implique 3°) est évident. 3°) implique 2° ). On démontre en fait que la négation de 2°) implique la négation
de 3°) : Soient VJt un modèle de T et F une formule de D(VJt) qui n'est pas conséquence de TU L\.(VJt). Il existe donc une formule G[vo,v 1, ... ,vn) de L et des éléments ao, a1,
••• ,
an
de M tels que F = G[a 0 ,a 11 •.• ,an] et VJt 1= F. Par le théorème 1.5, il existe une extension élémentaire dénombrable
roto de VJt contenant les éléments a0 , a1,
... ,
an. Comme F n'est
pas conséquence de TU L\.(VJt), ce n'est pas non plus une conséquence de TU L\.(rofo), qui en est un sous-ensemble. Or F E D(rofo) ; donc la condition 3°) n'est pas satisfaite. 1°) implique 4°) est évident.
4 °) implique 3°) se démontre comme 1°) implique 2° ), en ne choisissant que des modèles dénombrables, ce que le théorème de Lowenheim-Skolem permet de faire. c) Il suffit de montrer que la classe des modèles de Test close par union de chaîne (théorème 5.6). CommeT est modèle-complète, toute chaîne de modèles de T vérifie les hypothèses du théorème 2.9, et la réunion d'une telle chaîne est encore un modèle de T.
Chapitre 8
311
La réciproque est clairement fausse: la théorie vide est V3 mais n'est pas modèlecomplète ! Il est plus difficile de trouver une théorie V3 qui ne soit pas modèle-complète tout en étant complète : c'est l'objet de la dernière question de l'exercice 9. d) La condition (*) est vérifiée pour les formules existentielles (voir le théorème 5 .4), et aussi pour les formules équivalentes modulo T à une formule existentielle. Cela démontre le sens «si». Pour l'autre sens, on ajoute, comme il est suggéré, des nouveaux symboles de constante co, c1, .•. ,cn au langage, et on considère la théorie : \li= { G[co,c1, ... ,cn] ; G[vo,v, ... ,vn] est une formule universelle de Let
T 1- •F[co,Ct,···,cn]::::::::} G[co,c, ... ,cn] }. Soit 'Jt un modèle de TU \li. On va voir que 'Jt admet une extension 'Jt' satisfaisant •F[c 0,c, ... ,cn]· On utilise pour cela la méthode des diagrammes : il suffit de montrer que TU Ll('Jt) U {•F[c 0 ,c 1, ..• ,cn]} est consistante. On raisonne par l'absurde et on suppose le contraire : il existe une formule H de Ll('Jt) telle que :
T 1- H ::::::::} F[eo,c, ... ,cn]· Comme H appartient à Ll('Jt), il existe une formule K[v 0 ,v, ... ,vn . . p) àe L sans quantificateur et des points a1, a2, ... ,ap de N tels que H = K(c 0 ,c 1, ... ,cn,a 1,a 2,... ,ap). Comme les points ah pour i compris entre 1 et p, n'apparaissent ni dans T ni dans F[co,c 1, ... ,cn], on en déduit que:
T 1- Vv,Vv2 ... Vvp(K(eo,c, ... ,Cn,Vt,V2,···,vp)::::::::} F(Co,Ct, ... ,cn]) ou, ce qui est équivalent : T 1- •F[co,c 1, ••• ,cn] ::::::::} Vv,Vv2 ... Vvp•K(co,c 1, ... ,cn,v 1,v2,···,vp) On voit donc que la formule Vv,Vv2... Vvp•K[co,c, ... ,cn,v 1,v2,... ,vp) appartient à \li, donc est vraie dans 'Jt, ce qui est contradictoire avec le fait que K(c0 ,c, ... ,cn,a 1,a 2,... ,ap) appartient à Ll('Jt). Supposons maintenant que la formule F(vo,v, ... ,vn] satisfasse la condition ( *). Comme un modèle de TU {F(co,c 1, ... ,cn]} ne peut pas avoir d'extension satisfaisant •F(c 0,c 1, ... ,cn], il découle de ce qui précède queT U {F(c0,c, ... ,cn]} U \li est contradictoire. Par compacité, il existe donc une partie finie \li 0 de \li telle que •F(eo,c, ... ,cn] soit conséquence de \lio UT, et, puisque \lio est conséquence de TU {•F(c0,c, ... ,cn]}, on a:
T 1- ·F[co,c, ... ,cn]
(:::=:)
C~o G(eo,c, ... ,cn]·
Or, on sait que la conjonction de formules universelles est équivalente à une formule universelle, et que la négation d'une formule universelle est équivalente à une formule existentielle. Il existe donc une formule existentielle H(v 0 ,v 1, ... ,vn] deL telle que : T 1- F(eo,c, ... ,cn] (:::=:) H(Co,Ct, ... ,cn], et, puisque les constantes Ci n'apparaissent pas dans T,
T 1- VvoVvt···Vvn(F(vo,v, ... ,vn)
(:::=:)
H[vo,v1, ... ,vn]).
312
Solutions des exercices
e) Dire queT est modèle-complète, c'est dire que la condition(*) est vérifiée pour toute formule de L. D'après d), il suffit donc de montrer: la condition (*) est vérifiée pour toutes les formules si et seulement si elle est vérifiée pour toutes les formules universelles. Supposons que (*) est vérifiée pour les formules universelles ; on va montrer qu'elle est vérifiée pour toutes les formules. On raisonne par induction. Soit F[v0 ,v 1, ... ,vn] une formule de L, et on peut supposer qu'il n'y a pas d'autres symboles logiques que-,, A, V,
V apparaissant dans F[vo,v 11 ... ,vn]· Seul le cas où F[vo,v 1, ••• ,vn] = -,G[vo,v 11 ... ,vn] pose
problème. Par hypothèse d'induction, on sait qu'il existe une formule existentielle
H[vo,vl, ... ,vn] telle que T ~ VvoVvl···Vvn{H[vo,vl,···,vn] (:::::=:} G[vo,vl, ... ,vn]), donc T ~ VvoVvl···Vvn(-,H[vo,vl,···,vn] (:::::=:} -,G[vo,v 1, ... ,vn]). Or, -,H[v0,vh···,vn] est équivalente à une formule universelle, et, par hypothèse, il existe une formule existentielle K[vo,v 11 .•• ,vn] telle que : T ~ VvoVvl···Vvn(-,H[vo,vh···,vn] (:::::=:} K[vo,vh···,vn]), et il découle de tout ceci que :
T ~ VvoVv1... Vvn(F[vo,vl,···,vn] 9.
(:::::=:}
K[vo,v 1, ... ,vn]).
a) Dans l'exercice 8, d), on a prouvé l'équivalence entre 2") et une condition a
priori plus forte que 1") (aucune condition de cardinalité). On sait donc que 2") implique 1" ). Pour l'autre sens, on adapte cette preuve, en prenant soin de ne choisir que des modèles de cardinalité
À,
ce qui est possible grâce au théorème de Lôwenheim-Skolem.
b) On part d'un modèle rot de T de cardinalité
À.
On va d'abord construire une
1
extension rot de rot qui est un modèle de Tet qui satisfait la condition suivante: pour tous éléments a0 , a1, (1)
... ,an
de M, et pour tout modèle rot' de T qui est une
extension de rotl,
si rot1 t= F[ao,a 1, ... ,an], alors rot' t= F[ao,al,···,an]· Pour cela, on énumère l'ensemble des suites de longueur n d'éléments de M (cet ensemble est de cardinalité À) : { (a~,a!, ... ,a~) ; i E À} . Le modèle rot 1 sera la réunion d'une chaîne croissante de modèles de T, (roti ; i E À), que l'on va construire par induction sur i E À, de la façon suivante :
-roto =rot; -si i est un ordinal limite, roti = ~ ~ rotj ; on sait que roti est un modèle de T
J
parce que T est V3 (théorème 5 . 6) ; - supposons que i = j + 1 ; on distinguera deux cas :
a) si, pour toute extension mde rotj qui est modèle de T, mF F[aA,a{, ... ,a~], alors on pose roti = rotj ; on remarque que cette propriété sera vraie pour le modèle rot1 qu'on obtiendra à la fin de cette construction : pour toute extension mde rot1 qui est modèle de T,
mF F[aA,ai,. .. ,a~] ;
Chapitre 8
313
jJ) s'il existe une extension 91 de rolj qui est un modèle de T tel que 91 1= -,F[aA,aL. .. ,a~], alors roti sera un tel modèle ayant pour cardinalité À (il en existe d'après le théorème de Lowenheim-Skolem) ; notons que, puisque F est universelle, pour toute extension 91 de rolï (et en particulier pour le modèle rot 1 visé), 91 1= -,F[aA,ai,. .. ,a~]. En posant, comme annoncé, rot 1 = h{ rolj, on obtient un modèle de T de cardinalité À satisfaisant la propriété (1 ). On recommence : on construit par la même méthode un modèle rot 2 tel que : pour tous éléments ao, ah ... ,an de M1, pour tout modèle rot' de T qui est une extension de rot 2, si rot 2 1= F[ao,a 1,... ,an) alors rot' 1= F[ao,ah···,an], 3 puis un modèle rot , etc. Si on pose rot'= U rotk, on voit que rot' est un modèle de T kd~
(toujours parce que T est V3), de cardinalité À, et qu'il satisfait la condition ( •) requise par l'énoncé (parce qu'une suite finie d'éléments de la structure rot' se trouve déjà dans l'ensemble de base d'une des structures rotk). c) On vient de voir que si Test V3, alors il en existe un modèle rot de cardinalité A satisfaisant (•) ; si de plus T est À-catégorique, alors tous les modèles de cardinalité À sont isomorphes à rot, et satisfont aussi (•) : donc la condition 1") de a) est vérifiée pour toute formule universelle F[v0 ,v 1, ... ,vn]· Il découle alors du d) de l'exercice 8 que toute formule universelle est équivalente modulo T à une formule existentielle, et donc, avec le e) du même exercice, Test modèle-complète. d) La théorie T 0 est universelle, donc V3. Considérons les modèles suivants de T 0
:
roto=
•.. ,
Cn, ... et considérons la théorie : T = T o U { Vvo -,en ~ fvo ; n E IN} U { Cn 1= Cm ; n 1= rn, n, rn E IN}.
La théorie T est V3 parce qu'elle est universelle. Elle n'est pas modèle-complète : les
mo
structures et 911, d'ensembles de base respectifs IN x IN et 71. x IN, où l'interprétation de f est l'application (m,n) ~-----+(rn+ 1,n + 1), et celle de Cn le couple (n,O), sont des modèles de T qui vérifient ç 911 mais pas 911 (par exemple, la formule 3v0 fv 0 ~ (0,1), à paramètres dans est satisfaite dans 91h mais pas dans
mo mo,
mo-<
mo.
Le plus difficile est de montrer que T est complète. Nous nous contenterons de suggérer l'idée de la démonstration. Il s'agit de procéder à une analyse des modèles de T (comme nous l'avons déjà fait plusieurs fois) : un modèle rot=< M , f, (Cn)n~ > se décompose en f-orbites (une f-orbite est une classe d'équivalence pour la relation: il existe des entiers n et rn tels que fn (x) = fm(y)) ; il est facile de voir que, pour le langage
Solutions des exercices
314
initial (sans les Cn), chaque orbite est isomorphe : soit à < 71. ; n . . . . . n + 1 > (lorsque la restriction de fest bijective), soit à
m
existe alors un entier k et une formule G(vo,v 1,... ,vk] de L0 telle que F = G[c 0,c 1,... ,ck]. Puisque les suites (m 0 ,m 1,... ,mk) et (no,n 1,... ,nk) sont toutes les deux strictement croissantes, elles vérifient la conditions 2") ci-dessus, et donc aussi la condition 1") ; autrement dit : 2ll= G(c0 ,c11 ... ,ck] si et seulement si ~ 1= G[co,c 1,... ,ck]· Les structures rot et 'Jt vérifient les mêmes formules closes et sont donc élémentairement équivalentes : la théorie T est complète. b) Soit rot un modèle dénombrable de T. Alors rottL0 est un modèle dénombrable de A, et il existe donc un isomorphisme I{J de rottL 0 sur < Q , ~ >. On peut enrichir < Q , ~ > en une L-stucture rot1en décrétant que, pour tout n E IN, 1'interprétation de Cn est l'image par I{J de l'interprétation de Cn dans rot. Ainsi, on est assuré que I{J est un isomorphisme de rot sur rot1. Il ne reste plus qu'à montrer que rot1 est isomorphe à l'une des trois structures 2l, ~'out!. Appelons ~n l'interprétation de Cn dans rot1. Alors Il.= (~n ; nE IN) est une suite
Chapitre 8
315
de rationnels strictement croissante et trois cas peuvent se présenter : 1") La suite l!i n'est pas majorée. Voici un isomorphisme f/J de 2l sur rot1 : soit xE~;
-si x~ 0, alors t/J(x) =x+ 6o (ainsi f/J est une application croissante et bijective de l'intervalle ]-œ,t.ro] sur l'intervalle ]-œ,6o].) -si n ~x~ n + 1, alors t/J(x) = (l5n+1- l5n)(x- n) + l5n ( f/J est donc encore une application croissante de [an,an ..1] sur [l5n,l5n+ 1].
2") La suite l!i est majorée et sa borne supérieure est un nombre rationnel E. Cette fois-ci, c'est ~ qui est isomorphe à rot1 ; l'isomorphisme f/J de ~ sur rot1 est construit suivant le même principe : on met en bijection les intervalles que découpent sur ~
les sui tes (fJn ; n E IN) et ( l5n ; n E IN) respectivement :
Po
-----e
lf/J
~0
fJn -1
fJ1
0
fJn
- - - ---------------- ----e---lf/J
~1
lf/J
~n-1
lf/J
~n
lf/J
- - - ----e---E
/Jo, alors t/J(x) =x- fJo + 6o ; · fJ {J al ors ,./.! ) _ fJ l5n+1-_fJl5n (x - {J n) + un .: ; SI n ~ x ~ n+1, 'Y\ x n+1 n
- si x ~ -
-si x~ 0, t/J(x) =x+ E. 3") La suite l!i est majorée et sa borne supérieure est un nombre irrationnel
E.
On
définit l'application de C! dans rot1 par : - si x~ 7o, alors t/J(x) =x- 7o + 6o; · al OrS ,./.!) t5n+1-t5n (X- 7n ) + Un 1: _ - SI 7n ~X~ 7n+h "Y\X ; 7n+1 7n - il reste à définir f/J sur ~ n ]e, +œ] : il existe un isomorphisme 0 de cet intervalle sur~ n ]E,+œ] (parce qu'il s'agit de deux ordres totaux, denses, dénombrables, sans premier ni dernier élément). On pose t/J(x) = IJ(x). Il est à peu près évident que les trois structures 2l, ~' C! sont deux à deux non isomorphes : la conclusion est que T admet, à isomorphisme près, trois modèles dénombrables 2l, ~' C!. c) Découle à peu près immédiatement du lemme 2 de 1.3. d) Puisque T est modèle-complète, nous pouvons remplacer dans la question posée «extension élémentaire» par «extension (simple)». De plus, il suffit de montrer que 2l admet une extension isomorphe à ~' que que C! admet une extension isomorphe à ~.
~
admet une extension isomorphe à C! et
Au lieu de montrer que 2l admet une extension isomorphe à~' on peut montrer que ~ admet une sous-structure isomorphe à 2l (grâce à un raisonnement analogue à celui du lemme 2 .3) : si ~0 est la sous-structure de ~ dont la base est l'intervalle
316
Solutions des exercices
] - œ,O[, on voit que ~o est un modèle de T dans lequel la suite (fJn ; n E IN) n'est pas majorée, donc isomorphe à 2l d'après ce qui a été dit en b). De même, il y a une sous-structure ~ de (!: isomorphe à ~ ; c'est celle dont l'ensemble de base est ] -œ,e[ U[3,+œ[: ~est bien un modèle de T, et, dans~' la suite ( 'Yn ; n E IN) est majorée et admet une borne supérieure, à savoir 3. On peut par ailleurs trouver une extension dénombrable de (!: qui soit un modèle de T et dans laquelle la suite ( 'Yn ; n E IN) admette une borne supérieure : c'est la sous-structure de
<
structure M, R > sur elle-même. D'après les sixième et septième formules, pour tout élément x, 1(x) majore strictement x et est son successeur, c'est-à-dire le plus petit de ses majorants stricts. b) La vérification ne pose aucun problème. c) Le fait que la relation ( soit transitive et réflexive découle facilement des propriétés de f et deR Le fait que la relation ~soit une relation d'équivalence est à peu près évident. Si a ~ b, alors il existe des entiers n et p tels que f"(a) = fP(b ). On a alors : rot 1= -,Rf"+ 1a bA -,RfP+ 1ba, et il est faux que a ( b et que b « a. Réciproquement, si a ( b et b « a sont tous deux faux, alors il existe des entiers n et p tels que : rot 1= -,R f"a b A -,R fPb a . Supposons par exemple que a soit inférieur ou égal à b (pour R), et soit rn le plus petit entier tel que rot 1= -,R f"'a b ; rn est strictement positif et rot 1= Rrn-1a b . Comme f"'( a) est le successeur de :pn-1( a), on voit que f"'( a) = b (sinon, on aurait aussi rot 1= Rf"'a b) : on a bien:
a~
b. Comme f est bijective, on peut parler de son application réciproque T-1, et même
de l'application f" pour tout n E "U.. Soit a un élément de M. On vérifie que l'application de
"U.
dans M qui à n
E "U.
fait
correspondre f"(a) est un monomorphisme de "U. dans rot, et que son image est la classe de a relativement à ~. Il est par ailleurs facile de voir que cette classe est close par f, ce qui montre que c'est une sous-structure de rot. On voit que, si a, b et c sont des éléments de M, et si a
~
b, alors a« c si et
seulement si b « c : supposons par exemple que a = f"(b ), avec n E IN. Il est alors bien clair que «pour tout p E IN, R(fP(b ),c) » équivaut à «pour tout p E IN, R(f"+P(b ),c) »,
Chapitre 8
317
qui est lui-même équivalent à« pour tout p E IN, R(l'P(a),c) » : ainsi, on peut définir une relation binaire <1 sur M/~ par : pour tous a, b appartenant à M, af~ <1 b/~ si et seulement si a « b. Le fait que la relation <1 soit transitive et antiréflexive découle immédiatement des propriétés correspondantes de la relation «. Pour montrer que <1 est une relation d'ordre total strict, il suffit de voir que, si a et fJ sont des éléments de Mf~, alors a= fJ ou a <1 fJ ou fJ <1 a; autrement dit, que si a et b sont des éléments de M, alors a
~
bou a « b ou b «a : c'est ce qu'on a fait au début de cette question. Soient donc C l'ensemble M/~ et X=< C, <1 >.Pour chaque a E C, choisissons un
point Ca dans la classe a. Alors 1' application cp de rotx dans rot définie par : pour tout a E C, pour tout n E "''., cp( (a, n)) = f" (ca) est un isomorphisme, comme cela se vérifie sans problème. d) On laisse le lecteur vérifier les faits suivants : • si cp est un isomorphisme entre les ensembles totalement ordonnés X et Y, alors l'application t/J de rotx sur roty définie par: pour tout a EX, pour tout n E "'., t/J((a,n)) = (cp(a),n) est un isomorphisme; • si t/J est un isomorphisme de rotx sur roty, alors l'ensemble { (a,b); il existe net p dans"''. tels que t/J((a,n)) = (b,p)} est le graphe d'un isomorphisme de X sur Y. Si À est un cardinal infini, on peut donc trouver deux modèles de A de cardinalité À qui ne sont pas isomorphes: par exemple X= À et Y= À U {À } sont des ensembles totalement ordonnés non isomorphes (le premier ne possède pas d'élémenent maximum, le second en a un) de cardinalité les deux de cardinalité
À:
À.
Donc rotx et roty ne sont pas isomorphes et sont tous
A n'est catégorique en aucun cardinal infini.
e) 1• ) On utilise la méthode des diagrammes : dans le langage LM, on
considère D(rot), le diagramme complet de rot (voir 2. 3) ; on ajoute un symbole de constante c, et on considère la théorie : T = D(rot) U { -,Rcf"~; nE IN} U { -,R.b_f"c; nE IN}. On montre, à l'aide du théorème de compacité, que cette théorie est consistante: si T 0 est un sous-ensemble fini de T, il existe un entier k tel que T 0 soit inclus dans :
D(rot) U {-,Rcf"~; 0 ~ n ~ k} U {-,R.b_f"c; 0 ~ n ~ k} et pour avoir un modèle de T 0 , il suffit d'enrichir rot en interprétant c par fk+ 1(a ). On a vu que T admet un modèle rot1 dont le réduit à L est une extension élémentaire de rot. Si est 1'interprétation de c dans rot, on a bien : a « et « b.
c
c c
2" ) On fait un raisonnement analogue. Il suffit de montrer que la théorie
T 1 = D(rot) U { -,Rcf"~; nE IN} U { ·R~f"b; nE IN}, dans un langage enrichi de deux nouveaux symboles de constante b et c, est consistante. 3" ) On laisse cette vérification au lecteur.
318
Solutions des exercices 4 o) Si, pour un indice i compris entre 1 et n, c ~ ai, alors il existe un
élément p de
71.
tel que c = fP(a i). En se servant de 3° ), on voit alors que :
P( (rot, a 1,a2, ... ,an ,c ),(~ b1, b2, ... ,bn ,fP(b i) ). Dans le cas contraire, on distinguera plusieurs cas : • Pour tout i compris entre 0 et n, c
suppose
G[v 1,v2, ... ,vn]
donc
P((rot,a 1,a 2,... ,an),(~b 1 ,b 2 , ... ,bn)) est vérifiée, que et que rot F G[a 1,a2, ... ,an]. Il existe donc un point c dans
que
= 3voF[vo,v1,... ,vn]
rot tel que rot F F[c,a 1,a2, ... ,an]. D'après la question 4 ° ), il existe m' >-met d dans m' tels que P((rot,a 11 a 2, ... ,an,c),(m',b 1,b 2, ... ,bn,d)) ; par hypothèse d'induction, on a: m• F F[c,bl,b2, ... ,bn], et donc
m• F G[b1,b2, ... ,bn].
Comme m• est une extension élémentaire de
~
on a aussi :
mF G[b 11 b2, ... ,bn]. 6°) Soient rot et m deux modèles de A. En appliquant la résultat ci-dessus
à ces deux modèles et à la suite vide, on voit que rot et m satisfont les mêmes formules closes : deux modèles quelconques de A sont donc élémentairement équivalents et T est complète.
12
On va utiliser le lemme 2 de 1. 3. Ajoutons n symboles de constante co, c1,. .. ,cn au langage L et considérons la théorie :
() = {H[c0 ,c11 ... ,cn]
; H[vo,v 1, ... ,vn] est une formule sans quantificateur de L et
T 1- F[co,c1, ... ,cn]:::::} H[co,ch···,cn] }. Soit rot un modèle de () U T. Considérons la théorie :
Chapitre 8
319
'1 = {K[co,c 1, ... ,cn] ; K[vo,v 1, .•• ,vn] est une formule sans quantificateur de L et
!ln 1= K[co,c,, ... ,cn] }. On montre que '1 UT u { F[eo,c1, •.. ,cn]} est consistant : sinon, il existe un sous-ensemble fini '10 de '1 tel que 'loU TU { F[c0 ,c 11 ••• ,cn]} est contradictoire. Il existe une formule sans quantificateur de L, J[v 0 ,v 1, ... ,vn], telle que : J[co,c 11 ••• ,cn] = K~o K, et T 1- F[co,cll···,cn] ~ -,J[co,c,, ... ,cn]·
Il en résulte que -,J[eo,c1, ... ,cn] appartient à •, ce qui est absurde puisque !ln est un modèle de • et satisfait J[eo,c1, .•• ,cn]· Il existe donc un modèle mde • uT u { F[co,Ch···,cn] }. Les interprétations de Co, c,, ... , Cn dans !lJt et 9t respectivement satisfont les mêmes formules atomiques : d'après le lemme 2 de 1.3, elles satisfont les mêmes formules, et !ln 1= F[c0 ,c 11 ••• ,cn]. On a donc montré que tout modèle de • UT satisfait F[co,c 11 ••• ,cn]· On se sert encore du théorème de compacité : il existe un sous-ensemble fini •o de • tel que F[eo,c11 .•• ,cn] soit conséquence de •o UT. Soit H[vo,v 11 ••• ,vn) un formule sans quantificateur de L telle que Alors T 1- F[co,c1, ... ,cn] ~ H[eo,c11 ... ,cn], et donc
T 1- VvoVv, Vvn(F[vo,vh ... ,vn]
~
H[vo,v,, ... ,vn]}.
REMARQUE: Lorsque toute formule est équivalente, modulo T, à une formule sans quantificateur, on dit que T admet l'élimination des quantificateurs. Le raisonnement que l'on vient de présenter s'applique dans une situation beaucoup plus générale. Il montre en fait le théorème suivant : supposons que, pour tous modèles !ln et mde T et pour toutes suites (ao,a 11 ... ,an) et (bo,b 11 ... ,bn) de M et N respectivement, si (ao,a 11 ... ,an) et (bo,b,, ... ,bn) satisfont les mêmes formules atomiques dans !ln et m respectivement, alors elles satisfont les mêmes formules. Alors T admet 1'élimination des quantificateurs. Par exemple, la théorie considérée à l'exercice 11 admet l'élimination des quantificateurs (grâce à la propriété démontrée en e), 5") de cet exercice). 13. Soit T une théorie exprimée dans un langage L qui est équivalente à une théorie finie. La théorie T est donc équivalente à une seule formule close de L, que nous appellerons F. La classe des L-structures qui ne sont pas modèles de T est exactement la classe des L-structures qui sont modèles de ·F, et par le théorème de Los (théorème 4. 3), cette classe est close par ultraproduit. Réciproquement, supposons que T ne soit pas équivalente à une théorie finie. Pour chaque sous-ensemble fini X de T, il existe donc une L-structure !mx qui est modèle de X mais pas de T. Appelons P l'ensemble des sous-ensembles finis de T et, pour chaque X de P, posons: O(X)={YEP;XÇY}.
320
Solutions des exercices
Si Xh X2, ... , Xn, sont des éléments de P, alors O(X1) n O(X2) n ... n O(Xn) contient X1 U X2 U ... U Xn et n'est donc pas vide. D'après le théorème 5.13 du chapitre 2, il existe un ultrafiltre U contenant l'ensemble { O(X) ; XE P }. On va démontrer que:
n
rot= XE.P rotx/ u est un modèle de T. En effet, soit F une formule de T. Alors, on a: 0({ F }) E U , 0( { F}) Ç {X E P ; rotx 1= F }, et donc {XE P ; rotx 1= F} E U. Ceci montre bien, avec le théorème de Los, que rot satisfait F. On a donc trouvé des structures qui ne sont pas modèles de Tet dont un ultraproduit est un modèle de T. a) On a remarqué (exemple 5.10) que la théorie des anneaux peut s'axiomatiser par des formules de Horn : donc un produit réduit de corps est un anneau. S'il s'agit d'un 14.
ultraproduit, par le théorème de Los, c'est un corps. Soient :Y un filtre sur un ensemble 1, et, pour chaque i E 1, Ki un corps. Posons :
n
A= lE. 1 Kï/.:7. Suppsosons que :Y ne soit pas un ultrafiltre. Il existe donc un sous-ensemble 10 de 1 tel que, ni 10 , ni 1-1 0 , n'appartiennent à .:7. Pour chaque élément ide 1, appelons Oi et 1 iles
éléments neutres respectifs de l'addition et de la multiplication dans le corps Ki. Considérons les fonctions ao et a 1de 1 dans
n Ki définies de la façon suivante: lE. 1
• si i E 10 , alors ao(i) = Oi et a1(i) = 1i ; • si i ~ 10 , alors a0 (i) = 1 i et a1(i) = Oi. Soient ao et a 1 les éléments correspondants dans A. Alors, puisque { i E 1 ; Ki 1= a 0 (i) ~ Oi} = lo ~ :Y par définition du produit réduit, A Il ao ~ 0; de même, A Il a 1 ~O. En revanche { i E 1 ; Ki 1= a0(i) et donc A 1= a 0
x
x
a1(i) ~ Oi} = 1,
a 1 ~ 0 : l'anneau A n'est pas intègre ; ce n'est pas un corps.
b) Découle immédiatement des définitions. 15.
a) En reprenant les notations et la méthode de l'exercice 18 du chapitre 3, on voit
facilement que la théorie Th(< a,~>) U { Cn+l < Cn ; n E IN} est consistante. b) Par le théorème de Lôwenheim-Skolem, on sait qu'il existe un sous-ensemble dénombrable X0 de N1 tel que < X0 ,~ > -< < N,~ >. Posons c:to = sup Xo. On peut alors trouver un sous-ensemble dénombrable X1 de N1 tel que c:to Ç Xh et
On continue et on définit par récurrence une suite (Xn ; n E IN) de sous-ensembles dénombrables de N1 telle que, si an= sup Xn, an ÇXn+l et
(théorème 2.9), on voit que< a,~> -<
321
Chapitre 8
c) On choisit un ordinal dénombrable a tel que < a, ~ > -< < N1 , ~ >, puis on refait la même construction qu'en b) en partant d'un ensemble dénombrable X0 tel que
a E Xo. On obtient un autre ordinal dénombrable {J, strictement supérieur à a, tel que : < {J, ~ > -< < N1, ~ >. Ilenrésulteque-< <{J,~>.
En fait, cet argument (avec le théorème de l'union de chaîne) montre que l'ensemble des ordinaux a tels que < a,~ > cofinal de N1 (voir l'exercice 20 du chapitre 7). 16.
-< < N1 , ~ > est un sous-ensemble clos
a) Comme chaque point de 'Jt est l'interprétation d'un symbole de constante, T
est en fait le diagramme complet de 'Jt (ou plus exactement celui du réduit de 'Jt au langage L privé de ses symboles de constante). On en déduit à l'aide de 2.3 que tout modèle de Test isomorphe à une extension élémentaire de 'Jt. b) Soient A et B deux sous-ensembles de IN tels que A Ç B et A E :?a· Alors : 'Jt 1= Vvo{A.vo :=:::} ~vo), donc, rot 1= Vvo{A.vo :=:::} ~vo), et puisque rot 1= A.a, on en déduit rot 1=
~a,
et BE :?a.
Supposons maintenant que A et B appartiennent tous les deux à :?a. Posons
C = A n B. Alors : 'Jt 1= Vvo((A.vo A ~vo)
Çvo), d'où rot 1= Vvo((A.vo A ~vo) :=:::} Çvo), et, puisque rot 1= A.a A ~a, on voit que rot 1= Ça, et C E :?a. Par ailleurs, la formule Vv0 v0 ~ .0. est vraie dans 'Jt, donc dans rot, et il en résulte que 0 ~ :?a. :=:::}
Ceci montre donc que :?a est un filtre. Pour montrer que c'est un ultrafiltre, on se donne un sous-ensemble A de IN et on appelle B son complémentaire. Alors 'Jt 1= Vvo{Avo V ~vo), et donc rot 1= Aa V fta, ce qui montre que soit A, soit B, appartient à :?a. On montre que l'ultrafiltre :?a est non trivial avec le lemme 5.10 du chapitre 2 : si A = {n} (n E IN)' alors m1= Vvo{A.vo :=:::} Vo ~ n.). Comme rot hl a ~ n.' on voit que A ~ :? . c) Si fr{n) =f5{n) pour une infinité d'entiers n, alors Pr{n)/qr{n) = p5 {n)/q 5{n) pour une infinité d'entiers n : les suites convergentes {Pr{n)/qr{n) ; n E IN) et (p 5 (n)/q 5{n); nE IN) ont une sous-suite commune; elles ont donc même limite et r =s. d) Soit rot un modèle de T non isomorphe à 'Jt. On veut montrer que la cardinalité de M est au moins
1'o. D'après a), on peut supposer que rot est une extension élémentaire
de 'Jt. Soit a un point de rot n'appartenant pas à IN. On va prouver que, si rets sont deux réels positifs distincts, alors :
rot 1= -.fra ~ fsa, ce qui montrera que l'application deR+ dans M qui à. r fait correspondre l'interprétation de fr{a) est injective, et donc que la cardinalité de M est au moins
1-o. Soit C l'ensemble
322
Solutions des exercices
des entiers n tels que fr(n) =fs(n). On vient de voir que C est fini, et donc, d'après b), C ~ !Ya (parce qu'un ultrafiltre non trivial ne contient pas d'ensemble fini) et !Dt 1= -,Ça. D'autre part, 'Jt 1= Vvo(frvo ~ fsvo (:::::=::} Çvo) et donc,
!Dt 1= Vvo(frvo ~ fsvo (:::::=::} Çvo), ce qui montre bien que !Dt 1= -,fra ~ fsa. Tous les modèles dénombrables de T sont donc isomorphes à 'Jt, donc T est No-catégorique. e) Le modèle m n'a qu'un seul enrichissement 'Jt' en une L'-structure qui soit un modèle de T' : celui où le symbole X est interprété par l'ensemble IN tout entier. Tout modèle dénombrable de T'est alors isomorphe à 'Jt' (son L-réduit étant isomorphe à 'Jt). Pourtant T', qui n'admet évidemment pas de modèles finis, n'est pas complète : la formule Vv0 Xv0 est vraie dans 'Jt', mais on peut trouver un modèle de T' dans lequel elle n'est pas vérifiée: on choisit une extension élémentaire propre demet on interprète X par l'ensemble IN. Cet exemple montre que, dans le théorème de Vaught (2.6), on ne peut pas se passer de l'hypothèse: « r;, supérieur ou égal à card(L) ».
BIBLIOGRAPHIE
Nous proposons tout d'abord une liste (certainement très incomplète) d'ouvrages traitant de logique mathématique. Il s'agit soit de traités généraux sur la logique, soit de livres plus spécialisés sur certains des sujets que nous avons abordés. Une exception, toutefois: le livre édité sous la direction de J. Barwise, dont l'ambition était de faire le point, à l'époque où il a été publié, des connaissances en logique.
J.P. Azra et B. Jaulin, Récursivité, Gauthiers-Villars, 1973. J. Barwise (sous la direction de), Handbook of mathematicallogic, North-Rolland, 1977. J.L. Bell et A.B. Machover, A course in mathematicallogic, North-Rolland, 1977. J.L. Bell et A.B. Slomson, Models and ultraproducts, North-Rolland, 1971. E.W. Beth, Formal methods, D. Reidel publishing company, 1962. C.C. Chang et J.H. Keisler, Model Theory, North-Rolland, 1973. A. Church, Introduction to mathematicallogic, Princeton University Press, 1956. P. Cohen, Set theory and the continuum hypothesis, W.A. Benjamin, 1966. H. Curry, Foundation of mathematicallogic, McGraw-Hill, 1963. D. van Dalen, Logic and structures, Springer-Verlag, 1983. M. Davis, Computability and unsolvability, McGraw- Hill, 1958. F. Drake, Set theory, North-Rolland, 1979. H.D. Ebbinghaus, J. Flumet W. Thomas, Mathematicallogic, Springer-Verlag, 1984. R. Fraïssé, Cours de logique mathématique, Gauthier-Villars, 1972.
J.Y. Girard, Proof theory, Bibliopolis (Naples), 1987. P. Halmos, Lectures on Boolean algebras, D. Van Nostrand, 1963. P. Halmos, Naïve set theory, D. Van Nostrand, 1960. Traduction française parue chez Gauthier-Villars. D. Hilbert et W. Ackermann, Mathematicallogic, Chelsea publishing company, 1950. K. Hrbacek et T. Jech, Introduction to set theory, Marcel Dekker (New York, Basel), 1984.
324
Bibliographie
T. Jech, Set theory, Academie Press, 1978. S. Kleene, Logique mathématique (traduit de l'anglais), Armand Colin, 1971 ; réédité chez J. Gabay en 1987. G. Kreisel et J.L. Krivine, Eléments de logique mathématique, Dunod, 1966. J.L. Krivine, Théorie axiomatique des ensembles, PUF, 1969. K. Kunen, Set theory, North-Rolland, 1985. R. Lalement, Logique, réduction, résolution, Masson 1990. R.C. Lyndon, Notes on logic D. Van Nostrand, 1966. A.l. Mal'cev, The metamathematics of algebraic systems, North-Rolland, 1971 Y. Manin, A course in mathematicallogic (traduit du russe), Springer-Verlag, 1977. J. Malitz, An introduction to mathematicallogic, Springer-Verlag, 1979. M. Margenstem, Langage Pascal et logique du premier ordre, Masson, 1989 et 1990. E. Mendelson, Introduction to mathematicallogic, D. Van Nostrand, 1964. P.S. Novikov, Introduction à la logique mathématique (traduit du russe), Dunod, 1964. P. Odifreddi, Classical recursion theory, North Rolland, 1989. J.F. Pabion, Logique mathématique, Hermann, 1976. R. Péter, Recursive functions, Academie Press, 1967. B. Poizat, Cours de théorie des modèles, Nur al-Mantiq wal-Ma'rifah (diffusé par Offilib, Paris), 1985. D. Ponasse, Logique mathématique, O.C.D.L., 1967. W. Quine, Mathematicallogic, Harvard University Press, 1951. W. Quine, Méthodes de logique, Rinehart and Winston, 1950 et 1972. Traduction française parue chez Armand Colin, 1973. H. R.asiowa et R. Sikorski, The mathematics of metamathematics, PWN-Polish Scientific Publishers, 1963. A. Robinson, Complete theories, North-Rolland, 1956. A. Robinson, Introduction to madel theory and to the metamathematics of algebra, North-Rolland, 1974. H. Rogers, Theory of recursive functions and effective computability, McGraw-Hill, 1967. J.B. Rosser, Logic for mathematicians, McGraw-Hill, 1953. J.R. Shoenfield, Mathematicallogic, Addison-Wesley, 1967. W. Sierpinski, Cardinal and ordinal numbers, PWN-Polish Scientific Publishers, 1965.
Bibliographie
325
R. Sikorski, Boolean algebras, Springer-Verlag, 1960. R. Smullyan, First order logic, Springer-Verlag, 1968. R.l. Soare, Recursively enumerable sets and degrees, Springer-Verlag, 1987.
J. Stern, Fondements mathématiques de l'informatique, McGraw-Hill, 1990. P. Sup:I>ffi, Axiomatic set theory, D. Van Nostrand, 1960. P. Sup:I>ffi, Introduction to logic, D. Van Nostrand, 1957. K. Shütte, Proof theory, Springer-Verlag, 1977.
A. Tarski, Introduction to logic and to the methodology of deductive sciences, Oxford University Press, 1965. A. Tarski, A. Mostowski, R. RDbinson, Undecidable theories, North-Rolland, 1953. R.L. Vaught, Set theory, Birkhaüser, 1985.
Pour compléter cette bibliographie, le lecteur curieux ou éclectique trouvera ci-dessous des références de livres ayant un intérêt historique et d'ouvrages à caractère récréatif, tous en rapport avec notre propos.
L. Carroll, Logique sans peine (traduit de l'anglais), Hermann, 1972. M. Gardner, La magie des paradoxes, Bibliothèque POUR LA SCIENCE (diffusion Belin), 1980. K. Gôdel, Collected works, publié sous la direction de S. Feferman, Oxford University Press, 1986.
J. van Heijenoort, From Frege to Godel, a source book in mathematical logic (1879-1931), Harvard University Press, 1967.
A. Hodges, Alan Turing ou l'énigme de l'intelligence (traduit de l'anglais), Bibliothèque scientifique Payot, 1988. R. Smullyan, Le livre qui rend fou (traduit de l'anglais), Bordas-Dunod, 1984.
J. Venn, Symbolic logic, Chelsea publishing company, 1971 (première édition: 1881).
NOTATIONS
Tome!
A
Mode d'emploi
............................
17
. . • • . . . • • • . . . • • . • • • . . • . • . . .
17
==}
(;;;)
............................
11
~
© IN 71. 71./ Q IR
............................ ............................ •. . . •. . •• •• •. . •• ••••. ••. . . . . n71. . . . . . . . . . . . . . . . . . • • . . . . . . . . •. . . . . . . . . . . . . . . . . . . . . . . . . • •• •••. . . • ••••. • ••••. . ••• •• •
11
·························· ) .............................
17 17
12
( .............................
17
12
:7
12 12
( :Yn)ntW · · · · · · · · · · · · · · · ·. ·.. . . . 19
12
dom(f) . . . . . . . . . . . . . . . . . . . . . . . . 12 lm(f) . . . . . . . . . . . . . . . . . . . . . . . . . 12 ft A
••••••••••••••••••••••••••
f[A)
.......................... ......................... .........................
f-1[8) ~(E)
f .............................
12 12 12 12 12 12
f-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . lg[m) . . . . . . . . . . . . . . . . . . . . . . . . . 12 .it(E)
. . . . . . . . . . . . . . . . . . . . . . . . 12
. . . . . . . . . . . . . . . . . . . . . . . . . . . 18
h[F) . . . . . . . . . . . . . . . . . . . . . . . . . . 20 o[M) . . . . . . . . . . . . . . . . . . . . . . . . . . 25 f[M) . . . . . . . . . . . . . . . . . . . . . . . . . . 25
sf(F)
. . . . . . . . . . . . . . . . . . . . . . . . . 29 F[A1,A2, ... ,An) . . . . . . . . . . . . . . . . . . 29 Fc/A 1,G 2 /A 2,···,Gn/An
F[Gh···,Gn,Bh···,Bm) . . . . . . . . . . . . . 30 D{F) . . . . . . . . . . . . . . . . . . . . . . . . . . 35
r* . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
If* . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 N
•
ci(F)
1 0 Chapitre 1
· · · · · · · · · · · · 30
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
.........................
39 39
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 ............................ 39
T
••••••••••••••••••••••••••••
42
.1.
••••••••••••••••••••••••••••
42
............................
17
/7jrw . . . . . . . . . . . . . . . . . . . . . . . . . . 43
v ............................
17
(FA GA H) . . . . . . . . . . . . . . . . . . . . 45
328
(F
Notations
v G V H)
....................
45
1\ FJ·
. . . . . . . . . . . . . . . . . . . . . . . . 45
V
........................ 45
jEI jE.I
FJ·
1 (~n Gk 1\ F FE. X
· · · · · · · · · · · · · · · · · ·....
45
. . . . . . . . . . . . . . . . . . . . . . . . . 45
1\: 1 ~ .. ·En
••· · ••· · ••· •· ••· ••••••
ha
........................... 109
~r(E)
........................ 110 la . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Fa . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
S( .A) . . . . . . . . . . . . . . . . . . . . . . . . .6. . . . . . . . . . . . . . . . . . . . . . . . . . . . Hom(.A,.A') .................. C0 (S( .A'),S( .A)) ...............
136 136
46
EA ........................... 46 L\(F) . . . . . . . . . . . . . . . . . . . . . . . . . 46
Chapitre 3
46
1/)F
•••••••••••••••••••••••••••
Fx
........................... 48
#
...........................
49
{:::/
...........................
49
$
..........................
49
t ............................
49
<= ...........................
49
•
49
. ...........................
121 130
.A~*
G . . . . . . . . . . . . . . . . . . . . . . . 59 .A IF" G . . . . . . . . . . . . . . . . . . . . . . . 59 .6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
li, . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
r ...........................
139
)
............................ 140
(
............................ 140
,
............................ 140
1\
. . . . . . . . . . . . . . . . • • . . . • . . . . . . 140
v ............................
140
::::::) ........................... 140 <===:::>
• • • • • • • • • • • • • • • • • • • • • • • • • • 140
v ............................
140
3 ............................ 140 ~
........................... 140
( 3"n)n~* · · · · · · · · · · · · · · . . . . . . . . 140 (.9tn)n~*
Chapitre 2
=1 ............................
82
.A/1 . . . . . . . . . . . . . . . . . . . . . . . . . . 83
.A/=1 . . . . . . . . . . . . . . . . . . . . . . . . . L\(F)
83
. . . . . .. . . . .. . .. . .. .. . . . .. 90
..................... 140
~
............................ 140
T
. . . . . . . . • . . . • • . . . . . • . · .•• • · ·
140
J.
. • . • • . • . . . . . • . . . . • • . . . . • • • • •
140
9(L) ......................... 142 t[Vi 1,Vj 2 , ... ,Vj n]
· •· •· •· · · · ••· · · ••
147
· · · · · · · · · · · · 148
............................
92
tu 1/w1,uiw2,... ,uk/wk
............................
92
••••••..........•••••••..•.•
92
-r ............................
96
t[z,z2, ... ,zh,u 1,u2, ... ,uk) . . . . . . . . . . 148 At(L) . . . . . . . . . . . . . . . . . . . . . . . . 150 3"(L) ......................... 150
~
v
jt(X) hl)
........................ 108
........................... 108
h(F) . . . . . . . . . . . . . . . . . . . . . . . . . . 151 sf(F) . . . . . . . . . . . . . . . . . . . . . . . . . 152
Notations
F[vi ,vi 1
2
, ... ,Vin)
329
. . . . . . . . . . . . . . . . . 153
Fu 1/w1,uiw2,... ,uk/wk · · · · · · · · · · · · 155 F[zhz2, ... ,zh,uhu2, ... ,uk) . . . . . . . . . . 156 J[F,G,H) .. .. .. .. .. .. .. .. .. .. .. 158
c-mt .......................... 160 rmt . . . . . . . . . . . . . . . . . . . . . . . . . . 16o 'Rmt .......................... 160 < M, R"mt, rmt,c-mt> ............ 161
> ....................
rmt[ao,al, ... ,an-1] ............... 168 • • • • • • • • • • • • • • • • • • • • • • • • • • • • 170
L\(rot) .. .. .. .. .. .. .. .. .. .. .. .. 209 D(rot) ........................ 209 3! ........................... 217 Sp(f) ......................... 220
161
tmt[wo-+ao,wl-+ah ... ,wn-1-+an-1] .. 168 1=
............................ 207 rot* .......................... 207 ~
Chapitre 4
1- . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 T 1- F ........................ 232 1- F . . . . . . . . . . . . . . . . . . . . . . . . . . 232
170
si ........................... 249
rot 1= F[ao,ah ... ,an-1] . . . . . . . . . . . . 171 tl . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
::::::} (81 V 82 V... V 8m) . . . . . . . . . . . 254 (A1 A A2 A... A An) ::::::} . . . . . . . . . . . 254
171
rot tl F[ao,a 1,... ,an-1] . . . . . . . . . . . . 171 rot 1= F . . . . . . . . . . . . . . . . . . . . . . 173
1-* F . . . . . . . . . . . . . . . . . . . . . . . . . ~ F ......................... F G ........................ rot 1= T . . . . . . . . . . . . . . . . . . . . . . rot tl T . . . . . . . . . . . . . . . . . . . . . . T 1-* F . . . . . . . . . . . . . . . . . . . . . . . T ~ F ....................... N
.1\ Fi lt.l
178 178 178 178 178 178 178
0
............................
.......................... 258
~·
.......................... 258
.?'(V) ......................... 'I'(V) ......................... 'I' . . . . . . . . . . . . . . . . . . . . . . . . . . . . V(S) .........................
Lsk(F) . . . . . . . . . . . . . . . . . . . . . . . . 191 Fsk .......................... 192 - ............................ 201 t ............................ 201 Th(rot) ....................... 206 Lu ........................... 207
261 261 261 263
Uni(S) ........................ 263
(A1 A A2 A... A An) ::::::} . . . . . . . . . . . 267 ::::::} (81 V 82 V... V 8m) · . . . . . . . . . . 267 0
........................ 179
255
~-
............................
267
o(F)
......................... 268 o(~) ........................ 268 '!',; . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 ~· ~~
.......................... 273 .......................... 273
ç !A ....................... 273
330
Notations
Tome II
sg . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Mode d'emploi c:;,
. . . •. . . . . . . . . . •. . . . ••. . . . ••.
(;; ,)
............................
3 3
IN
............................
4
"'U.
•••. . •••. . . . . •. . •••. . . . •. . . .
4
E~~Ô . . . . . . . . . . . . . . . . . . . . . . . . . .
13
t=y nt=o
13
~
J,Lt 3t
........................
~
z ((xhx2, ... ,xp,t) E A) . . . . . . . 14
z
........................
14
t~z
Q ............................
4 4
IR
. . . . •. . . . ••. . . . . . . . . . . . . . . . .
4
X"
dom(f) . . . . . . . . . . . . . . . . . . . . . . . . lm(f) . . . . . . . . . . . . . . . . . . . . . . . . . ft A • • • • • • • • • • • • • • • • • • • • • • • • • • f(A] . . . . . . . . . . . . . . . . . . . . . . . . . . f-1(8] . . . . . . . . . . . . . . . . . . . . . . . . . ~(E) .........................
4 4
fJJ . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
4
dl
16
4 4 4 4
n ............................
11
/j . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
{n
. ·.........................
18
4
Cn
. · .........................
20
4 4
~
··························· ...........................
23 23
"'U./ n"'U.
. . •. . . . . . •. . . . . . . . . . . . . . .
f ............................. T-1 . . . . • . . . • • . . . . • . . . • • . . . . • . . . lg(m] .Jt(E) . . . . . . . . . . . . . . . . . . . . . . . .
q(x,y) . . . . . . . . . . . . . . . . . . . . . . . . . 14 ••••••••••••••••••••••••••••
15
...........................
15
ap
...........................
e ............................ t
18
g(f1,f2, ... ,fn) · · · · · · · · · · · · · · · ... · 23 J,Ly(f(xhx2,. .. ,xp,y) = 0) . . . . . . . . . . . 24 d . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 b . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Chapitre 5 ~p
14
. . . . •. . . . •••. . •. . . •. . •. •. . ..
9
ei
............................
27
.............................
9
er . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
PJ . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..\x1x2... xp.t . . . . . . . . . . . . . . . . . . . . .
9
C(t) . . . . . . . . . . . . . . . . . . . . . . . . . . 33
9
S(t)
..\x1x2···Xp.Xi
~
... · · .. · · · .. · · ·.....
9
r(C)
.......................... .........................
s .... .... ... .......... ..... ...
9
r(u)
.........................
34
g(f1,f2, ... ,fn) · · · · · · · · · · · · · · · ... · ·
r(s)
...........................
9 11
Sit
...........................
35
.........................
11
T(x 1,x2, ... ,xp)
............................
12
lp
XA
x( A) .:
33 33 34
. . . . . . . . . . . . . . . . . . 36
. ... . . . . . . . . . . . . . . . . . . . . . . . . .
38
331
Notations
STP
..........................
38
Subsr . . . . . . . . . . . . . . . . . . . . . . . . .
84
vi' . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
#P
...........................
85
TP
40
Prop . . . . . . . . . . . . . . . . . . . . . . . . . .
86
Taut
.........................
87
Ax1 ...........................
88
...........................
BP ........................... 40 BP(i) . . . . . . . . . . . . . . . . . . . . . . . . . 40 40
sW . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
88 Ax2 Ax3 . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Ax ........................... 89 #T ........................... 89 Th(T) . . . . . . . . . . . . . . . . . . . . . . . . 89
pl
(P
...........................
(P(i)
. . . . . . . . . . . . . . . . . . . . . . . . . 40
vif . . . . . . . . . . . . . . . . . . . . . . . . . . . ...........................
w~
40 41
............................
49
##d
..........................
90
Comp . . . . . . . . . . . . . . . . . . . . . . . . .
49
Dem(T) . . . . . . . . . . . . . . . . . . . . . . .
90
. . . . . . . . . . . . . . . . . . . . . . . . . 56
Dem . . . . . . . . . . . . . . . . . . . . . . . . . .
94
Sp(f)
Dem 0
. . . ••••. . . .. •. . •. . . . . . . . •
94
. . . . . . . . . . . . . . . . . . . . . . . . . .
94
'1>etno . . . . . . . . . . . . . . . . . . . . . . . . .
94
Neg(n) . . . . . . . . . . . . . . . . . . . . . . . .
94
'.{)em
Chapitre 6 $0
.Q
...........................
67
. . . . . . . . . . . . • . • . • . . . . . . • . . . . 67
mtQ(vo,v1] . . . . . . . . . . . . . . . . . . . . . 94 Coh(T) . . . . . . . . . . . . . . . . . . . . . . . 94 E
............................
96
.s. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
E~
...........................
96
+
. • . . . . • . . . . . . • • • • • • • . • • • • • • • •
67
,!/)1
. . . . . . •••. . . . . . . •. . . •. . . •.•
97
~
............................
67
!/)
.. .... .. .... ..... ... ..... ...
67
tH ........................... 99 rot( ool') . . . . . . . . . . . . . . . . . . . . . . . . 99
A1 à A1 . . . . . . . . . . . . . . . . . . . . . . . 67 SI
. . . . . . . . . . . . . . . . . . . . . . . . . . . 67
n. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 v0 ~ v1 !/)0
. . . . . . . . . . . . . . . . . . . . . . . 72 73
Chapitre 7
. .. .... .. .... ........ .. ....
fJ . . . . . . . . . . . . . . . . . . . . . . . . . . . . #t . . . . . . . . . . . . . . . . . . . . . . . . . . .
78
E
82 82
............................
113
#F ...........................
83
ll . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 u ........................... 113 t. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Form
83
Vx E y F
...................... 114
. . . . . . . . . . . . . . . . . . . . . . 83
3x E y F
...................... 114
Term
......................... .........................
9o et 81
•o ........................... •1 à •s .......................
83
z ............................
84
ZF ........................... 115
Subst
84
z ...........................
.........................
115 115
332
Notations
ZF-
. . . . . . . . . . . . . . . . . . . . . . . . . . 115
ZFC
......................... 115
(a i ; i E 1) . . . . . . . . . . . . . . . . . . . . . 123 (ai)id . · · · .................... 123
ç ............................ 115 ç ............................ 115 {a,b} ........................ 115 {a} .......................... 115
ua x
......................... 115
XE
124
('"\ a· . . . . . . . . . . . . . . . . . . . . . . . . 124 ÎE
1
n
l
ai ........................ 124
ÎEI
AC
.......................... 124
Ua ........................ au b .........................
115
125
116
{ a,b,c} . . . . . . . . . . . . . . . . . . . . . . . a1 Ua2 U ... Uan . . . . . . . . . . . . . . . . ~(a) ......................... {xE a ; H[x]} . . . . . . . . . . . . . . . . .
116
125 ........................ 125
0 ............................
116 116 116 118
an b
......................... 118
('"\ x
. . . . . . . . . . . . . . . . . . . . . . . . 118
XE a
~R y · · · · · · · · · · · · · · · ·. · · · .... 125 Sx .. · ........................ 126 On ........................... 128
X
a+
Cl$
('"\ a . . . . . . . . . . . . . . . . . . . . . . . . 118 a-b ......................... 118 a lib ........................ 118
........................... 130
Inf .......................... 135 w ............................ 135 b ......................... 135
a+ {J Cl GD
........................ 136
b . . . . . . . . . . . . . . . . . . . . . . . . . 137
a x {J.
. ....................... 137 ........................ 139
•••••••••••••••••••••••••••
119
a+ 1
{x ; 3vo E a F[vo,x]} .. . . . . . . . . . . (a,b) ......................... a lJ b . . . . . . . . . . . . . . . . . . . . . . . . . a x b ......................... (a,b,c) . . . . . . . . . . . . .. . . . . . . . . . . (aha2, ... ,an) . . . . . . . . . . . . . . . . . . . b1 x b2 x ... x bn · . · .. · · . · · · . . . . bn . . . . . . . . . . . . . . . . . . . . . . . . . . . App(vo) . . . . . . . . . . . . . . . . . . . . . . . dom(f) ....................... f(a) .......................... gof ...........................
119
IN . . . . . • • • • . . . • • . . . . . • • • . . . . • • 139 l. ............................ 140 AC .......................... 144
C{JF
f-1
120 121 121 121 121
card(x) . . . . . . . . . . . . . . . . . . . . . . . 148 .\ + p (classes cardinales) . . . . . . . . 151 .\ x p (classes cardinales) . . . . . . . . 151
122 122
.\IL . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
122
No ...........................
Xy · · · .. · · .................... 153 157
122
a+
122
N ............................ 163
........................... 162
123
HGC ......................... 164
. . . . . . . . . . . . . . . . . . . . . . . . . . . 123
GCH ......................... 164
f(c) . . . . . . . . . . . . . . . . . . . . . . . . . . 123 f-1(d) . . . . . . . . . . . . . . . . . . . . . . . . . 123
HC
.......................... 164
CH
.......................... 164
123
AF
.......................... 167
ab
...........................
333
Notations
V0
. . . . . . . . . . . . . . . . . . . . . . . . . . .
168
r ...........................
168
rg
. . . . . . . . . . . . . . . . . . . . . . . . . . 168
cl(x)
. . . . . . . . . . . . . . . . . . . . . . . . . 169
u
itl
rot·1
204
niE.I v.ni .......................
211
ai
211
...........................
Fvi . . . . . . . . . . . . . . . . . . . . . . . . . . 171
RI/?
. . . . . . . . . . . . . . . . . . . . . . . . . . 212
lo. . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
niE.I v.nïf!?
.. .. .. .. .. .. . .. .. .. .
212
cof ........................... 185
v.n 11!? . . . . . . . . . . . . . . . . . . . . . . .
213
â(X) ......................... 187
V3 ........................... 219
r(x)
. . . . . . . . . . . . . . . . . . . . . . . . . 181
-{1
•••••••••••••••••••••••••••
220
t(a /rot) . . . . . . . . . . . . . . . . . . . . . . . 228 Sn ........................... 233 Lindn ......................... 237
Chapitre 8
Sn(F) -{
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Th(IDt) =
Rn
........................ 237
........................... 238
. . . . . . . . . . . . . . . . . . . . . . . 192
............................ 192
card(L)
. . . . . . . . . . .. . . . . . .. . . . . 196
a ............................ rot* . . . . . . . . . . . . . . . . . . . . . . . . . . D(IDt) ........................ â(IDt) ........................
199
Solutions des exercices du tome II
199 199
Vai(F,IDt)
199
~cor(X)
.. .. .. .. .. .. .. .. .. .. . 242
· · · · · · · · · · · ·.. . . . . . . . . 300
INDEX
Le numéro en chiffres romains indique le tome ; par exemple, 11.319 renvoie à la page 319 du deuxième tome.
Abélien (groupe abélien divisible sans torsion) 11.203 absorbant 1.43 absorption 1.43 absurde (preuve par l') 1.236 Ackermann (fonction d') 11.18 admettre - l'élimination des quantificateurs 11.319 - des témoins de Henkin 1.239 aleph (N) - (fonction) 11.163 - -zéro 11.157 No-catégorique - (structure) 11.238 - (théorie) 11.227 algèbre - de Boole 1.91 - de Boole atomique 1.100 - de Boole complète 1.131 - de Lindenbaum 11.237 algébrique (nombre réel) 11.159 alphabet 1.12, !1.4 anneau - de Boole 1.91 - quotient 1.83 antilogie !.39 antiréflexive !.75 antitautologie !.39 appartenance 11.113 application !1.122 - bicontinue !.85 - composée II.123 - continue !.85 - définissable !.210 - définissable avec paramètres !.212 - élémentaire II.197 - réciproque 11.123 - vide II.123 arbre de décomposition - d'une formule !.24 - d'un terme !.143 argument diagonal 11.45
arguments (symbole à n) !.140 arité !.140 arrêt (problème de l') 11.45 associativité !.43 atome !.99 atomique - (algèbre de Boole) !.100 - (formule) 1.149 automorphisme !.166 avatar !.249 axiomatisable !.202 - (finiment) !.202 - (pseudo-) !.202 axiomatiser !.202 axiome !.229 - du choix 11.124 - d'extensionnalité 11.115 - de fondation II.167 - de l'infini II.135 - de la paire 11.115 - des parties 11.116 - de la réunion 11.115 - schéma d'axiome de compréhension II.116 - schéma d'axiome de remplacement II.l19 axiomes - de l'égalité !.213 - logiques !.230 - de Peano II.67 - des quantificateurs !.230
Bande - d'une machine de Turing II.26 - blanche II.28 barre( s) de Scheffer !.49 base - (ensemble de) !.160 - de filtre !.118 - d'ouverts !.84 bâton 11.26
336 Bernstein (théorème de Cantor-Bernstein) 11.148 fJ (fonction fJ de Gôdel) Il. 78 Beth (théorème de) 11.210 bicontinue 1.85 bien ordonné 11.126 bijection 11.123 binaire - (symbole de connecteur) 1.17 - (symbole de relation ou de fonction) 1.140 bipartition 1.133 bon ordre 1.224, 11.126 Boole (algèbre de, anneau de) 1.91 booléen (espace) 1.88 borne - inférieure 1. 92 - inférieure d'un ensemble 11.126 - supérieure 1. 92 - supérieure d'un ensemble 11.126 borné (schéma ~) 11.14 bornée (quantification) 11.14
Calcul - des prédicats (indécidabilité du) 11.92 - des propositions (décidabilité du) 11.86 - (temps de) 11.36 calculable (T-) 11.28 calculer 11.28 canonique - (forme normale) 1.50 - (homomorphisme) 1.112 Cantor - (ensemble tri adique de) 1.317 - (théorème de) 11.153 Cantor-Bernstein (théorème de) 11.148 caractéristique - d'un corps 1.334 - (fonction) 11.11, 11.153 cardinal 11.160 - d'un ensemble 11.161 - fortement limite 11.174 - d'Hartog 11.181 - inaccessible 11.174 - régulier 11.174 - successeur 11.162 cardinale (classe) 11.148 cardinalite 11.148 cartésien - (produit) 11.121 - (puissance) 11.121 cas (définition par) 11.13 catégorique ("-) 11.202, 11.238 chaîne 1.82 - théorème de l'union de chaîne de Tarski 11.202
Index
champ d'un quantificateur 1.154 changement de nom de variable liée 1.157 chinois (théorème) 11.80 choix - (axiome du) II .124 - (fonction de) 11.181 Church -'- (théorème de) II. 92 - (thèse de) 11.25 classe cardinale 11.148 clausale (forme) 1.52 clause 1.52, 1.254 - universelle 1.267 clauses séparées 1.268 clos (terme) 1.147 clos cofinal 11.187 close (formule) 1.153 clôture - transitive 11.169 - universelle 1.154 cofinal 11.185 cofinalité 11.185 cofinie (partie) 1.107 cohérente 1.234 collection 11.117 coloriable (graphe k-) 1.76 commutativité 1.43 compacité - théorème de compacité du calcul des prédicats 1.203, 1.245 - théorème de compacité du calcul des propositions 1.62 compact 1.86 compatibilité (tests de) 1.264, 1.265 compatible (relation d ordre dans un groupe) 1.76 complément - dans une algèbre de Boole 1. 94 - dans un treillis 1. 96 complémentaire - (ensemble) 11.118 - dans une algèbre de Boole 1. 94 - dans un treillis 1. 96 complémenté (treillis) 1.96 complet - (dia~ramme) 1.209, 11.199 - systeme complet de connecteurs 1.53 - (type) 11.233 complète - !algèbre de Boole) 1.131 - théorie) 1.205 - syntaxiquement) 1.238 complétude - (théorème de) 1.244 - théorème de complétude dans Peano 11.100 composante 11.120 composée (application) 11.123
Index composée (fonction) 11.9, 11.23 compréhension (schéma d'axiome de) 11.116 concaténation 1.12, 11.4 concaténé 1.12, 11.4 conclusion 1.254 - d'une clause universelle 1.267 condition initiale 11.10 configuration 11.33 congruence modulo un idéal 1.82 conjonction - de deux formules 1.150 - (symbole de) 1.17 conjonctive - (forme normale) 1.50 - forme normale conjonctive canonique 1.50 - {forme prénexe) 1.191 connecteur propositionnel - à n places 1.48 - (symbole de) 1.17 connecteurs (système complet de) 1.53 conséquence 1.59 - formule conséquence d'une théorie 1.178 - sémantique 1.178 - syntaxique 1.232 consistance - {lemme de) 11.206 - relative 11.170 consistant 1.59 - (type) 11.229 consistante 1.178 constante (symbole de) 1.140 continu -!hypothèse du) 11.164 - hypothèse généralisée du) 11.164 - puissance du) 11.159 continue 1.85, 11.186 contradictoire - !ensemble de {>ropositions) 1.59 - formule close) 1.178 - non) 1.59, 1.178 - théorie) 1.178 contraposée 1.43 coordonnée 11.120 couple 11.120 coupure - (démonstration par) 1.256 - (règle de) 1.255 Craig {théorème d'interpolation de) 11.208 croissante (formule) 1.75 cycle d'ordre n 1.224
De Morgan (lois de) 1.43, 1.96 décidabilité du calcul propositionnel 11.86
337 décidable 11.47 - (théorie) 11.89 décomposition (arbre de décomposition d'une formule) 1.24 déduction - (lemme de) 1.236 - (règles de) 1.229 déduit - par coupure (de deux clauses) 1.255 - par coupure (d'un ensemble de clauses) 1.257 - par résolution 1.269 - par simplification 1.255 définie - (fonction non) 11.23 - (structure définie dans une autre) 11.107 définissabilité {théorème de) 1.57 définissabili té de Beth (théorème de) 11.210 définissable - !application ou fonction) 1.210 - élément) 1.210 - explicitement) 11.210 - implicitement) 11.210 - à paramètres dans un ensemble 11.105 - avec paramètres (application ou fonction) 1.212 - avec paramètres (partie ou ensemble ou relation) 1.212 (partie ou ensemble ou relation) 1.210 - structure définissable dans une autre 11.107 définition - d'une application 1.210 - domaine de définition d'une fonction partielle 11.23 - d'un élément 1.210 - d'une formule modulo une autre 1.58 - inductive 1.20 - par le bas, par le haut 1.20 - par cas 11.13 - par induction 1.20, 1.28, 11.141 - par induction sur l'ensemble des formules 1.28 - par récurrence Il. 9 - par récurrence (fonctions partielles) 11.24 - d'une partie 1.210 - d'une partie avec paramètres 1.212 démonstration - formelle 1.232 - par coupure 1.256 - par induction 11.141 - par induction sur l'ensemble des formules 1.21 - par résolution 1.267
338 démontrable 1.232 - dans une théorie 1.232 - par coupure à partir de ~ 1.272 - par résolution à partir de ~ 1.272 dénombrable 11.157 dense - (algèbre de Boole) 1.133 - (espace topologique) 1.132 - ordre dense sans extrémités 11.192 - partie dense dans un espace topologique 1.132 diagonal (argument) Il.45 diagonale - d'un ensemble 1.160 - (intersection) 11.187 diagramme - complet 1.209, Il.199 - élémentaire 1.209 - méthode des diagrammes Il.199 - simple 1.209 différence symétrique 1.73, Il.118 dimension zéro (espace de) 1.87 discrète (topologie) 1.88 disjointe (somme) Il.121 disjonction - (symbole de) 1.17 - de deux formules 1.150 disjonctive - (forme normale) 1.50 - forme normale disjonctive canonique 1.50 - (forme prénexe) 1.191 distributif (treillis) 1. 96 distribution de valeurs de vérité 1.32 distributivité 1.43 divisible (groupe) Il.203 domaine de définition d'une application 1.12, Il.4, Il.122 - de définition d'une fonction partielle II.23 dominer Il.19 double (récurrence) Il.17 dual - (filtre, idéal) 1.114 - (quantificateur) 1.140
Egalitaire - (langage) 1.140 - (réalisation) 1.160 égalité - (axiomes de l') 1.213 - (symbole d') 1.140 élément définissable 1.210 maximal Il.126 maximum Il.126 minimal Il.125
Index
élément - rmmmum Il.125 - (plus grand, plus petit) 1.92, 11.125, II.126 - de torsion (dans un groupe) 1.302 élémentaire application, plongement) Il.197 diagramme) 1.209 équivalence) 1.201 extension) Il.191 fermé) 1.84 ouvert) 1.84 sous-structure) 11.191 - sous-structure !-élémentaire 11.220 élémentairement - équivalentes 1.201, Il.192 - (se plonger) Il.197 élimination des quantificateurs Il.319 engendré -~filtre) 1.132 - filtre principal) 1.117 - idéal) 1.111 librement) 1.262 - sous-structure engendrée 1.163, 1.220 enrichir 1.163 enrichissement d'une structure 1.164 ensemble - de base 1.160 - définissable 1.210 - dénombrable Il.157 - fini Il.153 - de formules indépendant 1. 75 - des formules du premier ordre 1.150 - des formules propositionnelles 1.18 - infini 11.153 - ordonné II.125 - récursif 11.25, 11.41 récursif primitif 11.11 récursivement énumérable 11.41 représentable II. 76 des sous-formules d'une formule 1.152 sous-jacent 1.160 des termes 1.142 théorie des ensembles de Zermelo II.115 théorie des ensembles de Zermelo-Fraenkel 11.115 totalement ordonné Il.125 transitif 11.127 triadique de Cantor 1.317 vide 11.118 ensembles de formules équivalents 1.59 entiers 11.139 - intuitifs Il.140 énumérable (récursivement) Il.41 énumération (théorème d') 11.39 énuméré (récursivement) 11.60 Epiménides (paradoxe d') 11.66
Index
équipotents 11.147 équisatisfaisables 1.193 équivalence - élémentaire 1.201 - (symbole d') 1.17 équivalentes - !élémentairement) 1.201, 11.192 - formules logiquement) 1.39, 1.178 - théories) 1.178 équivalents (ensembles de formules) 1.59 équivaut à 1.17 espace - booléen 1.88 - compact 1.86 - de dimension zéro 1.87 - séparé 1. 85 - de Stone 1.121 et 1.17 étape - d'induction 11.68 - initiale 11.68 - de récurrence 11.10, 11.68 état - d'une machine de Turing 11.27 - final 11.27 - initial 11.27 évaluation 1.32 existentiel (quantificateur) 1.140 existentielle - !formule) 1.188, 11.218 - théorie) 11.218 - quantification) 1.153 expansion 1.164 explicitement définissable 11.210 exponentiation - de classes cardinales 11.151 - d'ensembles 11.123 extension 1.162 - élémentaire 11.191 - finale Il. 73 extensionnalité (axiome d') 11.115
Famille d'ensembles 11.123 Fermat (grand théorème de) 11.104 fermés élementaires 1.84 Fibonacci (suite de) 11.55 figure efficacement 1.264 filtre 1.114 - {base de) 1.118 - dual d'un idéal 1.114 - engendré par une partie 1.132 - de Fréchet 1.117 - maximal 1.115 - principal engendré par 1.117 final - (état) 11.27 - (segment) 1.12, 11.4
339 finale (extension) II. 73 fini ensemble) 11.153 ordinal) 11.135 produit) 11.212 sous-groupe de type) 1.76 sous-structure de type) 1.221, 1.225 fini ment - axiomatisable 1.202 - consistante (théorie) 1.178 - satisfaisable 1.59 finitude (théorème de) 1.235 fixe (théorèmes du point) 11.52 FNC 1.50 FNCC 1.50 FND 1.50 FNDC 1.50 Fodor (théorème de) 11.187 fonction - d'Ackermann 11.18 - {J de Gôdel Il. 78 - caractéristique 11.11, 11.153 - de choix 11.181 composée 11.9 composée (fonction partielle) 11.23 - continue 1.85, 11.186 - définie par récurrence 11.9 - définie par récurrence (fonction partielle) 11.23 - définissable 1.210 - non définie en (a 17 a2 , ... ,ap) 11.23 - partielle 11.23 - partielle récursive 11.24 - polynôme 1.290 - prouvablement totale 11.107 - récursive 11.24 - récursive primitive 11.10 représentable Il. 76 de Skolem (symbole de) 1.191 - successeur 11.9 - (symbole de) 1.140 - totale 11.23 fonctionnel (symbole) 1.140 fonctionnelle 11.119 fondation (axiome de) 11.167 forme - clausale 1.52 - normale 1.50 - normale conjonctive 1.50 - normale conjonctive canonique 1.50 - normale disjonctive 1.50 - normale disjonctive canonique 1.50 - prénexe (d'une formule) 1.188 - prénexe \mettre une formule sous forme prenexe) 1.190 - prénexe conjonctive 1.191 - prénexe disjonctive 1.191 - de Skolem 1.192 - théorème de forme normale 1.51
340 formelle (démonstration) 1.232 formule atomique 1.149 close 1.153 close contradictoire 1.178 close inconsistante 1.178 close universellement valide 1.177 close valide 1.177 - croissante 1.75 - existentielle 1.188, 11.218 - démontrable 1.232 - démontrable dans une théorie 1.232 - fonctionnelle 11.119 - de Horn, de Horn élémentaire 11.223 - à paramètres 1.209 - positive 1.132 - du premier ordre 1.150 - prénexe 1.188 - prénexe polie 1.188 - propositionnelle 1.17 - propositionnellement satisfaisable 1.248 - V3 11.219 - satisfaite dans une structure 1.170 - universelle 1.188, 11.216 - universellement valide 1.178 formules - équisatisfaisables 1.193 - équivalentes 1.178 - logiquement équivalentes 1.39, 1.178 - universellement équivalentes 1.178 fortement - indécidable 11.106 - limite 11.174 Fraenkel 11.115 Fréchet (filtre de) 1.117
Généralisation (règle de) 1.229 Gôdel - !fonction {J de) Il. 78 - numéro de) 11.82, 11.83, 11.85, 11.90 - second théorème d'incomplétude de) 11.95 Gôdel-Rosser (théorème de) Il. 93 graphe 1.75 grille 11.239 groupe - abélien divisible sans torsion 11.203 - ordonnable 1. 76 - sans torsion 1. 76 - de type fini 1. 76
Hartog (cardinal d') 11.181 hauteur - (d'une formule) 1.20, 1.151 - (d'un terme) 1.142
Index Henkin (témoins de) 1.239 Herbrand (méthode de) 1.245 Hilbert (programme de) 1.6 homéomorphisme 1.85 homomorphisme 1.261 - d'algèbres de Boole 1.101 - canonique 1.112 - de L-structures 1.164 - trivial 1.117 Horn - (formule de) 11.223 - formule de Horn élémentaire 11.223 hypothèse - du continu 11.164 - généralisée du continu 11.164
Idéal 1.81 - dual d'un filtre 1.116 - maximal 1.82 - premier 1.113 - principal engendré par 1. 99 - propre 1.81 - somme de deux idéaux 1.81 idempotence 1.43 i-ème projection 11.9 il existe 1.140 - au moins un 1.140 image 1.12, 11.4 - directe 1.12, 11.4, 11.123 - d'un ensemble par une fonction 11.122 - d'une fonction 11.122 - inverse 11.123 - réciproque 1.12, 11.4, 11.123 implication (symbole d') 1.17 implicitement définissable 11.210 implique 1.17 inaccessible 11.174 inclus 11.115 incomplétude - premier théorème d'incomplétude 11.93 - deuxième théorème d'incomplétude 11.95 inconsistante - (formule close) 1.178 - (théorie) 1.178 indécidabili té - de l'arithmétique 11.92 - du calcul des prédicats Il. 92 indécidable - (fortement) 11.106 - (théorie) 11.89 indépendant 1. 75 indexé 11.123 indice - d'un ensemble récursivement énumérable 11.41
Index indice - d'une fonction partielle récursive 11.41 - d'une machine de Turing 11.38 inductif 1.65, 11.144 induction - ~définition par) 1.20, 1.28, 11.141 - démonstration par) 1.21,11.141 - étape d') 11.68 - schéma d') 11.68 inductive 1.20 induite (topologie) 1.84 inférieur - (pour une relation) 11.125 inférieure - (borne) 1.92, 11.126 - (classe cardinale) 11.149 infini - !axiome de l') 11.135 - ensemble) 11.153 - ordinal) 11.135 - au sens faible 11.285 - au sens fort 11.285 initial - condition initiale 11.10 - étape initiale 11.68 - !état) 11.27 - ordinal) II .160 - segment) 1.12, 11.4, 11.126 - segment initial d'un modèle de ~ 0 11.73 injective 11.122 interpolante 1.56, 11.208 interpolation (lemme d') 1.56 interpolation de Craig (théorème d') 11.208 interprétation - d'un symbole dans une structure 1.160 - d'un terme dans une structure 1.168 intersection - de deux ensembles 11.118 - diagonale 11.187 - d'une famille d'ensembles 11.124 - propriété de 1'intersection finie 1.118 intuitif 11.114 inverse (image) 11.123 isolé 1.132, 11.228 isoler 11.228 isomorphes (structures) 1.166 isomorphisme - d'algèbres de Boole 1.103 - d'ensembles ordonnés 11.125 - de L-structures 1.166
K-coloriable (graphe) 1.76 "-catégorique 11.202
341 Konig (théorème de) 11.166 Krull (théorème de) 1.82
L-structure 1.160 À-modèle 11.242 À-structure 11.242 langage 1.139 - associé à une structure 1.207 - égalitaire 1.140 - du premier ordre 1.139 - (réalisation d'un) 1.160 lecture - (tête de) 11.26 - unique (théorème de) 1.27 lemme - de consistance de Robinson 11.206 - de déduction 1.236 - d'interpolation 1.56 - des mariages 1.304 - de Zorn 11.145 libre - (occurrence) 1.152 - (variable) 1.153 librement engendrée 1.262 liée (occurrence) 1.153 limite - (cardinal fortement) 11.174 - (ordinal) 11.130 limité (somme, produit) 11.13 Lindenbaum (algèbre de) 11.237 Lindstr6m (théorème de) 11.244 littéral 1.52 logiquement équivalentes - (formules) 1.178 - (propositions) 1.39 lois - d'absorption 1.43 - de de Morgan 1.43 · - de de Morgan (dans une algèbre de Boole) 1.96 longueur 1.12, 11.4 Los (théorème de) 11.213 L6wenheim-Skolem - ascendant (théorème de) 11.201 - descendant (théorème de) 11.196
Machines de Turing 11.26 majorant d'un ensemble 11.126 mariages (lemme des) 1.304 maximal - !élément) 11.126 - filtre) 1.115 - idéal) 1.82 maximum 11.126 ménage 1.264 méta 11.114
342 méta-relation 11.114 métalangage 1.18 méthode - des diagrammes 11.199 - de Herbrand 1.245 mettre sous forme prénexe 1.189 minimal - (élément) 11.125 - (système complet de connecteurs) 1.54 minimum (élément) 11.125 minorant d'un ensemble 11.126 modèle - d'une formule 1.173 - premier 11.243 - standard de !/J 11.68 - d'une théorie 1.178 modèle-complète Il. 243 modulo 1.58, 1.82, 11.212, 11.213 modus ponens 1.229 monomorphisme de L-structures 1.165 Morgan (voir de Morgan) mot 1.12, 11.4 - vide 1.12, 11.4 ~
- schéma ~ 11.22, 11.24 - schéma ~ borné 11.14 - schéma~ total 11.22
N-aire - (relation) 11.122 - (symbole) 1.140 n-cycle (pour une relation binaire) 1.224 n-type 11.228 - complet 11.234 n-uple 11.121 n-uplet 11.121 négation - d'une formule 1.150 - (symbole de) 1.17 neutre - (élément) 1.43 - (formule) 1.70 non 1.17 non contradictoire - (ensemble de propositions) 1.59 - (théorie) 1.178 non logique (symbole) 1.140 normale - (formes normales) 1.50 - théorème de forme normale 1.51 notation - polonaise 1.159 - préfixe 1.159 nul à l'infini 11.159 numéro de Gôdel - d'une démonstration 11.90 - ·d'une formule 11.83
Index numéro de Gôdel - d'une proposition 11.85 - d'un terme 11.82
Occurrence 1.13, 11.5 - (avoir une) 1.13, 11.5 - libre 1.152 - liée 1.153 - (test d') 1.265 omettre 11.228 omission des types (théorème d') 11.230 orbite 1.340 ordinal 11.127 - fini 11.135 - infini 11.135 - initial 11.160 - limite 11.130 - (produit) 11.137 - régulier 11.185 - somme ordinale II .136 - successeur 11.130 ordonnable (groupe) 1. 76 ordonné 11.125 ordre - (bon) 1.224, 11.126 - dense avec extrémités 11.222 - dense sans extrémités 11.192 - [langage du premier) 1.139 - propriété du premier) 1.202 - relation d') 11.125 ou 1.17 ouverts - (base d') 1.84 - elémentaires 1.84 ouvert-fermé 1.87
Paire 11.115 - (axiome de la) 11.115 - ordonnée 11.120 paradoxe - d'Epiménides 11.69 - de Russell 11.117 paramètres -~définissable avec) 1.212 - formule à) 1.209 - ormule définissable à paramètres dans un ensemble 11.105 partie 11.115 - cofinie 1.107 - définissable 1.210 - définissable avec paramètres 1.212 parties (axiomes des) 11.116 partielle - (fonction) 11.23 - fonction partielle récursive 11.24 partout dense 1.132
Index
Peano (axiomes de) 11.67 place (symbole de connecteur à une place, à deux places) 1.17 places - (connecteur I_>ropositionnel à n) 1.48 - (symbole à n) 1.140 plon~ement l. A("~ - elémentaire 11.197 - (théorème de) 1.225 plonger élémentairement (se) 11.197 plus grand élément 1.92, 11.126 plus petit élement 1.92, 11.125 poids - d'un mot 1.143 - (règle des) 1.143 - d'un symbole 1.143 point - fixe 11.186 - fixe (théorèmes du) 11.52 - isolé 1.132 polie (formule prénexe) 1.188 polonaise 1.159 positive 1.132 pour - au moins un 1.140 - tout 1.140 prédicat (symbole de) 1.140 préfixe - (écriture ou notation) 1.159 - d'une formule prénexe 1.188 premier -lidéal) 1.113 - modèle) 11.243 - ormule du premier ordre 1.150 - langage du premier ordre 1.139 - propriété du premier ordre 1.202 - théorème d'incomplétude 11.93 prémisse 1. 254 - d'une clause universelle 1.267 prénexe forme) 1.188 forme conjonctive) 1.191 forme disjonctive) 1.191 - formule) 1.188 - mettre sous forme) 1.189 - polie (formule) 1.188 préservation - des formules existentielles (théorème de) 11.218 - des formules universelles (théorème de) 11.216 - (théorèmes de) 11.216 préservée par extension 11.218 - par produit réduit 11.224 - par sous-structure 11.217 - par union de chaîne 11.219 preuves par l'absurde 1.236 primitif (ensemble récursif) 11.11 primitive (fonction récursive) 11.10
343 principal - !filtre) 1.117 - idéal) 1.101 - unificateur) 1.263 problème de l'arrêt 11.45 produit - cartésien 11.121 - de classes cardinales 11.151 - d'une famille d'ensembles 11.124 - d'une famille de structures 11.211 - fini 11.212 - limité 11.13 - ordinal 11.137 - réduit 11.212 - (topologie) 1.88 programme de Hilbert 1.6 projection 11.9, 11.120 prolog 1.254 proposition 1.17 propositionnel - (connecteur à n places) 1.48 - (symbole de connecteur) 1.17 propositionnelle - (variable) 1.17 - (formule) 1.17 propositionnellement satisfaisable - (ensemble) 1.248 - (formule) 1.248 propre - (idéal) 1.81 - (segment initial ou final) 1.13, 11.5, 11.126 propriété de l'intersection finie 1.118 propriété du premier ordre 1.202 prouvablement totale 11.107 pseudo-axiomatisable 1.202 pseudoformule 1.283 puissance cartésienne 11.122 du continu 11.159 - réduite 11.213
Quantificateur - dual 1.140 - existentiel 1.140 - universel 1.140 quantificateurs - (axiomes des) 1.230 - (élimination des) 11.319 quantification - bornée 1.14 - existentielle 1.153 - universelle 1.153 quantifiée - existentiellement 1.153 - universellement 1.153 quel que soit 1.140 quotient (anneau) 1.83
344
Rang 11.168 réalisation - d'un langage 1.160 - égalitaire 1.160 réaliser 11.228 réciproque - (application) 11.123 - (image) 1.12, 11.4, 11.123 recouvrement 1.86 - fini 1.86 - ouvert 1.86 récurrence - !étape de) 11.10, 11.68 - fonction définie par) 11.10 - fonction partielle definie par) 11.24 - double 11.17 récursif - (ensemble) 11.25 - primitif 11.11 récursion {théorèmes de la) 11.51 récursive - (fonction partielle) 11.24 - fonction récursive primitive 11.10 - (théorie) 11.89 récursivement énumérable 11.41 récursivement énuméré 11.60 réduction 1.264 réduit - d'une structure !.164 - (produit) 11.212 - puissance réduite 11.213 refléter (se) 11.176 réflexion (schéma de) 11.176 réfutable 1.257, 1.271 réfutation 1.257, 1.271 règle 1.229 - de coupure 1.255 - de déduction 1.229 - de généralisation 1.229 - des poids 1.143 - de résolution 1.269 - de simplification 1.255 régulier - cardinal 11.174 - ordinal 11.185 relation - de bon ordre 11.126 - définissable 1.210 - n-aire 11.122 - d'ordre, d'ordre total 11.125 - (symbole de) 1.140 relationnel (symbole) 1.140 relativisée d'une formule 11.171 remplacement (schéma d'axiome de) 11.119 représentable {fonction, ensemble) 11.76 représentation - (théorème de) Il. 77 - bis {théorème de) 11.96 représenter (un ensemble) II. 76
Index représenter - bande d'une machine de Turing représentant un entier 11.28 - une fonction Il. 76 résolution 1.269 restriction - d'une fonction 1.12, 11.4 - d'un langage 1.163 - d'une relation 11.122 - d'une structure 1.164 réunion 11.116 - (axiome de la) 11.115 - d'une famille d'ensembles 11.124 Rice {théorème de) 11.49 Robinson {lemme de consistance de) 11.206 Rosser (théorème de Godel-Rosser) 11.93 Russell (paradoxe de) 11.117
Sans cycle (relation binaire) 1.224 sans torsion (groupe) 1.76, 11.203 satisfaction - d'un ensemble de formules 1.59 - d'une formule dans une structure 1.170, 1.173 satisfaire - une distribution de valeurs de vérité satisfait une formule 1.36 - une distribution de valeurs de vérité satisfait un ensemble de formules 1.59 - une structure satisfait une formule 1.170 - une structure satisfait une théorie 1.178 satisfaisable 1.59 - (finiment) 1.59 - (propositionnellement) 1.248 schéma - d'axiome de compréhension 11.116 - d'axiome de remplacement 11.119 - de définition par cas 11.13 - d'induction 11.67 - ~ 11.22, 11.24 - ~ borné 11.14 - ~ total 11.22 - de réflexion 11.176 scope 1.154 second théorème d'incomplétude de Godel 11.95 segment - final 1.12, 11.4 - final propre 1.13, 11.5 - initial 1.12, 11.4 ' 11.126 - initial d'un modèle de ~0 11.73 - initial propre 1.13, 11.5, 11.126 sémantique 1.32
Index
sémantique (conséquence) 1.178 séparé (espace) 1.85 séparées (clauses) 1.268 Sheffer (barres de) 1.49 sigma (!':) 11.96 sigma zéro un II. 96 simple (diagramme) 1.209 simplification 1.264 - (règle de) 1.255 simplifier (à droite, à gauche) 1.13, 11.5 singleton 1.99, 11.115 situation 11.33 Skolem - (forme de) 1.191 - (symbole de fonction de) 1.191 - théorème de Lôwenheim-Skolem 11.196, 11.201 smn (théorème) 11.47 somme de classes cardinales 11.151 - de deux idéaux 1.81 - directe de deux ensembles ordonnés 11.135 - disjointe 11.121 - limitée 11.13 - ordinale 11.136 sous-algèbre de Boole 1.106 sous-ensemble 11.115 sous-espace d'un espace topologique 1.84 sous forme normale - conjonctive 1.50 - conjonctive canonique 1.50 - disjonctive 1.50 - disjonctive canonique 1.50 sous-formule 1.29, 1.152 sous-jacent (ensemble) 1.160 sous-réalisation 1.162 sous-recouvrement 1.86 sous-structure 1.162 - élémentaire 11.191 - engendrée par un ensemble 1.163, 1.220 - de type fini 1.221, 1.225 - 1-élementaire 11.220 spectre 1.220, 11.56 standard (modèle standard de .9) 11.68 stationnaire 11.187 Stone - (espacede) 1.121 - (théorème de) 1.125 structure 1.160 - No-catégorique 11.238 structures - élémentairement équivalentes 11.201 - isomorphes 11.166 subpotent 11.147 substitutions 1.262 - dans une formule 1.155
345 substitutions - dans une proposition 1.29 - dans un terme 1.148 successeur - !cardinal) 11.162 - fonction) 11.9 - ordinal) II .130 supérieure (borne) 1.92, 11.125 surjective 11.122 symbole de connecteur propositionnel 1.17 de constante 1.140 - d'é alité 1.140 - de fonction 1.140 - de fonction de Skolem 1.191 - fonctionnel 1.140 - non logique 1.140 - de prédicat 1.140 - de relation 1.140 - relationnel 1.140 - de variable 1.140 symétrique (différence) 1.73, 11.118 syntaxe 1.16 syntaxique (conséquence) 1.232 syntaxiquement complète 1.238 système complet - de connecteurs 1.53 - de connecteurs minimal 1.54
T -calculable 11.28 table 11.27 - de transition 11.27 - de vérité 1.35 - de vérité d'une formule 1.37 Tarski (théorème de l'union de chaîne de) 11.204 Tarski-Vaught (test de) 11.195 tautologie 1.38, 1.230 - du calcul des prédicats 1.180 témoins de Henkin 1.239 temps de calcul 11.36 terme 1.142 - clos 1.147 ternaire 1.140 test - de compatibilité 1.264, 1.265 - d'occurrence 1.265 . - de Tarski-Vaught 11.195 tête de lecture 11.26 théorème 1.232 - de Banach-Tarski 11.112 - de définissabilité de Beth 11.210 - de Cantor 11.153 - de Cantor-Bernstein 11.148 - chinois 11.80 - de Church 11.92 - de compacité du calcul des prédicats 1.203, 1.245
346 théorème de compacité du calcul propositionnel 1.62 de complétude 1.244 de complétude dans Peano 11.100 de définissabilité 1.57 de définissabilité de Beth 11.210 - d'énumération II.39 - de finitude 1.235 de Fodor II.187 - de forme normale 1.51 - de Godel-Rosser 11.93 - d'incomplétude de Godel 11.95 - d'interpolation de Craig 11.208 - de Konig II.166 - de Krull 1.82 - de lecture unique 1.27 de Lindstrom 11.244 de Los II.213 de Lowenheim-Skolem ascendant 11.201 de Lowenheim-Skolem descendant 11.196 d'omission des types II.230 de plongement 1.225 - du point fixe II.52 - de préservation des formules existentielles 11.218 - de préservation des formules universelles II.217 de la récursion II.51 de représentation II. 77 de représentation bis II.96 de Rice II.49 smn II.47 de Stone 1.125 d'une théorie 1.232 de Tychonoff 1. 88 de l'ultrafiltre 1.119 de l'union de chaîne de Tarski II.204 de Vaught II.201 de Zermelo II.145 de Zorn 1.64, 11.145 théorèmes - de consistance relative II.170 - du point fixe 11.52 - de préservation II.216 - de la récursion 11.51 théorie 1.178 cohérente 1.234 - complète 1.205 - consistante 1.178 - contradictoire 1.178 - décidable 11.89 - des ensembles de Zermelo II.114 - des ensembles de Zermelo-Fraenkel 11.114 - existentielle II.218 - finiment consistante 1.178
Index théorie - inconsistante 1.178 - indécidable II.89 - "-catégorique II.202 - non contradictoire 1.178 - V3 II.219 - récursive 11.89 - d'une structure 1.206 - syntaxiquement complète 1.238 - universelle II.216 théories équivalentes 1.178 thèse de Church II.25 topologie - discrète 1.88 - induite 1.84 - produit 1.88 torsion - (élément de) 1.302 - (groupe sans) I. 76, 11.203 total - (ordre) II.125 - (schéma~) II.22 totale - (fonction) II.23 - (fonction prouvablement) II.107 totalement ordonné (ensemble) 11.125 transitif 11.127 transitive (clôture) 11.169 treillis 1.96 - complémenté 1.96 - distributif 1.96 triadique (ensemble triadique de Cantor) 1.317 trichotomie II.182 triplet II.121 trivial (ultrafiltre, homomorphisme) 1.117 Turing - (machine de) II.26 - machine de Turing universelle II.37 Tychonoff (théorème de) 1.88 type II.228 complet 11.233 - consistant 11.229 - d'un élément dans une structure 1.225, 11.228 - groupe de type fini 1.76 isolé II.228 d'une suite dans une structure 11.228 structure de type fini 1.221, 1.225
Ultrafiltre 1.115 - trivial 1.117 - (théorème de l') 1.119 ultraproduit II.213 ultrapuissance 11.213 1-élementaire Il. 220
Index
un aire - (symbole de connecteur) 1.17 - (symbole de relation ou de fonction) 1.140 unificateur 1.262 - principal 1.263 unification !.261 unifier !.262 union de chaîne de Tarski (théorème de l') II.204 univers II.113 universel (quantificateur) !.140 uni ver selle clause) !.267 clôture) 1.154 formule) !.188, II.216 quantification) 1.153 théorie) II.216 universellement - équivalentes 1.178 - valide (formule) 1.178 - valide (formule close) 1.177 upie, uplet II.121
Va et vient II.202 valeur d'une formule dans un modèle II.242 valeurs de vérité (distribution de) 1.32 valide - (formule) 1.178
347 valide - (formule close) 1.177 valuation 1.32 variable - libre 1.153 - propositionnelle 1.17 - (symbole de) 1.140 Vaught - test de Tarski-Vaught II.195 - (théorème de) II.201 vérité - (distribution de valeurs de) 1.32 - (table de) 1.35, 1.37 vide - ~application) II.123 - ensemble) II.118 - mot) 1.12, II.4 vraie (formule vraie dans une structure) 1.173
Zermelo - (théorème de) II.145 - (théorie des ensembles de) II.l14 Zermelo-Fraenkel (théorie des ensembles de) II.l15 zéro 1.43 - (de dimension) 1.87 0-aire 1.72 Zorn (théorème ou lemme de) 1.64, II.145
MASSON Éditeur 120, boulevard Saint-Germain 75280 Paris Cedex 06 Dépôt légal : décembre 1993
Société des nouvelles éditions liégeoises, SA Rue Saint-Vmcent 12-4020 Liège novembrel993