ATLAS Ouvrir dans l'atlas →

Proposition 3Suites codées et démonstrations dans PA

Itérés, longueur, termes et extensionnalité des codes dans l'arithmétique de Peano

Les conventions sont celles de Ajout dans PA. Les fonctions de ce nœud sont prises avec les constructions du point (iii) de Codages. Les itérés D(N,i)D(N, i) sont définis par récurrence primitive à partir de P11P^1_1 et de dbt∘P33\mathrm{dbt} \circ P^3_3, c'est-à-dire D(N,0)=ND(N, 0) = N et D(N,i+1)=dbt(D(N,i))D(N, i + 1) = \mathrm{dbt}(D(N, i)). La longueur est la minimisation bornée lg(N)=μi<N+1 (D(N,i)=0),\mathrm{lg}(N) = \mu i < N + 1\ \big(D(N, i) = 0\big), de la relation D(N,i)=0D(N, i) = 0, l'égalité où l'on a substitué DD et Z∘P12Z \circ P^2_1, de borne S NS\,N. Le terme de rang jj est (N)j=dr(D(N,lg(N)−˙S j)),(N)^j = \mathrm{dr}\big(D(N, \mathrm{lg}(N) \mathbin{\dot{-}} S\,j)\big), composée de dr\mathrm{dr}, de DD, de −˙\dot{-}, de lg\mathrm{lg} et de SS. Comme au nœud Termes fonctionnels, ⊢𝖯𝖠D(N,0)=N\vdash_{\mathsf{PA}} D(N, 0) = N et ⊢𝖯𝖠D(N,S i)=dbt(D(N,i))\vdash_{\mathsf{PA}} D(N, S\,i) = \mathrm{dbt}(D(N, i)), par le point (iv) de Fonctions p.r. dans PA.

Énoncé

Pour tous termes fonctionnels NN, MM, hh, vv, ii, jj et ww :

(i) Itérés. ⊢𝖯𝖠D(N,S i)=D(dbt(N),i)\vdash_{\mathsf{PA}} D(N, S\,i) = D(\mathrm{dbt}(N), i), ⊢𝖯𝖠D(0,i)=0\vdash_{\mathsf{PA}} D(0, i) = 0, ⊢𝖯𝖠D(aj(h,v),S i)=D(h,i)\vdash_{\mathsf{PA}} D(\mathrm{aj}(h, v), S\,i) = D(h, i), ⊢𝖯𝖠D(N,i)=0∨D(N,i)+i⩽N,\vdash_{\mathsf{PA}} D(N, i) = 0 \vee D(N, i) + i \leqslant N, et ⊢𝖯𝖠D(N,N)=0\vdash_{\mathsf{PA}} D(N, N) = 0.

(ii) Longueur. Pour une variable zz qui ne figure ni dans NN ni dans ww, ⊢𝖯𝖠lg(N)=w↔(D(N,w)=0∧∀z<w ¬(D(N,z)=0)).\begin{aligned} \vdash_{\mathsf{PA}} {}&\mathrm{lg}(N) = w \leftrightarrow \big(D(N, w) = 0 \\ &\quad \wedge \forall z < w\ \neg(D(N, z) = 0)\big). \end{aligned} De plus, ⊢𝖯𝖠lg(0)=0\vdash_{\mathsf{PA}} \mathrm{lg}(0) = 0, ⊢𝖯𝖠lg(aj(h,v))=S lg(h)\vdash_{\mathsf{PA}} \mathrm{lg}(\mathrm{aj}(h, v)) = S\,\mathrm{lg}(h), ⊢𝖯𝖠lg(N)⩽N\vdash_{\mathsf{PA}} \mathrm{lg}(N) \leqslant N et ⊢𝖯𝖠lg(N)=0→N=0\vdash_{\mathsf{PA}} \mathrm{lg}(N) = 0 \to N = 0.

(iii) Termes de l'ajout. ⊢𝖯𝖠(aj(h,v))lg(h)=v\vdash_{\mathsf{PA}} (\mathrm{aj}(h, v))^{\mathrm{lg}(h)} = v et ⊢𝖯𝖠j<lg(h)→(aj(h,v))j=(h)j.\begin{aligned} \vdash_{\mathsf{PA}} {}&j < \mathrm{lg}(h) \\ &\to (\mathrm{aj}(h, v))^j = (h)^j. \end{aligned}

