Théorie des modèles

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Modèle.

La théorie des modèles est une branche de la logique mathématique. Son principe de base est qu’une théorie est mathématiquement valide si on peut définir un univers dans lequel elle est vraie.

Présentation de la théorie des modèles[modifier | modifier le code]

Elle a été formulée d’une façon complète et cohérente d’abord par Alfred Tarski, dans un article fondateur, Le concept de vérité dans les langages formalisés, publié en 1933 (et traduit dans le recueil Logique, sémantique, métamathématique, Armand Colin 1972, p. 157-269). Tarski a considéré une formule apparemment triviale : « il neige » est une proposition vraie si et seulement s'il neige. (p. 163). Il a compris que cette vérité élémentaire pouvait le conduire à apporter une réponse générale, puissante et satisfaisante au problème plusieurs fois millénaire de la nature de la vérité mathématique.

Tarski a appelé sa théorie la sémantique du calcul des prédicats, pour deux raisons :

  • Elle donne une définition de la vérité et de la conséquence logique, indépendante de ce que donnent les démonstrations[1] en logique ;
  • Elle donne une réponse partielle à la question de la signification du langage, parce que les mots ont du sens s'ils permettent de faire des phrases vraies dans un monde possible.

Mais ses racines sont beaucoup plus lointaines. Un premier modèle délibérément créé apparaît avec la naissance des géométries non euclidiennes. D'abord purement déductives, ces géométries ont peu à peu été acceptées à partir du moment où l'on a pu en donner des modèles, c'est-à-dire des supports géométriques avec des interprétations spécifiques pour désigner les droites. Poincaré par exemple donne un modèle du plan hyperbolique à partir d'un demi-plan du plan complexe.

Symétriquement, si l'on peut dire, l'abbé Buée et Jean-Robert Argand (plan d'Argand), puis Gauss et Cauchy donnent un modèle géométrique des nombres complexes.

Un modèle sert d'abord de structure pour valider une théorie logique ou mathématique.

Il existe deux notions de « consistance » ou de « cohérence » d'une théorie[2], a priori différentes, mais en fait équivalentes en logique classique du premier ordre, d'après le théorème de complétude de Gödel :

  • une notion sémantique : une théorie est satisfaisable[3] si elle possède un modèle, c'est-à-dire une structure qui permet d'interpréter tous les éléments du langage, et dans laquelle les axiomes (et les théorèmes) de la théorie sont vrais ;
  • une notion syntaxique : une théorie est non contradictoire[4] si on ne peut en dériver à la fois une formule et sa négation.

Un système de déduction est dit « correct » (tous les systèmes usuels le sont) si l'existence d'un modèle donne la certitude de travailler sur une théorie qui ne débouchera pas sur une contradiction. L'intérêt est que pour montrer la cohérence ou consistance d'une théorie, il est souvent plus facile d'en déterminer un modèle que de montrer qu'on ne peut dériver de contradiction.

Le théorème de complétude de Gödel assure qu'en logique classique du premier ordre, la réciproque est vraie : toute théorie non contradictoire possède au moins un modèle. Il clôt des recherches qui remontent au théorème de Löwenheim (1915) et qui s’inspirent d’une approche hilbertienne de la vérité mathématique, et il fournit le fondement de la théorie des modèles.

Les modèles du calcul propositionnel classique[modifier | modifier le code]

En calcul propositionnel de la logique classique, il n'y a pas de quantificateurs existentiels ou universels. Les formules sont constituées de propositions atomiques reliées itérativement par des connecteurs logiques. Un modèle consiste à définir, pour chaque variable propositionnelle atomique, une valeur de vérité (vraie ou fausse). On peut alors en déduire la vérité ou la fausseté de toute formule complexe.

La complexité d'une formule est mesurée par le nombre maximal d’opérateurs emboîtés. Par exemple dans (\lnot P) \lor (Q \land R), le ou \lor et le non \lnot sont emboîtés l’un dans l’autre. Mais le non et le et \land ne le sont pas. Cette proposition est de complexité 2 parce qu’elle a au maximum deux opérateurs emboîtés.

Les formules de complexité 0 sont les formules atomiques. C'est le modèle choisi qui définit leur valeur de vérité.

Supposons que la vérité et la fausseté de toutes les formules de complexité n ait été définie. Montrons comment définir la vérité et la fausseté des formules de complexité n+1. Soit P une formule de complexité n+1, obtenue à partir de la formule ou des formules Q et R de complexité n ou inférieure, au moyen d'un connecteur logique. La vérité ou la fausseté de Q et R est donc déjà définie.

a) P = \lnot Q : Si Q est vrai alors P est faux, par définition de la négation. Si Q est faux alors P est vrai, pour la même raison.

