LES SYSTEMES FORMELS 1 - Qu'est-ce qu'un système formel ? Un système formel est un quadruplet S = ( A, γ, Ax, R) où : 1 - A est un ensemble fini de symboles, appelé alphabet, 2 - γ est un procédé de construction de mots, 3 – Ax est un ensemble fini ou dénombrable de mots particuliers appelés axiomes, 4 – R est un ensemble fini de règles de déduction de la forme : { w1, ..., wk } → { m1, ..., mn } où pour tout i, wi et mi sont des mots. Remarques : 1- On dit indifféremment règle de déduction, ou de dérivation, ou d'inférence. 2- Il y a deux types de règles d'inférence : les règles de production, qui produisent de nouveaux mots à partir des mots initiaux, et les règles de réécriture, qui fournissent une nouvelle forme pour le même mot. 2 - Trois exemples. Le système (G.P.), encore appelé "axiomatique de Peano" : - alphabet : { x, y, * } - mots : S1 * S2 où S1 et S2 sont des suites quelconques de symboles x ou y - un unique axiome : x * x - une seule règle, qui est une règle de production : w1 * w2 → y w1 * y w2 où w1, w2 sont des mots Le système (D.H.) dû à Douglas Hoffstadter : - alphabet : { M, I, U } - mots : toute suite de lettres de l'alphabet - axiome : M I - règles de déduction : 1- w I → w I U où w est un mot (production) 2- Mw → M ww (production) où w est un mot 3- III → U (réécriture) 4- UU → (réécriture) Le (p q -) système : - alphabet : { p, q, - } - mots : suites finies de symboles de l'alphabet - axiomes : les mots x p - q x - où x est formé uniquement de - une seule règle de déduction (production) : si x, y et z sont des mots formés uniquement de -, du mot x p y q z on peut déduire le mot x p y - q z - Août 2001 - Mme Kempf LOGIQUE FORMELLE 4 / 60 3 - Théorèmes Définition 1 :Dans un système formel, une preuve (ou démonstration) est une suite finie de mots w1 w2.... wk où chaque wi : soit est un axiome, soit se déduit des wj , j < i par l'une des règles d'inférence. L'entier k est appelé la longueur de la preuve. Définition 2 : Un théorème est un mot t tel qu'il existe une démonstration w1 w2....wk avec t = wk On note alors | t . Exemples : Dans (GP), yyx * yyx est un théorème dont la démonstration est : x * x, yx * yx, yyx * yyx Dans (DH), MIIUIIU est un théorème, de preuve : MI, MII (par R2), MIIU (par R1), MIIUIIU (par R2). Dans le (p q -) système, - - - p - - q - - - - - est un théorème de preuve : ---p-q---- , ---p--q----Remarque : Un axiome est un théorème; sa démonstration est de longueur 1. Nous avons donc : {axiomes} ⊂ {théorèmes} ⊂ {mots} ⊂ {chaînes de l'alphabet} ≠ ≠ ≠ 4 - Décidabilité Définition : On dira qu'un système formel est décidable lorsqu'il existe une procédure de décision unique qui permet en un temps fini de décider si un mot quelconque du système est un théorème ou un non-théorème (mot dont on peut prouver qu'il n'est pas un théorème) Théorème Mot du S.F. Procédure de décision Non théorème Réponse en temps fini Un système formel qui n'est pas décidable peut être : - semi-décidable : lorsqu'il existe une procédure qui, si une formule est démontrable, le dira en un temps fini, mais qu'il n'existe pas de procédure capable de faire la même chose pour tous les non théorèmes. - indécidable : dans les autres cas. Août 2001 - Mme Kempf LOGIQUE FORMELLE 5 / 60 5- Procédures de décision Deux procédures de décision sont particulièrement simples : 1 - Si on peut construire l'ensemble de tous les théorèmes d'un système formel, les mots qui n'appartiennent pas à cet ensemble sont des non-théorèmes et le système est décidable : pour tout mot, il suffit de vérifier s'il appartient ou non à l'ensemble des théorèmes. Exemple 1 : Tous les théorèmes de (GP) sont de la forme y ... y x * y ... y x p fois p fois Exemple 2 : Une procédure dérivée : soit m un mot de longueur k d'un système formel S. Si on sait construire de manière exhaustive tous les théorèmes de longueur inférieure ou égale à k, m est un théorème de S si et seulement s'il est l'un d'entre eux. Sinon, il est un non-théorème; et le système est décidable. C'est le cas du (p q -) système ; la procédure est dite "de bas en haut" (ou bottom - up): Cherchons si - - p - - q - - - est un théorème. C'est un mot de longueur 9. 1. on prend l'axiome le plus simple, - p - q - On lui applique la règle d'inférence, on trouve - p - - q - - - qui est un mot de longueur 8. On applique de nouveau la règle d'inférence, on trouve - p - - - q - - - - , mot de longueur >9. 2. on prend le 2ème plus simple axiome, - - p - q - - On lui applique la règle d'inférence, on trouve - - p - - q - - - - qui est un mot de longueur >9. 3. on prend le 3ème plus simple axiome, - - - p - q - - - - ; il est déjà de longueur >9. Le mot - - p - - q - - - est donc un non-théorème. Remarque : Tout système formel dont les règles allongent les mots est décidable. La procédure de décision précédente le prouve. 2 - Procédure dite "de haut en bas" ou (top - down): un mot étant donné, on regarde si c'est un axiome (donc un théorème); si non, on réduit sa longueur en utilisant une règle d'inférence. On itère le procédé jusqu'à obtenir : • soit un axiome : dans ce cas, le mot initial était un théorème • soit un mot dont la longueur ne peut plus être réduite et qui n'est pas un axiome : le mot initial était un non théorème. Quoique simples et fiables, ces procédures ne sont pas forcément rapides. Il se peut même qu'elles ne permettent pas d'atteindre une réponse : Exemple : le MU-Puzzle (Douglas Hofstadter) En cherchant si le système (DH) est décidable, supposons que nous voulions tester si le mot MU est un théorème. Comme deux des règles de (DH) raccourcissent les mots auxquels elles s'appliquent, on ne peut pas conclure en appliquant la remarque précédente. Il reste la possibilité de construire l'arbre de dérivation du système, c'est-à-dire de produire tous les théorèmes de (DH) en appliquant de toutes les manières possibles les règles d'inférence à partir de l'axiome MI. Si l'on trouve MU, on dira alors qu'il est un théorème. Si on ne le trouve jamais, ce ne sera pas un théorème. Août 2001 - Mme Kempf LOGIQUE FORMELLE 6 / 60 Cette conclusion est insatisfaisante à deux titres : comment être sûr qu'on n'obtiendra jamais MU ? ne peut-on pas toujours se dire qu'on l'obtiendra un peu plus tard? Et si MU n'est pas un théorème, ce n'est pas forcément un non théorème. On ne peut donc pas conclure quant à la décidabilité de (DH). Deux notions peuvent conduire à des techniques plus efficaces, celles d'interprétation et de méta-raisonnement. 6 - Interprétation Exemple : Dans le (p q -) système, on peut observer qu'une chaîne de symboles est un théorème si et seulement si les 2 premiers groupes de - ont des cardinaux dont la somme est le nombre de - du 3ème groupe. On peut même faire mieux qu'"observer" : on peut le démontrer par récurrence sur la longueur des théorèmes (exercice). Ceci donne l'idée d'interpréter - - p - - - q - - - - - en : 2 plus 3 égale 5. On remarquera qu'une interprétation est rarement unique : 2 égale 3 ôté de 5 est une autre idée. Plus généralement : Une interprétation d'un système formel S = ( A, γ, Ax, R) est le choix d'un univers U de domaine D (D est un ensemble d'objets appartenant à U) et d'une application I : S → U qui associe : à chaque symbole de A un élément de D au procédé de construction de mots γ un procédé de construction d'énoncés de U à chaque axiome de Ax un énoncé vrai de U à chaque règle d'inférence de R un mode de déduction dans U Les théorèmes du système formel S deviennent des énoncés de U qu'on juge VRAIS ou FAUX dans l'interprétation (ou privés de sens). U SF x x Procédé de Procédé de Construction de construction mots d'énoncés I axiome Enoncé vrai Règle Règle d’inférence d’inférence théorèmes Août 2001 - Mme Kempf énoncés LOGIQUE FORMELLE 7 / 60 7 - Preuve et Vérité Les concepts de Preuve et de Vérité appartiennent à des univers différents. Les notions de vérité et de fausseté sont absentes des systèmes formels. Dans un système formel, un mot peut être prouvé par une démonstration. C'est alors un théorème. Lorsqu'on donne une interprétation du système formel, les mots deviennent des énoncés qui peuvent être vrais, ou faux, ou privés de sens. Quel lien y a-t-il entre preuve et vérité ? Tout est possible ! Exemple 1 : Dans le (p q -) système interprété dans l'ensemble des entiers positifs ou nuls où p représente + , q représente = et où une suite de n – représente l'entier n, les axiomes deviennent effectivement des énoncés vrais, les règles d'inférence se traduisent par des déductions correctes (par exemple : si 2 + 3 = 5 alors 2 + 4 = 6) et les théorèmes sont exactement les énoncés vrais de la forme a + b = c. Exemple 2 : | Dans (GP), nous avons vu que les théorèmes sont: y ... y x * y ... y x p fois On introduit ce qu'on appelle une métanotation | p fois p p y x * y x (c'est-à-dire une notation issue d'un autre contexte que celui du système formel dans lequel on travaille). w1 * w2 est donc un théorème SSI p w1 s'écrit y x et w2 aussi Sinon, w1 * w2 est un non-théorème. • Première interprétation de (GP) : Domaine: N , x:0, *:= , y : successeur de . L'axiome est 0 = 0 (vrai!) Les théorèmes sont p = p pour tout p ∈ N (énoncés vrais). De plus, les énoncés faux sont exactement les interprétations des non-théorèmes. bonne interprétation, correspondance parfaite entre: théorèmes et énoncés vrais non-théorèmes et énoncés faux • Deuxième interprétation de (GP) Domaine : Langue française , x : "Socrate est mortel", * : identité de deux phrases , y : négation L'axiome s'interprète comme un énoncé vrai, les théorèmes aussi. Mais le non-théorème y y x * x s'interprète en un énoncé vrai. La classe des non-théorèmes qui deviennent des énoncés vrais est non vide; cependant, tout énoncé vrai est l'interprétation d'un théorème (mais aussi, en plus, de non théorèmes). Août 2001 - Mme Kempf LOGIQUE FORMELLE 8 / 60 Exemple 3 : "Pour tout entier n supérieur à 2, l'équation en nombres entiers xn + yn = zn n'a pas de solution" ( Fermat ) Ce résultat est : • VRAI avec l'interprétation commune des symboles arithmétiques. • INDEMONTRABLE dans l'axiomatisation de l'arithmétique ; mais ce n'est pas non plus un non théorème. L'axiomatique de l'arithmétique est donc au mieux semi-décidable (puisqu'il existe des phrases indémontrables) et il existe des énoncés vrais qui ne sont pas issus de théorèmes. Cela ne rend pas pour autant l'axiomatique sans intérêt ; cet intérêt a simplement ses limites. Quelques définitions: On appelle tautologie tout mot d'un système formel qui se traduit par un énoncé vrai dans toutes les interprétations du système formel. Un système formel dans lequel tout théorème est une tautologie est dit correct. Un système formel dans lequel toute tautologie est un théorème est dit complet. Un système est dit consistant lorsqu'il existe une interprétation transformant tout théorème en énoncé vrai. Cette interprétation est appelée modèle. Remarque : un système correct est consistant. 8 – Méta-raisonnement Jusqu'ici, pour voir si un mot du système formel S est un théorème ou non, on a cherché une démonstration dans S ou une procédure que l'on déroule à l'intérieur du système S afin de conclure. On raisonne dans le système formel. Effectuer un méta-raisonnement, c'est raisonner sur le système formel afin d'en trouver les propriétés ou de gagner en efficacité pour les démonstrations. Exemple : le MU-Puzzle. Nous avons vu que la construction de l'arbre de dérivation pouvait conduire à une recherche sans fin de la réponse. Le préfixe "méta" (du grec µετα : au-dessus de) • on a déjà introduit les méta-notations. • on dit parfois que l'on travaille à un méta-niveau pour dire "à un niveau d'abstraction supérieur"; on aura des exemples de cela dans la suite. • il arrive que l'on définisse une méta-théorie, c'est-à-dire une théorie qui englobe la théorie actuelle et permette d'élargir le champ des raisonnements. • on parle enfin de méta-raisonnement lorsque l'on choisit de raisonner sur un système formel (et non dedans), par exemple pour aboutir (plus rapidement) à une preuve, pour démontrer qu'un mot n'est pas démontrable, pour étudier le système formel et établir certaines de ses propriétés. Août 2001 - Mme Kempf LOGIQUE FORMELLE 9 / 60 LOGIQUE PROPOSITIONNELLE 1 - Naissance de la Logique des Propositions Historique rapide La Logique des Propositions est née de la volonté de modéliser ce qu'on appelle "un raisonnement logique", c'est-à-dire, • essentiellement déductif pour simplifier, un raisonnement et • sans ambiguïté. On admet classiquement qu'un tel raisonnement est fondé sur les 3 principes d'Aristote: • identité (une phrase est identique à elle-même) • tiers exclu (une phrase est vraie ou fausse; il n'y a pas d'autre possibilité) • non-contradiction (on ne peut pas démontrer un énoncé et son contraire). Le processus qui fait passer de l'observation du raisonnement logique au système formel de logique des propositions peut être décrit en trois étapes. 1ère étape : Description du « raisonnement logique » Il s'agit de mettre en évidence les outils qui permettent de décrire complètement un raisonnement logique et les conditions de sa validation. ! Les symboles et opérateurs de base (ce qui permet d'exprimer sur quoi on raisonne) par exemple : - non, et, ou, implique,... - symboles représentatifs de ‘vrai’ et ‘faux’ - symboles représentant des énoncés, - symboles permettant de séparer des énoncés ! Les règles de fonctionnement (ce qui permet de décrire comment on raisonne) par exemple : - si A et B sont vrais, alors (A et B) est vrai - nier 2 fois A revient à n’appliquer aucun opérateur ... - la manière de construire un énoncé complexe à partir d’énoncés élémentaires - les mécanismes de déduction ... ! La validation des raisonnements repose ici sur le SENS des énoncés. Août 2001 - Mme Kempf LOGIQUE FORMELLE 10 / 60 2ème étape : Description d’un modèle sémantique Il s'agit de décrire une famille de symboles et de mécanismes de déduction qui permettent de reproduire tous les raisonnements logiques au sens précédent indépendamment du sens des énoncés. * On garde les notions de "vrai" et "faux" MAIS * On ne prend plus en compte le SENS des énoncés. ! Dans le modèle sémantique, un raisonnement sera valide lorsque partant d'hypothèses vraies il conduira à des conclusions vraies. On doit à Leibniz (1646 - 1716) et Frege (1848 - 1925) les premiers modèles sémantiques déductifs COMPLETS (i.e. dans lesquels tout énoncé vrai est démontrable) et NON-CONTRADICTOIRES (i.e. dans lesquels il est impossible de démontrer à la fois un énoncé et sa négation ) : Les symboles et opérateurs de base . vrai 1, faux 0 . énoncés élémentaires . connecteurs : ∧ conjonction ∨ disjonction négation ⊃ implication . séparateurs : ( ) ou , ou [ ] etc... Les mécanismes de déduction (qui permettent de déduire des énoncés VRAIS à partir d'autres énoncés VRAIS pour faire une théorie COMPLETE ) sont au nombre de 8 : (R1) Si x et y sont vrais alors x ∧ y est vrai (R2) Si x ∧ y est vrai alors x est vrai et y est vrai (R3) Si x est vrai et x ⊃ y est vrai alors y est vrai (R4) x et x sont interchangeables (R5) x ⊃ y et y ⊃ x sont interchangeables Août 2001 - Mme Kempf LOGIQUE FORMELLE 11 / 60 R6) x ∧ y et (x ∨ y) sont interchangeables (R7) x ∨ y et x ⊃ y sont interchangeables (R8) si en partant de x on peut déduire y par les règles R1, R2, ..., R7 alors x ⊃ y est VRAI Tables de Vérité Pour chaque connecteur, on est capable de construire une TABLE DE VERITE qui en exprime le comportement : Exemples : A et B représentent des énoncés. D'après (R1) et (R2), on peut établir la table de vérité de A ∧ B B Vrai Faux Vrai V F Faux F F A Sachant que A est différent de A, la règle (R4) permet de faire la table de vérité de A : A A V F F V Ayant ces tables de vérité pour la négation et la conjonction, la règle (R6) permet d'établir celle de la disjonction AvB: B Vrai Faux Vrai V V Faux V F A Août 2001 - Mme Kempf LOGIQUE FORMELLE 12 / 60 3ème étape : Etablir un système formel dans lequel les théorèmes soient exactement les abstractions (*) des énoncés vrais dans le modèle sémantique précédent. (*) En effet, un système formel est un système syntaxique. Il ne prend en compte:- ni le sens des mots, - ni le fait qu’ils soient vrais ou faux. On doit donc faire une abstraction pour passer à un système formel: * éliminer les notions de vérité et de fausseté (et donc les symboles « vrai » et « faux » et la possibilité de faire et d’utiliser des tables de vérité) * mettre au point un ensemble de règles d'inférence et d'axiomes qui permette de démontrer comme théorèmes du S.F. exactement les correspondants des énoncés vrais obtenus par les règles R1 à R8 dans le modèle sémantique. ! Ici un raisonnement sera valide s’il est une preuve (ou demonstration) au sens du chapitre 1. Le premier système formel répondant à cette attente est dû à Whitehead et Russel (1910). Il a pour symboles : les énoncés, , ⊃ , des séparateurs. Il a 4 axiomes et une seule règle d’inférence : MODUS PONENS de (a et a ⊃ b) on peut déduire b (a et a ⊃ b) → b De nombreux autres systèmes formels, équivalents, ont été proposés par la suite (systèmes de Lukasiewicz ; de Shaeffer ; système booléen). Celui-ci reste cependant, dans une version optimisée avec 3 axiomes, le plus utilisé actuellement pour la Logique des Propositions, sous le nom de (LP). 2 - LE SYSTEME FORMEL (LP) 2-1- Définition : alphabet : lettres propositionnelles connecteurs : et ⊃ parenthèses : ( et ) mots : lettres propositionnelles si w est un mot, (w) est un mot et w est un mot si w1, w2 sont des mots, w1 ⊃ w2 aussi. axiomes : a1 - ( w1 ⊃ (w2 ⊃ w1) ) a2 - (( w1 ⊃ (w2 ⊃ w3)) ⊃ ((w1⊃ w2) ⊃ (w1⊃ w3))) a3 - ( ( w2 ⊃ w1) ⊃ (w1 ⊃ w2) ) dérivation : règle de détachement ou modus ponens : si w1 et w2 sont des mots, alors (w1) et (w1 ⊃ w2) → w2. Août 2001 - Mme Kempf LOGIQUE FORMELLE 13 / 60 2-2 Remarques 1 - Les symboles et ⊃ suffisent puisque : A∨B ≡ A⊃B où ≡ signifie "équivalent à" A ∧ B ≡ (A ⊃ B) 2 - La règle de modus ponens a été choisie parce qu'elle formalise exactement la DÉDUCTION et 3 - Les axiomes introduits sont une base de résultats vrais dans le modèle sémantique et indémontrables sans les valeurs de vérité au moyen de modus ponens, choisis exactement pour que : 4 - Les théorèmes démontrables dans le système formel correspondent aux déductions valides dans le modèle sémantique. 2-3- Enrichissement de (LP) 1 - On introduit de nouveaux symboles pour simplifier l'écriture : x ∧ y donné par (x ⊃ y) x ∨ y " " ( x ∧ y) x ≡ y " " (x ⊃ y) ∧ (y ⊃ x) 2 - On démontre des théorèmes de manière à créer de nouvelles règles de déduction qui rendront les démonstrations plus rapides. Par exemple : ( P ⊃ (Q ⊃ R) ) → ( Q ⊃ (P ⊃ R) ) ou encore : ( (A ⊃ B) ∧ (B ⊃ C) ) → (A ⊃ C) 3 - On formalise d'autres principes de démonstration pour ne pas avoir à en redémontrer la validité à chaque utilisation. Par exemple : le raisonnement par l'absurde Exemple 1 : Supposons donné un théorème (P⊃(Q⊃R)). Nous voulons démontrer (Q⊃(P⊃R)). (P⊃(Q⊃R)) et (a2) ((P⊃(Q⊃R)) ⊃ ((P⊃Q) ⊃ (P⊃R)) donnent par modus ponens ((P⊃Q) ⊃ (P⊃R)) (t1) Avec (a1) : ((P⊃Q) ⊃ (P⊃R)) ⊃ (S⊃ ((P⊃Q) ⊃ (P⊃R))) (t1) donne, par modus ponens, Avec (a2) : (t2) (S⊃ ((P⊃Q)⊃(P⊃R))) ⊃ ((S⊃(P⊃Q)) ⊃ (S⊃(P⊃R)))) (t2) donne, par modus ponens, Avec (a1) : (S⊃ ((P⊃Q) ⊃ (P⊃R))) ((S⊃(P⊃Q)) ⊃ (S⊃(P⊃R))) (t3) (Q⊃(P⊃Q)) Août 2001 - Mme Kempf LOGIQUE FORMELLE 14 / 60 et en réécrivant (t3) sous la forme : ((Q⊃(P⊃Q)) ⊃ (Q⊃(P⊃R))) modus ponens donne (Q⊃(P⊃R)). " D'où la nouvelle règle : ( P ⊃ (Q ⊃ R) ) → ( Q ⊃ (P ⊃ R) ) Exemple 2 : Soient 2 théorèmes de la forme | A ⊃ B et B ⊃C . (a1) permet d'écrire Comme | (B ⊃ C) ⊃ (A ⊃ (B ⊃ C)) modus ponens donne | ( A ⊃ (B ⊃ C) ) (a2) permet d'écrire Comme | (A ⊃ (B ⊃ C)) ⊃ ( (A ⊃ B) ⊃ (A ⊃ C) ) modus ponens donne | ( (A ⊃ B) ⊃ (A ⊃ C) ) Finalement : | ( (A ⊃ B) ⊃ (A ⊃ C) ) | (A ⊃ C) par modus ponens et | | B ⊃ C | ( A ⊃ (B ⊃ C) ) (A ⊃ B) donnent D'où la nouvelle règle : ( (A ⊃ B) ∧ (B ⊃ C) ) → (A ⊃ C) Exemple 3 : Le raisonnement par l'absurde. Août 2001 - Mme Kempf LOGIQUE FORMELLE 15 / 60 3 - Où en est-on ? Le processus historique de construction peut être schématisé ainsi : Description du raisonnement logique usuel Interprétation 1 Abstraction 1 (ajout du sens) Modèle Sémantique Interprétation 2 Abstraction 2 (ajout des valeurs de vérité) Système formel (LP) 4 - Le premier théorème de GÖDEL (1930) Nous avons vu la notion générale d'interprétation d'un système formel. Comment se traduit-elle dans le cas de (LP)? Nous voyons sur le schéma ci-dessus qu'il y a deux "interprétations" successives pour passer de (LP) à l'Univers du raisonnement réel : • dans un premier temps, on passe au modèle sémantique par un processus qui revient exactement à la construction d'une interprétation au sens du chapitre 1, • dans un deuxième temps, les mots prennent un sens; cela correspond à un plongement du modèle sémantique dans un univers choisi, aucune construction nouvelle n'intervient. D'où la définition : Une INTERPRETATION de (LP) est une application ϕ : { mots de (LP) } → {0,1} vérifiant : ϕ ( P) = 1 - ϕ (P) ϕ (P ⊃ Q) = 0 ssi ϕ (P) = 1 et ϕ (Q) = 0 Rappel : On dit qu'un mot w de (LP) est une tautologie lorsque ϕ (w) = 1 Août 2001 - Mme Kempf LOGIQUE FORMELLE pour toute interprétation ϕ de (LP). 16 / 60 THEOREME DE GÖDEL Un mot w de (LP) est un théorème si et seulement si w est une tautologie. Autrement dit : Pour qu'un mot de (LP) soit un théorème, il faut et il suffit qu'il prenne la valeur de vérité 1 quelles que soient les valeurs prises par les variables propositionnelles qu'il contient dans le modèle sémantique de (LP). Ce théorème est essentiel : • il permet de démontrer qu'un mot de (LP) est un théorème de manière extrêmement simple : en construisant une table de vérité. • il donne aussi un exemple de meta-raisonnement : au lieu de démontrer qu'un mot de (LP) est un théorème par modus ponens, on étudie son comportement dans le modèle sémantique. • il montre que (LP) est un système : décidable complet et correct non-contradictoire (pour aucune formule ϕ on ne peut démontrer à la fois ϕ et ¬ϕ) et donc consistant. Août 2001 - Mme Kempf LOGIQUE FORMELLE 17 / 60 LOGIQUE DES PREDICATS 1 - Les lacunes de la logique des propositions pour formaliser les raisonnements Dans (LP) les lettres propositionnelles représentent des énoncés qui seront interprétés comme VRAIS ou FAUX. Par exemple : (E1) pour tout X , sin (90-X) = cos X De même : (E2) sin (90-X) = cos X (E3) il existe X tel que sin (90-X) = cos X Mais on n'a aucun moyen dans (LP) de voir que (E2) est un sous-énoncé de (E1) et de (E3) ou d'exprimer que (E1) implique (E3) ce qui est une lacune importante : savoir que : "pour tout X, P(X)" implique "il existe X, P(X)" est un ressort important du raisonnement mathématique par exemple. On ne sait pas non plus formaliser dans (LP) un raisonnement qui conduirait à trouver les valeurs de X pour lesquelles sin (90-X) = cos X est VRAI (ou FAUX). Parce qu'on ne peut pas représenter sin (90-X) ou cos X ou 90 ou X ou l'égalité de manière spécifique. Il est nécessaire d'avoir un système formel dans lequel on puisse représenter de manière différente des objets de nature différente afin de pouvoir formaliser les raisonnements qui portent sur des objets (et pas seulement ceux qui portent sur des énoncés). De même, si on veut formaliser le syllogisme : Tous les hommes sont mortels, (et)Socrate est un homme (donc) Socrate est mortel on va obtenir (A Ù B) É C et le syllogisme : Tous les canards sont jaunes, (et)Donald est un canard (donc) Donald est jaune va être formalisé en (D Ù E) É F sans moyen de reconnaître qu'il s'agit de la même forme de raisonnement. Il apparaît donc que dans (LP) on peut modéliser des raisonnements, mais pas des MODES DE RAISONNEMENT. Août 2001 - Mme Kempf LOGIQUE FORMELLE 18 / 60 2 - Un modèle plus précis que la logique des propositions. On introduit les notions de quantificateur, fonction, prédicat, variable, constante, ce qui a pour effet de plonger la logique des propositions dans une logique plus riche : la logique des prédicats, où on distinguera plusieurs sortes de mots : les TERMES : constantes, variables et mots de la forme : f(x1, ..., xk) où f est une fonction et x1, ..., xk sont des termes. les PROPOSITIONS sont de la forme : p(x1, ..., xn) où p est un prédicat et x1, ..., xp sont des termes. les FORMULES :termes, propositions sont des formules ; si A et B sont des formules, c'est aussi le cas de (A) , ù A , A Ù B , A v B , A É B , (" X) A, ($ X) B , etc... les SENTENCES ou formules CLOSES c'est-à-dire sans VARIABLE LIBRE. Quelques définitions et propriétés : variable libre : variable non quantifiée. Une variable quantifiée est dite liée exemple : dans ( $x) ( A(x) É B(y) ) , y est libre, x est liée quantificateur : existentiel universel variable : peut être quantifiée constante : ne peut pas être quantifiée fonction : a pour arguments des termes et pour image des VALEURS (constantes ou variables). prédicat : a pour arguments des termes et pour image des VALEURS DE VERITE (vrai ou faux). Exemple 1 : (" x) ( sin (90-x) = cos x ) " : quantificateur x : variable 90 : constante sin , - , cos : fonctions = : prédicat Août 2001 - Mme Kempf LOGIQUE FORMELLE 19 / 60 Exemple 2 : Un syllogisme bien connu : Les hommes sont mortels Socrate est un homme donc Socrate est mortel De façon plus lourde, mais plus précise : On sait que si x est un homme, alors x est mortel (implicitement : pour tout x, si x est un homme, alors x est mortel) et on sait que Socrate est un homme. On peut donc conclure que Socrate est mortel. (x est ici une variable qui peut prendre toutes sortes de valeurs particulières constantes, comme par exemple : Socrate). On peut donc formaliser le syllogisme en : ("x) [ homme (x) É mortel (x) ] et homme (Socrate) donc mortel (Socrate) où : "homme", "mortel" apparaissent comme des prédicats, x est une variable quantifiée ou liée, "pour tout" est un quantificateur. 3 - Le système formel (LPP) de la logique des prédicats alphabet : constantes a b .... x y .... variables A B .... X Y .... fonctions f , g , H , K .... prédicats p , q , R , S .... connecteurs ù, É quantificateur " séparateurs ( , ) mots: les formules bien formées : termes, propositions, formules, sentences axiomes : a1 - ( w1 É (w2 É w1) ) a2 - (( w1 É (w2 É w3)) É ((w1 É w2) É (w1 É w3))) a3 - ( ( ùw2 É ùw1) É (w1 É w2) ) a4 - ( ("X) G(X) ) É G(U) "particularisation" a5 - ( ("X) (w1 É w2) ) É ( w1 É ("X) w2 ) à condition que X ne figure pas comme variable libre dans w1 règles d'inférence : modus ponens ( m1 et ( m1 É m2 ) ) ----> m2 généralisation m1 ----> ( "X) m1 , à condition que X soit variable libre dans m1. Août 2001 - Mme Kempf LOGIQUE FORMELLE 20 / 60 Enrichissement de (LPP) Connecteurs Ù , V , º , ... définis comme dans (LP) Quantificateur $ défini par ( $ X) p (X) º ù ( ("X) ù p (X) ) Règle "modus tollens" W1 ----> ù W2 W2 É W1 4 - Interprétations de (LPP) Interpréter le système formel (LPP) c'est définir un domaine D dans lequel variables et constantes prendront leurs valeurs et sur lequel seront définies des opérations : fonctions et prédicats, que l'on fera correspondre à ceux de (LPP). Remarque : Les connecteurs sont toujours interprétés de la même manière (Ù : et, v : ou, ...) les quantificateurs $, " aussi. Premier théorème de Gödel "revisité": Les théorèmes de (LPP) sont exactement les formules logiquement valides. r démonstration identique à la démonstration dans (LP) s Définition : Une formule est LOGIQUEMENT VALIDE si, et seulement si, elle est vraie dans toutes les interprétations Remarque : Logiquement valide est synonyme de tautologie Exemple : ("X)(G(X,a)ÉG(X,a)) où G est un prédicat, X une variable, a une constante Contre-exemple : ("X) ( $ Y) ( $ Z) (=(X,*(Y,Z)) ce qui se lit : où = est un prédicat et * une fonction, ("X) ($Y) ($Z) (X = Y*Z) et peut s'interpréter : - en un résultat vrai si = est interprété "égale" et * est interprété "multiplié par " dans N : tout x s'écrit x * 1; - en un résultat faux si = est interprété "égale" et * est interprété "multiplié par" dans N privé de 1: un nombre premier x ne peut pas s'écrire y * z . Août 2001 - Mme Kempf LOGIQUE FORMELLE 21 / 60 5 - Décidabilité de (LPP) théorème ? Mot de (LPP) formule non-valide formule satisfiable formule insatisfiable Une formule qui n'est pas logiquement valide peut être : non-valide s'il existe une interprétation dans laquelle elle est fausse. satisfiable s'il existe une interprétation dans laquelle elle est vraie. insatisfiable (ou contradictoire) si elle est fausse dans toute interprétation. ----> On sait donc DÉCRIRE l'ensemble des non-théorèmes : c'est l'ensemble des formules non valides. Cependant : Théorème de Church (1936) (LPP) n'est pas décidable. · parce que l'ensemble des théorèmes n'est pas récursivement énumérable s · parce qu'il existe d'autres sortes de mots : par exemple les paradoxes : (cf. J.L. Laurière) "Je ne suis pas un théorème" Néanmoins on montre que (LPP) est semi-décidable : pour toute formule qui est effectivement un théorème, on possède une procédure finie qui la démontre. ----> DÉDUCTION NATURELLE Gentzen -1935----> RÉSOLUTION Robinson - 1960- Août 2001 - Mme Kempf LOGIQUE FORMELLE 22 / 60 6 - Logiques d'ordre supérieur Ce que l'on a décrit jusqu'ici représente la première forme de la logique des Prédicats - ou logique du 1er ordre. Mais... si on veut dire : "si deux objets X et Y sont égaux, alors ils ont les mêmes propriétés" on doit quantifier un prédicat P qui représente toutes les propriétés : "P , "X , "Y , (X = Y) É ( P (X) = P (Y) ) , ce qui n'est pas possible dans (LPP). Ä La logique (des prédicats) du 2ème ordre permet de quantifier prédicats et fonctions. ò cos X .dX Si on regarde ò Qu'est-ce que ? Ce n'est ni une constante, ni une variable, ni un prédicat, ni une fonction. Certains appellent cela : une fonctionnelle. Ä Dans la logique du 3ème ordre, on peut quantifier les fonctionnelles. Ä par itération : logique d'ordre W et : l-calcul, l-abstraction (travaux de CHURCH). Août 2001 - Mme Kempf LOGIQUE FORMELLE 23 / 60 7 - Exemple de démonstration dans le système formel (LPP) Si D est un prédicat à 2 places : |¾ ("x) ("y) D (x,y) É ("y) ("x) D (x,y) Rappelons les axiomes de (LPP) : a3 ( W 1 É (W 2 É W 1) ) ( W 1 É (W 2 É W 3) ) É ( (W 1 É W 2) É (W 1 É W 3) ) ( ù W 2 É ù W 1) É (W 1 É W 2) a4 ((" t) p (t)) É p (u) a5 (" t) (m1 É m2) É ( m1 É (" t) m2 ) a1 a2 |¾ ("x) ("y) D (x,y) (a4) donne É ("y) D (x',y) en notant "p(x)" l'expression ("y) D (x,y) |¾ ("y) D (x',y) É D (x',y') (a4) donne aussi en notant "p(y)" l'expression D(x',y). On a donc 2 théorèmes de la forme |¾ A É B et |¾ B É C On a montré (chapitre 2) que ceci permettait de déduire : D'où |¾ ("x) ("y) D (x,y) É D (x', y') Par généralisation : |¾ |¾ qui est de la forme Comme (a5) donne |¾ |¾ (A É C) . . ("x') ( ("x) ("y) D (x,y) É D (x',y') ) ("x')( m1 É m2 ) . ("x') (m1 É m2) É (m1 É ("x') m2) , on obtient par modus ponens ( m1 É ("x') m2 ) et par généralisation : |¾ ("y') ( m1 É ("x') m2 ) . Avec (a5) : ("y') (m1 É ("x')m2) É (m1 É ("y') ("x')m2) on obtient : |¾ (m1 É ("y')( "x')m2) par modus ponens. C'est-à-dire : |¾ ("x) ("y) D (x,y) et par renommage de variables liées : É ("y') ("x') D (x', y') |¾ ("x) ("y) D (x,y) É ("y) ("x) D (x,y) . Bien que très simple, ce procédé de démonstration est lent, lourd et fastidieux. On verra une technique de démonstration beaucoup plus efficace : la méthode de résolution. Août 2001 - Mme Kempf LOGIQUE FORMELLE 24 / 60 8 - Utilisations de la logique des prédicats 8-1 Représentation de connaissances : traduction dans un langage non ambigu, indépendant de la langue, éventuellement exploitable par un automate. Exemple 1 : Pour tout ensemble x, il existe un ensemble y de cardinal plus grand que celui de x peut s'écrire ("x) ( ens(x) É ($y) ($u) ($v) [ ens(y) Ù # (x,u) Ù # (y,v) Ù < (u,v) ] ) # (x, y) signifie " x est de cardinal y " Ce mode de représentation est très riche : une même phrase peut être représentée de multiples manières. Exemple 2 : La maison est jaune Cette connaissance peut se représenter par : jaune (maison) jaune est un prédicat à un argument. ou bien : couleur est un prédicat à deux arguments : d'où une représentation couleur (maison, jaune) plus générale; les objets considérés peuvent être de couleurs diverses, en particulier jaune. ou bien : égale (couleur (maison), jaune) encore plus de généralité ici : couleur est une fonction dont la valeur pour "maison" est égale à jaune; le prédicat égale pourrait aussi bien s'appliquer à "surface(maison)" et "grande" ou à "âge(capitaine)" et "indéterminé". ou encore : valeur (couleur, maison, jaune) nous avons ici le même niveau de généralité mais un choix de représentation différent : le prédicat valeur permet d'évaluer une caractéristique d'un objet; ce peut être la couleur de la maison, qui est jaune, ou la hauteur de la falaise, qui est 44 mètres : valeur (hauteur, falaise, 44 mètres) Août 2001 - Mme Kempf LOGIQUE FORMELLE 25 / 60 8-2 Représentation des Connaissances et Démonstration ü en mathématiques, en logique. dans des domaines où résoudre un problème consiste à donner une preuve constructive d'un théorème. Par exemple : Sachant que : - le propriétaire de la maison A est Paul - Pierre habite la maison A - si x habite la maison y et si z est propriétaire de la maison y, alors x est locataire de z, répondre à la question : " qui est locataire de Paul ? " revient à donner une preuve constructive du théorème ( $ x) locataire (x,Paul) basée sur les hypothèses : |¾ propriétaire (A, Paul) |¾ habite (Pierre, A) |¾ ("x)("y)("z)( (habite (x,y) Ù propriétaire (y,z)) É locataire (x,z) ) Une solution consiste à "affecter des valeurs constantes aux variables", c'est-à-dire à remplacer dans la règle (troisième hypothèse) les variables par les constantes qui vérifient bien les propriétés. Ici, on donnera donc la valeur Pierre à x et A à y (à cause de la deuxième hypothèse) et Paul à z (à cause de la première hypothèse). Il suffit alors de lire la conclusion : locataire (Pierre, Paul). Nous verrons d'autres méthodes, plus générales : ü La logique des prédicats est le cadre privilégié pour construire des systèmes de déduction, des systèmes de production, des démonstrateurs de théorèmes ü d'autres problèmes, de "type robot" peuvent être traités dans (LPP). Ce sont des problèmes dans lesquels les états, les buts et les actions peuvent être décrits dans (LPP), et où il faut passer d'un état-source à un état-but par une suite appropriée d'actions. (c'est une forme de démonstration de théorèmes) ü Ceci conduit aux méthodes de résolution de problèmes, de planification d'actions, d'apprentissage automatique. Ø De manière générale, la Logique des Prédicats est le cadre privilégié du développement de l'Intelligence Artificielle. Août 2001 - Mme Kempf LOGIQUE FORMELLE 26 / 60