(iv) Extensionnalité. Pour une variable jj qui ne figure ni dans MM ni dans NN, ⊢𝖯𝖠(lg(M)=lg(N)∧∀j<lg(N) (M)j=(N)j)→M=N.\begin{aligned} \vdash_{\mathsf{PA}} \big(&\mathrm{lg}(M) = \mathrm{lg}(N) \\ &\wedge \forall j < \mathrm{lg}(N)\ (M)^j = (N)^j\big) \\ &\to M = N. \end{aligned}

Démonstration

Comme aux nœuds précédents, il suffit de traiter des variables, et l'on raisonne par chaînes d'égalités entre termes fonctionnels.

(i) Première égalité. Récurrence sur ii, avec le paramètre NN. Pour 00, D(N,S 0)=dbt(D(N,0))=dbt(N)=D(dbt(N),0)D(N, S\,0) = \mathrm{dbt}(D(N, 0)) = \mathrm{dbt}(N) = D(\mathrm{dbt}(N), 0). Pour le pas, sous l'hypothèse de récurrence, D(N,S S i)=dbt(D(N,S i))=dbt(D(dbt(N),i))=D(dbt(N),S i)D(N, S\,S\,i) = \mathrm{dbt}(D(N, S\,i)) = \mathrm{dbt}(D(\mathrm{dbt}(N), i)) = D(\mathrm{dbt}(N), S\,i).

Itérés de 00 et de l'ajout. Par récurrence sur ii, D(0,0)=0D(0, 0) = 0 et D(0,S i)=dbt(D(0,i))=dbt(0)=0D(0, S\,i) = \mathrm{dbt}(D(0, i)) = \mathrm{dbt}(0) = 0 par le point (ii) de Ajout dans PA. Ensuite D(aj(h,v),S i)=D(dbt(aj(h,v)),i)=D(h,i)D(\mathrm{aj}(h, v), S\,i) = D(\mathrm{dbt}(\mathrm{aj}(h, v)), i) = D(h, i), par la première égalité et le point (iii) du même nœud.

Décroissance. Récurrence sur ii, avec le paramètre NN. Pour 00, D(N,0)+0=ND(N, 0) + 0 = N et N⩽NN \leqslant N. Pour le pas, écrivons avec la valeur MM de D(N,i)D(N, i). Si M=0M = 0, alors D(N,S i)=dbt(0)=0D(N, S\,i) = \mathrm{dbt}(0) = 0. Si ¬(M=0)\neg(M = 0) et M+i⩽NM + i \leqslant N, le point (iii) de Ajout dans PA donne dbt(M)<M\mathrm{dbt}(M) < M, c'est-à-dire S dbt(M)⩽MS\,\mathrm{dbt}(M) \leqslant M ; la compatibilité (Ordre dans PA, (vi)) et la transitivité donnent S dbt(M)+i⩽NS\,\mathrm{dbt}(M) + i \leqslant N, et dbt(M)+S i=S(dbt(M)+i)=S dbt(M)+i\mathrm{dbt}(M) + S\,i = S(\mathrm{dbt}(M) + i) = S\,\mathrm{dbt}(M) + i par Q5\mathrm Q_5 et le point (i) de Lois de + et × : c'est D(N,S i)+S i⩽ND(N, S\,i) + S\,i \leqslant N. Dans les deux cas, la disjonction vaut pour S iS\,i.

Annulation. Le point (ii) (b) de Termes fonctionnels, avec le terme NN substitué à ii, donne D(N,N)=0∨D(N,N)+N⩽ND(N, N) = 0 \vee D(N, N) + N \leqslant N. Dans le second cas, D(N,N)+N⩽0+ND(N, N) + N \leqslant 0 + N, et la compatibilité donne D(N,N)⩽0D(N, N) \leqslant 0, puis D(N,N)=0D(N, N) = 0 par le point (ii) de Ordre dans PA.