b) P = (Q \land R) : Si Q et R sont tous les deux vrais alors P aussi, mais P est faux dans tous les autres cas.

c) P = (Q \lor R) : Si Q et R sont tous les deux faux alors P aussi, mais P est vrai dans tous les autres cas.

d) P = (Q \to R) : Si Q est vrai et R est faux alors P est faux, mais P est vrai dans tous les autres cas.

Une formule vraie dans tout modèle est dite universellement valide (en particulier, une tautologie en est une). Si la formule possède n variables propositionnelles atomiques, il suffit en fait de vérifier la vérité de la formule dans les 2^n modèles possibles donnant les diverses valeurs de vérité aux n propositions atomiques pour prouver que cette formule est une tautologie. Le nombre de modèles étant fini, il en résulte que le calcul des propositions est décidable : il existe un algorithme permettant de décider si une formule est une tautologie ou non.

Par ailleurs, le théorème de complétude du calcul des propositions établit l'équivalence entre être une tautologie et être prouvable dans un système de déduction adéquat.

Exemples[modifier | modifier le code]

Montrons que ((P \to Q) \to P) \to P (loi de Peirce) est une tautologie, en utilisant la règle d). Si P est vraie, alors ((P \to Q) \to P) \to P étant de la forme R \to P est vraie. Si P est faux, alors P \to Q est vrai, (P \to Q) \to P est faux, et ((P \to Q) \to P) \to P est vrai.

Étant vrai dans tout modèle, ((P \to Q) \to P) \to P est une tautologie. Elle est donc également prouvable au moyen de systèmes de déduction, par exemple la déduction naturelle.

Par contre, (P \to Q) \to P n'est pas prouvable. En effet, dans un modèle où P est faux, (P \to Q) \to P est également faux.

Les modèles dans le calcul des prédicats[modifier | modifier le code]

Dans le calcul des prédicats du premier ordre de la logique classique, les prédicats utilisés s'appliquent sur des variables. Pour définir un modèle, il convient donc d'introduire un ensemble dont les éléments serviront de valeurs à attribuer aux variables. Comme pour le calcul propositionnel, on commence par définir la vérité ou la fausseté des formules atomiques dans un domaine donné, avant de définir de proche en proche la vérité ou la fausseté des formules composées. On peut ainsi définir par étapes successives la vérité de toutes les formules complexes de la logique du premier ordre composées à partir des symboles fondamentaux d’une théorie.

Une formule est atomique lorsqu’elle ne contient pas d’opérateurs logiques (négation, conjonction, existentiation, ...). Atomique ne veut pas dire ici qu’une formule ne contient qu’un seul symbole mais seulement qu’elle contient un seul symbole de prédicat fondamental. Les autres noms qu’elle contient sont des noms d’objet et ils peuvent être très complexes. Qu’une formule est atomique veut dire qu’elle ne contient pas de sous-formule. Il s’agit d’une atomicité logique.

L'interprétation des formules atomiques dans un modèle[modifier | modifier le code]

Une interprétation d'un langage du premier ordre est une structure, définie par les éléments suivants.

  • Un ensemble U non vide, l’univers de la théorie. À chaque nom d’objet (constante) mentionné dans le langage est associé un élément de U.
  • À chaque prédicat unaire (à une place) fondamental mentionné dans le langage est associé une partie de U, l’extension de ce prédicat. C'est l'ensemble des valeurs pour lequel on décide que le prédicat est vrai. À chaque prédicat binaire fondamental mentionné dans le langage est associé une partie du produit cartésien U × U, c’est l’ensemble de tous les couples pour lesquels le prédicat est vrai. De même pour les prédicats ternaires, ou d’arité supérieure.
  • À chaque opérateur unaire mentionné dans le langage est associé une fonction de U dans U. À chaque opérateur binaire mentionné dans le langage est associé une fonction de U × U dans U. De même pour les opérateurs d’arité supérieure.

L’ensemble U, ou l’interprétation dont il fait partie, est un modèle d’une théorie lorsque tous les axiomes de cette théorie sont vrais relativement à cette interprétation.

L'usage du mot, modèle, est parfois multiple. Tantôt il désigne l'ensemble U, tantôt l'ensemble des formules atomiques vraies, tantôt l'interprétation. Souvent, quand on dit un modèle d'une théorie, on suppose automatiquement qu'elle y est vraie. Mais on dit aussi qu'une théorie est fausse dans un modèle.

La définition de la vérité des formules complexes[modifier | modifier le code]

Dès qu’on a une interprétation d’une théorie, la vérité de toutes les formules qui mentionnent seulement les constantes, les prédicats et les opérateurs fondamentaux, peut être définie. On commence par les formules atomiques et on procède récursivement aux formules plus complexes.

