Théories et modèles en logique du premier ordre. Exemples II 0. Résumé des épisodes précédents Une fusée à deux étages : logique (⇒, ∀, ...) théorie (=, +, ×, ∈, ...) Cohérence / contradiction Complétude / incomplétude Décidabilité / indécidabilité Exemples de théories : =, PA, ... Aujourd’hui : PA indécidable, incomplète, des théories décidables I. Indécidabilité de l’arithmétique Il n’existe pas d’algorithme qui décide si une proposition est démontrable dans l’arithmétique L’idée Par l’absurde : un tel algorithme existait... il permettrait de décider la démontrabilité des propositions de la forme « Le programme f termine en n » Contradiction Qu’est-ce que la proposition Le programme f termine en n ? Une proposition qui est démontrable si et seulement si le programme f termine en n La fonction qui associe A à (f , n) doit être calculable (f,n) A 0 G F 1 GoF On construit F calculable telle que G ◦ F ne soit pas calculable Si G était calculable... donc G n’est pas calculable Construire un algorithme pour montrer qu’une fonction n’est pas calculable La représentation des programmes f programme : on construit une proposition A telle que q = f (p1 , ..., pn ) si et seulement si (p1 /x1 , ..., pn /xn , q/y )A démontrable dans PA p Notation A[p1 , ..., pn , q] pour (p1 /x1 , ..., pn /xn , q/y )A Les programmes Zn S πin + × χ≤ ◦nm µn Sept d’un coup f = Zn ? f =S? f = πin ? f = +? f = ×? f = χ≤ ? f = ◦nm (g , h1 , ..., hm ) ? La minimisation f construite par minimisation de g B représente g A = (∀z (z < y ⇒ ∃w (¬w = 0∧B[x1 , ..., xn , z, w ])))∧B[x1 , ..., xn , y , 0] où x < y est ∃z (¬z = 0 ∧ y = x + z) Le théorème de représentation q = f (p1 , ..., pn ) A[p1 , ..., pn , q] démontrable dans l’arithmétique A[p1 , ..., pn , q] valide dans N (i) ⇒ (ii) : récurrence sur la construction de f (ii) ⇒ (iii) : trivial (iii) ⇒ (i) : si valide dans N alors il existe des entiers qui... La proposition le programme f termine en p1 , ..., pn ∃y (A[p1 , ..., pn , y ]) f termine en p1 , ..., pn ∃yA[p1 , ..., pn , y ] démontrable dans l’arithmétique ∃yA[p1 , ..., pn , y ] valide dans N Corollaire du théorème de représentation La fonction T qui associe le numéro de la proposition Le programme f termine en p1 , ..., pn au numéro de f et à p1 , ..., pn est calculable L’ensemble des propositions démontrables dans l’arithmétique n’est pas décidable (CQFD) Les propositions existentielles La proposition de l’arithmétique Le programme f termine en n peut prendre la forme ∃x1 ... ∃xn (t = u) La démontrabilité dans l’arithmétique des propositions de cette forme est indécidable Termes t et u polynômes en x1 , ..., xn ∃x1 ... ∃xn (t = u) démontrable si et seulement si t = u a une solution Pas d’algorithme pour décider l’existence de solutions des équations entières polynomiales multivariées (Matiyasevich, 1970) Le dixième problème de Hilbert Équation polynomiale Exemple : X 7 + X 5 − 2 = 0 ou X 2 − 2 = 0 Peut-on décider si une telle équation a une solution dans N ? an X n + an−1 X n−1 + ... + a0 = 0 1 + (an−1 /an )1/X + ... + (a0 /an )1/X n = 0 Pour X assez grand, chaque terme < 1/n en valeur absolue : somme non nulle On énumère et teste tous les entiers inférieurs Généraliser cet algorithme aux équations polynomiales multivariées... ben non II. Après la pluie, le beau temps : La semi-décidabilité Énumérer et tester f (x, y ) = 1 si x est le numéro d’une dérivation et et la racine de cette dérivation est y Plus petit entier x tel que f (x, pAq) = 1 On énumère tous les entiers, jusqu’à trouver un entier qui soit le numéro d’une démonstration de A Si A est démontrable, ce numéro finira bien par sortir Sinon la recherche se poursuit à l’infini III. Le théorème de Gödel Chercher simultanément une démonstration de A et de ¬A Plus petit entier x tel que f (x, pAq) = 1 Plus petit entier x tel que f (x, pAq) = 1 ou f (x, p¬Aq) = 1 Les 4 possibilités 1. Si A est démontrable et ¬A n’est pas démontrable g termine et retourne une démonstration de A 2. Si ¬A est démontrable et A n’est pas démontrable g termine et retourne une démonstration de ¬A 3. Si ni A ni ¬A ne sont démontrables g ne termine pas 4. Si A et ¬A sont tous les deux démontrables Les 4 possibilités 1. Si A est démontrable et ¬A n’est pas démontrable g termine et retourne une démonstration de A 2. Si ¬A est démontrable et A n’est pas démontrable g termine et retourne une démonstration de ¬A 3. Si ni A ni ¬A ne sont démontrables g ne termine pas 4. Si A et ¬A sont tous les deux démontrables Les 4 possibilités 1. Si A est démontrable et ¬A n’est pas démontrable g termine et retourne une démonstration de A 2. Si ¬A est démontrable et A n’est pas démontrable g termine et retourne une démonstration de ¬A 3. Si ni A ni ¬A ne sont démontrables g ne termine pas 4. Si A et ¬A sont tous les deux démontrables Les 4 possibilités 1. Si A est démontrable et ¬A n’est pas démontrable g termine et retourne une démonstration de A 2. Si ¬A est démontrable et A n’est pas démontrable g termine et retourne une démonstration de ¬A 3. Si ni A ni ¬A ne sont démontrables g ne termine pas Si 3. vide... donc 3. non vide Le théorème de Gödel Il existe une proposition A telle que ni A ni ¬A ne soit démontrable dans l’arithmétique IV. Conséquences de l’incomplétude de l’arithmétique Exercice Montrer qu’il existe une proposition A valide dans N mais non démontrable dans l’arithmétique Montrer PA, ¬A cohérente Montrer PA, ¬A a un modèle M Montrer que M et N valident des propositions différentes Modèle non standard de l’arithmétique Typiquement A = ¬∃x1 ...∃xn (t = u) L’équation polynomiale t = u n’a pas de solution dans N mais cela ne peut pas se démontrer dans PA M contient des objets qui sont solution de l’équation polynomiale : ce ne sont pas des entiers Où est le bug ? Que disent exactement l’axiome 5 et l’axiome de compréhension ? La faiblesse du schéma de compréhension ∀ ∃c∀z (z c ⇔ A) N’énonce que l’existence des classes définissables ∀c (0 c ⇒ ∀x (x c ⇒ S(x) c) ⇒ ∀y y c) 0 1 2 3 4 5 6 ... ω Les classes qui contiennent 0, 1, 2... mais par ω ne sont pas définissables Deux cas particuliers ∃x1 ...∃xn (t = u) Dans le modèle : des solutions de cette équation ∃x prf (x, p⊥q) Dans le modèle : une démonstration de ⊥ dans PA Un entier infini Lowenheim-Skolem : PA a un modèle non dénombrable Démonstration : ensemble non dénombrable de constantes PA ∪ {c 6= c 0 | c 6= c 0 } a un modèle Exercice : Une constante ω Montrer PA ∪ {ω 6= 0, ω 6= 1, ω 6= 2, ...} a un modèle Montrer que l’interprétation ω de ω n’est pas un entier idem PA ∪ {ω ≥ 0, ω ≥ 1, ω ≥ 2, ...} La résurrection des infinitésimaux Exercice : Une constante ε Un théorie cohérente T où l’on parle des réels (par exemple ZF ) Montrer T ∪ {ε ∈ R, ε > 0, ε ≤ 1, ε ≤ 1/2, ε ≤ 1/3, ...} a un modèle Analyse non standard Une construction de ε µ fonction de P(N) dans {0, 1} t.q. µ(N) = 1 µ(X ) = 0 si X fini si X et Y disjoints, alors µ(X ∪ Y ) = µ(X ) + µ(Y ) Relation d’équivalence sur les suites de réels u ∼ v ssi µ({i | ui = vi }) = 1 ∗ R : (N → R)/ ∼ injection de R dans ∗ R : r , r , r , r , r , ... mais ε = (1/n)n / ∼ Même propriétés (exprimables) que les réels Le paradoxe de Skolem Exercice : M modèle dénombrable de ZF (Lowenheim-Skolem) Combien d’éléments dans le sous-ensemble de M des ρ tels que Jx ∈ RKx=ρ = 1? Combien d’éléments dans le sous-ensemble de M des ρ tels que Jx ∈ NKx=ρ = 1? Montrer que ces deux ensembles sont en bijection La proposition « il n’y a pas de bijection entre N et R » est-elle valide dans M ? Encore une fois : faiblesse du schéma de compréhension V. Des théories à définir des modèles +, e, I , = Axiomes de l’égalité ∀x∀y ∀z ((x + y ) + z = x + (y + z)) ∀x (x + e = x) ∀x (e + x = x) ∀x (x + I (x) = e) ∀x (I (x) + x = e) Exercice : que sont les modèles (égalitaires) de cette théorie ? Raisonner dans cette théorie Exercice : démontrer la proposition ∀x ((∀y (x + y = y )) ⇒ x = e) Les termes expriment les éléments d’un groupe Théorèmes : propositions vraies dans tous les groupes Bof : très différent de « la théorie des groupes » : les termes expriment des groupes, des morphismes, etc. En revanche ... Les modèles de cette théorie sont les groupes Utile pour démontrer des résultats sur les groupes Exercice : Montrer que tout ensemble infini peut être muni d’une structure de groupe Donner un exemple d’ensemble qui ne peut pas être muni d’une structure de groupe Pourquoi cet argument ne marche pas pour les corps totalement ordonnés archimédiens et complets ? La prochaine fois Plans et développements