(ii) Caractérisation. La relation minimisée a pour formule naturelle D(N,i)=0D(N, i) = 0, par les points (ii) et (iii) de Relations p.r. dans PA et le point (ii) (d) de Termes fonctionnels, puisque Z∘P12Z \circ P^2_1 prend la valeur 00. Par le point (vi) de Relations p.r. dans PA, avec la borne S NS\,N, la formule lg(N)=w\mathrm{lg}(N) = w équivaut à la disjonction de w<S N∧D(N,w)=0∧∀z<w ¬(D(N,z)=0)w < S\,N \wedge D(N, w) = 0 \wedge \forall z < w\ \neg(D(N, z) = 0) et de w=S N∧∀z<S N ¬(D(N,z)=0)w = S\,N \wedge \forall z < S\,N\ \neg(D(N, z) = 0). Le second cas est exclu : N<S NN < S\,N, et le point (i) (b) de Modules de Gödel, avec le terme NN, donnerait ¬(D(N,N)=0)\neg(D(N, N) = 0), contraire à (i). Dans le premier cas, la condition w<S Nw < S\,N découle des deux autres : si l'on avait N<wN < w, le même point, avec le terme NN, donnerait ¬(D(N,N)=0)\neg(D(N, N) = 0) ; donc ¬(N<w)\neg(N < w), et la trichotomie (Ordre dans PA, (v)) donne w⩽Nw \leqslant N, c'est-à-dire w<S Nw < S\,N. On obtient l'équivalence annoncée, et, en passant, lg(N)⩽N\mathrm{lg}(N) \leqslant N.

Valeurs. Pour N=0N = 0, D(0,0)=0D(0, 0) = 0 et la clause ∀z<0\forall z < 0 est démontrable (Modules de Gödel, (i) (a)) : lg(0)=0\mathrm{lg}(0) = 0. Soit M=aj(h,v)M = \mathrm{aj}(h, v), et écrivons avec la valeur ll de lg(h)\mathrm{lg}(h), de sorte que D(h,l)=0D(h, l) = 0 et ∀z<l ¬(D(h,z)=0)\forall z < l\ \neg(D(h, z) = 0). Par (i), D(M,S l)=D(h,l)=0D(M, S\,l) = D(h, l) = 0. Sous l'hypothèse z<S lz < S\,l, distinguons z=0z = 0 et z=S z′z = S\,z', par l'instance de Q3\mathrm Q_3 : dans le premier cas, D(M,0)=MD(M, 0) = M, qui n'est pas nul par le point (iii) de Ajout dans PA ; dans le second, S z′<S lS\,z' < S\,l donne S z′⩽lS\,z' \leqslant l, c'est-à-dire z′<lz' < l, et D(M,S z′)=D(h,z′)D(M, S\,z') = D(h, z') n'est pas nul. Le point (i) (a) de Modules de Gödel donne ∀z<S l ¬(D(M,z)=0)\forall z < S\,l\ \neg(D(M, z) = 0), et la caractérisation donne lg(M)=S l\mathrm{lg}(M) = S\,l. Enfin, si ¬(N=0)\neg(N = 0), le point (iii) de Ajout dans PA donne N=aj(dbt(N),dr(N))N = \mathrm{aj}(\mathrm{dbt}(N), \mathrm{dr}(N)), donc lg(N)=S lg(dbt(N))\mathrm{lg}(N) = S\,\mathrm{lg}(\mathrm{dbt}(N)), qui n'est pas nul par Q1\mathrm Q_1 ; la contraposition donne la dernière formule.

(iii) Soit M=aj(h,v)M = \mathrm{aj}(h, v), et ll la valeur de lg(h)\mathrm{lg}(h), de sorte que lg(M)=S l\mathrm{lg}(M) = S\,l par (ii). Pour le rang ll : par le point (iii) de Fonctions usuelles dans PA, S l⩽S lS\,l \leqslant S\,l donne S l−˙S l=0S\,l \mathbin{\dot{-}} S\,l = 0, et (M)l=dr(D(M,0))=dr(M)=v(M)^l = \mathrm{dr}(D(M, 0)) = \mathrm{dr}(M) = v. Pour un rang j<lj < l, c'est-à-dire S j⩽lS\,j \leqslant l, l'élimination fournit aa tel que a+S j=la + S\,j = l ; le même point donne l−˙S j=al \mathbin{\dot{-}} S\,j = a et, puisque S a+S j=S(a+S j)=S lS\,a + S\,j = S(a + S\,j) = S\,l et S j⩽S lS\,j \leqslant S\,l, S l−˙S j=S aS\,l \mathbin{\dot{-}} S\,j = S\,a. Alors, par (i), (M)j=dr(D(M,S a))=dr(D(h,a))=dr(D(h,l−˙S j))=(h)j.\begin{aligned} (M)^j &= \mathrm{dr}(D(M, S\,a)) \\ &= \mathrm{dr}(D(h, a)) \\ &= \mathrm{dr}(D(h, l \mathbin{\dot{-}} S\,j)) = (h)^j. \end{aligned}