On reprend les règles définies dans le paragraphe relatif aux modèles du calcul propositionnel, et on définit les deux règles supplémentaires, relatives au quantificateur universel et existentiel.

e) P = \forall x \;Q : Si l'une des formules obtenues en substituant un élément de U à toutes les occurrences libres de x dans l'interprétation de Q est fausse alors P est fausse, sinon, si Q n'a pas d'autres variables libres que x, P est vraie.

f) P = \exists x \;Q : Si l'une des formules obtenues en substituant un élément de U à toutes les occurrences libres de x dans l'interprétation de Q est vraie alors P est vraie, sinon, si Q n'a pas d'autre variables libres que x, P est fausse.

e) et f) permettent de définir la vérité et la fausseté de toutes les formules closes, c’est-à-dire sans variables libres.

La vérité et la fausseté de toutes les formules complexes, sans variables libres, de la logique du premier ordre, peut donc être déterminée dans un modèle donné.

Une formule vraie dans tout modèle s'appelle loi logique ou théorème. Comme pour le calcul propositionnel, le théorème de complétude de Gödel énonce l'équivalence entre loi logique et formule prouvable dans un système de déduction adéquat. Ce résultat est remarquable, compte tenu du fait que, contrairement au calcul des propositions, le nombre de modèles pouvant être envisagé est en général infini. D'ailleurs, contrairement au calcul des propositions, le calcul des prédicats n'est pas décidable.

Exemples[modifier | modifier le code]

La formule \exists x \; \forall y \; (R(x) \to R(y)) est une loi logique. En effet, considérons un modèle U non vide. Il y a alors deux possibilités.

  • Ou bien on attribue la valeur vraie à R(y) lorsque y se voit attribuer une valeur quelconque dans U, et dans ce cas, on attribue à x une valeur quelconque dans U. L'implication R(x) \to R(y) est alors vraie pour tous les y dans U, donc \forall y \; (R(x) \to R(y)) est également vraie dans U, et x désignant également un élément de U, \exists x \; \forall y \; (R(x) \to R(y)) est vraie dans U.
  • Ou bien on attribue la valeur faux à R(y) pour au moins un y dans U. Désignons alors par x cet élément. Alors pour tout y de U, R(x) \to R(y) est vraie, donc \forall y \; (R(x) \to R(y)) est vraie dans U, et donc \exists x \; \forall y \; (R(x) \to R(y)) est également vraie.

Dans les deux cas, la formule est vraie. U étant quelconque, la formule est vraie dans tout modèle, et peut également être prouvée au moyen d'un système de déduction.

Par contre, la formule \exists x (P \to Q(x)) \to (P \to \forall x Q(x)) n'est pas prouvable. Il suffit de prendre comme modèle un ensemble U à deux éléments a et b, à poser P et Q(a) vraies, et Q(b) faux. P \to \forall x Q(x) est faux dans U, alors que \exists x (P \to Q(x)) est vraie (avec x = a). Il en résulte que \exists x (P \to Q(x))\to (P \to \forall x Q(x)) est fausse dans U. La formule étant falsifiable n'est pas un théorème.

Les modèles de la logique intuitionniste[modifier | modifier le code]

Les modèles présentés jusqu'ici sont des modèles de la logique classique. Mais il existe d'autres logiques, par exemple la logique intuitionniste qui est une logique qui construit les démonstrations à partir des prémisses. Il existe pour cette logique une théorie des modèles, les modèles de Kripke avec un théorème de complétude : une formule est démontrable en logique intuitionniste si et seulement si elle est vraie dans tout modèle de Kripke.

Ces modèles permettent par exemple de répondre aux questions suivantes. Soit F une formule close :

  • Ou bien F n'est pas un théorème de la logique classique. Pour le montrer, il suffit d'exhiber un modèle classique qui invalide la formule ;
  • Ou bien F est un théorème de la logique classique. Pour le montrer, il suffit d'en donner une démonstration dans un système de déduction de la logique classique. Il y a alors deux sous-cas :
Ou bien F est également un théorème de la logique intuitionniste. Pour le montrer, il suffit d'en donner une démonstration dans un système de déduction intuitionniste (ou de montrer que F est vraie dans tous les modèles de Kripke) ;
Ou bien F n'est pas démontrable en logique intuitionniste. Pour le montrer, il suffit de donner un modèle de Kripke invalidant la formule.

C'est ainsi qu'on peut démontrer que :

(\lnot \forall x \;F(x)) \to (\exists x \; \lnot F(x)) est un théorème de la logique classique, mais pas de la logique intuitionniste ;
(\lnot \exists x \;F(x)) \to (\forall x \; \lnot F(x)) est un théorème de la logique intuitionniste (et également de la logique classique).