(iv) Soit θ\theta la formule ∀M ∀N ((lg(M)=l∧lg(N)=l∧∀j<l (M)j=(N)j)→M=N)\forall M\, \forall N\, \big((\mathrm{lg}(M) = l \wedge \mathrm{lg}(N) = l \wedge \forall j < l\ (M)^j = (N)^j) \to M = N\big), pour une variable ll nouvelle ; montrons-la par récurrence sur ll. Pour 00, la dernière formule de (ii) donne M=0M = 0 et N=0N = 0. Pour le pas, sous l'hypothèse θ\theta et sous lg(M)=S l\mathrm{lg}(M) = S\,l, lg(N)=S l\mathrm{lg}(N) = S\,l et ∀j<S l (M)j=(N)j\forall j < S\,l\ (M)^j = (N)^j : comme lg(0)=0\mathrm{lg}(0) = 0, ni MM ni NN n'est nul, et le point (iii) de Ajout dans PA donne M=aj(h,v)M = \mathrm{aj}(h, v) et N=aj(h′,v′)N = \mathrm{aj}(h', v'), avec h=dbt(M)h = \mathrm{dbt}(M), v=dr(M)v = \mathrm{dr}(M), et de même pour NN, écrits avec leurs valeurs. Par (ii) et Q2\mathrm Q_2, lg(h)=l=lg(h′)\mathrm{lg}(h) = l = \mathrm{lg}(h'). Sous l'hypothèse j<lj < l, on a j<S lj < S\,l, et (iii) donne (h)j=(M)j=(N)j=(h′)j(h)^j = (M)^j = (N)^j = (h')^j ; le point (i) (a) de Modules de Gödel donne ∀j<l (h)j=(h′)j\forall j < l\ (h)^j = (h')^j, et θ\theta, instanciée par hh et h′h', donne h=h′h = h'. Comme l<S ll < S\,l, (iii) donne v=(M)l=(N)l=v′v = (M)^l = (N)^l = v', et M=aj(h,v)=aj(h′,v′)=NM = \mathrm{aj}(h, v) = \mathrm{aj}(h', v') = N. La généralisation en MM et NN donne θ[S l/l]\theta[S\,l/l], et le point (iii) de Récurrence dans PA donne ⊢𝖯𝖠θ\vdash_{\mathsf{PA}} \theta. On instancie θ\theta par MM et NN, par l'axiome (2), puis ll par le terme fonctionnel lg(N)\mathrm{lg}(N), par le point (ii) (b) de Termes fonctionnels.

□
Remarque

La longueur est définie dans Codages par une recherche bornée par NN, que justifie dans 𝒩\mathcal N l'inégalité D(N,i)⩽N−˙iD(N, i) \leqslant N \mathbin{\dot{-}} i. Le point (i) en est la forme démontrable dans 𝖯𝖠\mathsf{PA}, écrite sans soustraction : D(N,i)=0D(N, i) = 0 ou D(N,i)+i⩽ND(N, i) + i \leqslant N. L'erreur la plus répandue serait de la renforcer en D(N,i)+i<ND(N, i) + i < N : elle est fausse déjà pour N=1N = 1 et i=0i = 0, et un calcul sur tous les N<300N < 300 et i<4i < 4 le confirme. La caractérisation (ii) dispense ensuite de la borne : la longueur est le premier indice où les itérés s'annulent.

Remarque

L'extensionnalité (iv) dit qu'un code est déterminé par sa longueur et ses termes ; dans 𝒩\mathcal N, c'est l'injectivité du codage, point (ii) de Codages, que l'on a contrôlée pour tous les N<400N < 400. Elle sert à reconnaître dans 𝖯𝖠\mathsf{PA} un code construit de deux façons : la concaténation y sera comparée à l'ajout, et l'historique d'une récurrence de valeurs à toute suite qui a les mêmes termes.

Ouvrir dans l'atlas interactif →