Les modèles de Kripke servent aussi à donner des modèles pour les logiques modales.

Exemples d'application des modèles[modifier | modifier le code]

Nous avons déjà donné des applications des modèles :

  • satisfaire ou au contraire falsifier une formule (par exemple distinguer formule vraie en logique classique mais fausse en logique intuitionniste : la formule est vraie dans tout modèle classique, mais il existe un modèle en logique intuitionniste qui la falsifie) ;
  • prouver qu'une théorie ou un système d'axiomes n'est pas contradictoire en exhibant un modèle satisfaisant tous les axiomes.

En ce qui concerne les systèmes d'axiomes, les modèles interviennent également pour montrer l'indépendance des axiomes entre eux, ou établir la non-contradiction d'un système axiomatique en s'appuyant sur la non-contradiction d'un autre système (on parle alors de « consistance relative »). Donnons quelques exemples.

En géométrie, le Ve postulat d'Euclide est indépendant des autres axiomes de la géométrie. En effet, d'une part, le plan de la géométrie euclidienne est un modèle dans lequel ce postulat est vrai. D'autre part, le demi-plan de Poincaré est un modèle de la géométrie hyperbolique dans lequel ce postulat est faux. Dans ce modèle, l'univers (le plan hyperbolique) est constitué des points du demi-plan euclidien ouvert supérieur \{(x,y) \;|\; y>0 \}. Les droites du plan hyperbolique sont les ensembles d'équation x = a ou (x-a)^2 + y^2 = R^2.

Geodes.GIF

Dans cet univers, si on se donne une droite et un point extérieur à cette droite, il existe une infinité de droites passant par le point et non sécantes à la première droite.

Dans cet exemple, on voit qu'on peut construire un modèle de la nouvelle théorie (le plan hyperbolique et ses droites) en se servant d'un modèle de l'ancienne (dans le plan euclidien : le demi-plan et ses demi-droites et demi-cercles). Si on suppose la « cohérence » ou « consistance » de la géométrie euclidienne, alors on a établi celle de la géométrie hyperbolique.

Cette utilisation de modèles pour montrer la consistance relative d'une théorie est très fréquente. Considérons par exemple la théorie des ensembles, notée ZF. Considérons par ailleurs la théorie, notée ZFC, constituée de ZF à laquelle on ajoute l'axiome du choix. On peut montrer que si ZF est non contradictoire alors ZFC aussi. En effet (grâce au théorème de complétude de Gödel) on suppose qu'il existe un modèle de ZF. On est alors capable, dans ce modèle, d'associer à tout ordinal α un ensemble Fα de façon que :

  • la classe L « réunion » de tous les Fα vérifie tous les axiomes de ZF ;
  • les Fα sont constructibles par récurrence transfinie, dans le sens où Fα est défini à partir des Fβ, pour β < α ;
  • si l'on définit l'ordre d'un y de L comme étant le plus petit ordinal α tel que y appartienne à Fα, alors, à tout x non vide de L « on peut associer » un élément de x d'ordre minimal, que l'on note f(x).

On a alors défini une « fonction » f de L dans L (ou plus exactement, une classe fonctionnelle) vérifiant \forall x\neq\varnothing, f(x) \in x. Autrement dit, f est une « fonction de choix » dans L, si bien que L vérifie non seulement ZF mais aussi l'axiome du choix. L est donc un modèle de ZFC.

Toujours dans un modèle de ZF, si l'on pose R_0 = \varnothing et pour tout entier n, R_{n+1} = \mathcal P(R_n) (ensemble des parties de R_n), alors la réunion des R_n pour tout n entier définit un modèle qui vérifie tous les axiomes de ZF sauf l'axiome de l'infini. Ceci prouve (toujours sous l'hypothèse que ZF est non contradictoire) que ce dernier axiome ne peut être dérivé des autres axiomes.

Notes[modifier | modifier le code]

  1. Une démonstration repose sur des règles de déduction et des axiomes.
  2. Nous éviterons d'utiliser ces deux termes, car chacun des deux peut, selon les auteurs, désigner soit l'une, soit l'autre des deux notions qu'on cherche, justement, à distinguer. Par exemple dans les notes de cours d'E. Bouscaren, « consistance » (p. 6) désigne la notion sémantique et « cohérence » (p. 5) la notion syntaxique, tandis qu'A. Delessert, p. 185 de Gödel : une révolution en mathématiques (ISBN 2-88074-449-0), nomme « consistance » la notion syntaxique.
  3. Notes de cours d'E. Bouscaren p. 6
  4. Notes de cours d'E. Bouscaren p. 5

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Lien externe[modifier | modifier le code]

Ouvrage de référence[modifier | modifier le code]