Vous êtes sur la page 1sur 53

Table des mati` eres

1 Introduction 5 13 13 13 16 18 19 21 21 22 22 23 23 24 24 26 27 28 29 29 30 33 40 40 42 45 45 46 46 47 51 53 54 54 54 55 56 56 57 58 58

Logiques pour lintelligence articielle


P. Gribomont 2006-2007

2 Logique propositionnelle : syntaxe et s emantique 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . 2.1.1 G en eralit es sur les propositions . . . . . . 2.1.2 G en eralit es sur les connecteurs . . . . . . . 2.1.3 Les connecteurs v erifonctionnels . . . . . . 2.1.4 Les connecteurs usuels . . . . . . . . . . . 2.2 Syntaxe du calcul des propositions . . . . . . . . . 2.2.1 Les r` egles de base . . . . . . . . . . . . . 2.2.2 Les r` egles simplicatrices . . . . . . . . . 2.2.3 Les notations polonaises . . . . . . . . . . 2.2.4 Formules et sous-formules . . . . . . . . . 2.2.5 Exemples de r ecurrence non num erique . . 2.3 S emantique du calcul des propositions . . . . . . . 2.3.1 D enitions . . . . . . . . . . . . . . . . . 2.3.2 Les connecteurs naturels . . . . . . . . . . 2.3.3 Formalisation dun texte en langage naturel 2.3.4 Logique et arithm etique . . . . . . . . . . 2.4 Relation de cons equence logique . . . . . . . . . . 2.4.1 Consistance et validit e . . . . . . . . . . . 2.4.2 Cons equence logique, e quivalence logique 2.4.3 Echange et substitution uniforme . . . . . . 2.5 Quelques th eor` emes s emantiques . . . . . . . . . . 2.5.1 Interpolation et d enissabilit e . . . . . . . 2.5.2 Th eor` eme de compacit e . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

3 Proc edures de d ecision analytiques 3.1 La m ethode des tables de v erit e. . . . . . . . . . . . . . . . 3.2 Les tableaux s emantiques . . . . . . . . . . . . . . . . . . . 3.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . 3.2.2 Technique de construction du tableau . . . . . . . . 3.2.3 Propri et es de la m ethode des tableaux s emantiques . 3.2.4 Exercice sur la m ethode des invariants . . . . . . . . 3.2.5 La m ethode en pratique . . . . . . . . . . . . . . . . 3.3 La m ethode analytique des s equents . . . . . . . . . . . . . 3.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . 3.3.2 Interpr etation . . . . . . . . . . . . . . . . . . . . . 3.3.3 Propri et es de la m ethode des s equents . . . . . . . . 3.3.4 Extension d ecriture . . . . . . . . . . . . . . . . . 3.3.5 R` egles r eversibles, r` egles analytiques et synth etiques 3.3.6 Diff erences entre implication et s equent . . . . . . . 3.3.7 Tableaux sign es vs. s equents . . . . . . . . . . . . . i ii

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

. . . . . . . . . . . . . . .

3.4

3.5

3.6

3.7

Le raisonnement automatique . . . . . . . . . . . . . . . . . . 3.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 3.4.2 Digression : Leibniz et le raisonnement automatisable 3.4.3 Automatiser la logique . . . . . . . . . . . . . . . . . 3.4.4 Cubes, clauses et formes normales . . . . . . . . . . . 3.4.5 Clauses de Horn et ensembles de Horn . . . . . . . . . 3.4.6 Lalgorithme de r esolution unitaire . . . . . . . . . . . 3.4.7 La programmation logique propositionnelle . . . . . . 3.4.8 Prolog propositionnel . . . . . . . . . . . . . . . . . . Quelques exercices . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 Argumentation . . . . . . . . . . . . . . . . . . . . . 3.5.2 Analyse de formules . . . . . . . . . . . . . . . . . . 3.5.3 Probl` emes . . . . . . . . . . . . . . . . . . . . . . . . La m ethode de r esolution . . . . . . . . . . . . . . . . . . . . 3.6.1 Formes normales . . . . . . . . . . . . . . . . . . . . 3.6.2 La r` egle de r esolution . . . . . . . . . . . . . . . . . . 3.6.3 Compl etude de la m ethode de r esolution . . . . . . . . 3.6.4 Proc edure de r esolution . . . . . . . . . . . . . . . . . Exercice de r ecapitulation . . . . . . . . . . . . . . . . . . . . 3.7.1 M ethode directe . . . . . . . . . . . . . . . . . . . . 3.7.2 M ethode alg ebrique . . . . . . . . . . . . . . . . . . 3.7.3 Tableau s emantique (notation r eduite) . . . . . . . . . 3.7.4 R eduction a ` la forme conjonctive . . . . . . . . . . . 3.7.5 R esolution . . . . . . . . . . . . . . . . . . . . . . . 3.7.6 R esolution g en eralis ee . . . . . . . . . . . . . . . . . 3.7.7 M ethode ad-hoc . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

59 59 59 59 60 61 62 65 65 66 66 70 72 76 76 80 81 84 86 86 86 87 87 88 88 89 90 90 91 91 93 94 94 94 95 95 96 96 98 99 99 99 100 101

Avant-propos
Du point de vue de son enseignement, la logique formelle e l ementaire se trouve dans une situation paradoxale. Dune part, cet enseignement est favoris e par plusieurs facteurs objectifs mais, dautre part, les r esultats obtenus sont souvent d ecevants. Nous d eveloppons ici bri` evement ces deux points, et proposons quelques pistes pour am eliorer la situation. Quelques atouts. Citons dabord trois raisons pour lesquelles un cours dintroduction a ` la logique formelle devrait e tre un cours facile a ` donner, et facile a ` assimiler. La mati` ere proprement dite est objectivement facile. Analyser une formule propositionnelle, telle ((p q ) r ) (p (q r )), est plus simple quanalyser une formule arithm etique ou alg ebrique telle que ab (a + b)/2. En effet, les propositions ne peuvent e tre que vraies ou fausses, tandis que les nombres forment un ensemble inni. Cela a pour cons equence que les op erations, les r` egles et les m ethodes de la logique propositionnelle sont moins nombreuses et plus simples que celles de lalg` ebre e l ementaire. Dune mani` ere analogue, il est plus facile danalyser une formule du calcul des pr edicats, telle que (exemple classique) x (P (x) Q(x)) (x P (x) x Q(x)), que de r esoudre une e quation int egrale, telle que y (x) = 1+ 0x y (t) dt. Enn, comme nous le verrons, presque tous les th eor` emes de la logique e l ementaire se d emontrent de mani` ere quasi syst ematique, alors que chaque th eor` eme de math ematique e l ementaire, f ut-il aussi vieux que celui de Pythagore, ressemble a ` un d e. Les r ef erences de bonne qualit e, accessibles a ` lautodidacte, ne manquent pas. M eme si, a ` l echelle des math ematiques, la logique formelle est un domaine plut ot jeune, il a quand m eme plus dun si` ecle ; le plus r ecent r esultat que nous verrons, le principe de r esolution, date de 1965 (il est m eme nettement ant erieur en ce qui concerne la logique propositionnelle). En math ematique, tous les domaines de base ont fait lobjet de pr esentations didactiques nombreuses et soign ees ; la logique n echappe pas a ` la r` egle. La situation est moins favorable pour des domaines plus r ecents et moins fond es th eoriquement, comme les syst` emes experts ou les r eseaux neuronaux articiels. Les math ematiques pr eparent a ` la logique. La logique est la science du raisonnement et de lexpression formelle du raisonnement. Tout e tudiant est amen ea ` raisonner et a ` exprimer le fruit de ses cogitations oralement ou par e crit . . . Bien plus, les e cueils traditionnels de la logique e l ementaire (implication, d emonstration, variables libres et li ees, etc.) ont d ej` ae t e rencontr es ailleurs, dans des contextes math ematiques souvent plus difciles. La notion dimplication formalise le lien existant entre lhypoth` ese dun th eor` eme et sa th` ese, notion famili` ere aux e tudiants qui distinguent condition n ecessaire et condition sufsante et qui, plus g en eralement, ont une certaine exp erience des d emonstrations. Distinguer les r oles des variables x et y dans la formule x P (x, y ) nest pas plus difcile que distinguer les r oles de t et x dans lint egrale 0x f (t) dt, ou ceux de i et j dans i Aji xi . Quelques probl` emes . . . Pourquoi alors l etudiant, reconnaissant rapidement et sans h e sitation la validit e des formules (( p q ) r ) (p (q r )), et aussi celle de ab (a + b)/2, h esitera-t-il devant des questions innocentes, telles que 1

4 M ethodes d eductives : le syst` eme de Hilbert 4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Axiomes et r` egle dinf erence . . . . . . . . . . . . . . . . . 4.3 Preuves . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 D erivations . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Quelques r esultats utiles . . . . . . . . . . . . . . . . . . . 4.5.1 Principes de composition et de substitution uniforme 4.5.2 R` egles dinf erence d eriv ees . . . . . . . . . . . . . 4.6 R` egle de d eduction . . . . . . . . . . . . . . . . . . . . . . 4.6.1 Ad equation de la r` egle de d eduction . . . . . . . . . 4.7 Th eor` emes et r` egles d eriv ees suppl ementaires . . . . . . . . 4.7.1 Th eor` emes suppl ementaires . . . . . . . . . . . . . 4.7.2 Quelques autres r` egles d eriv ees . . . . . . . . . . . 4.8 Ad equation et compl etude du syst` eme de Hilbert . . . . . . 4.8.1 Ad equation du syst` eme de Hilbert . . . . . . . . . . 4.8.2 Lemme de Kalmar . . . . . . . . . . . . . . . . . . 4.8.3 D emonstration du lemme de Kalmar . . . . . . . . . 4.8.4 Compl etude du syst` eme de Hilbert . . . . . . . . . . iii

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

et

Soient A, B , X et Y des formules quelconques. On pose A =def (X (A Y )) et B =def (X (B Y )). Si A B est vrai, que peut-on dire de B A, de A B et B A ? Quel lien logique y a-t-il entre les formules x y (P (x) Q(y )) et x P (x) x Q(x) ?

Nous navons naturellement pas dexplication d enitive a ` ce probl` eme, et encore moins de rem` ede infaillible, mais on peut n eanmoins explorer quelques pistes. Tout dabord, les trois points cit es plus haut, bien quobjectivement favorables, ne sont pas d epourvus deffets pervers. La facilit e de la mati` ere peut susciter trois types de r eactions n egatives. Tout dabord, si cest trop simple, ce nest pas utile. Les applications non triviales de la logique sont pourtant nombreuses, mais le temps manque parfois pour les aborder. Ensuite, et cela surtout a ` propos de la logique propositionnelle, pourquoi vouloir formaliser et th eoriser a ` propos dune arithm etique simpliste, limit ee a ` 0 (faux) et 1 (vrai) ?. Enn, la facilit e conduit a ` limprudence, qui elle-m eme m` ene a ` lerreur ! La logique renferme quand m eme quelques pi` eges . . . Les bons livres existent, sans aucun doute, mais ne correspondent pas toujours aux attentes et besoins du lecteur. Un simple expos e du type hypoth etico-d eductif habituellement utilis e en math ematique ne convient pas, m eme si paradoxalement la logique e l ementaire sy pr ete tr` es bien. Ce genre dexpos e se lit avec peu deffort mais conduit seulement a ` une compr ehension passive des concepts, et non a ` une ma trise active de loutil quest la logique pour un informaticien. En outre, un tel expos e ne donne pas de justication a ` lexistence m eme de la logique math ematique et ne fera quamplier les r eactions n egatives e voqu ees plus haut. Notons enn que la maturit e math ematique de lapprenant ne saccompagne pas toujours dune motivation pour aborder une nouvelle branche des math ematiques . . . Quelques solutions. Les rem` edes existent. Une approche historique et philosophique des concepts [L1] est un excellent moyen de contrer les r eactions n egatives, en montrant que beaucoup defforts ont e t e n ecessaires pour aboutir aux concepts simples et e pur es sur lesquels se base la logique moderne. Elle montre aussi que les progr` es r ealis es au cours des si` ecles lont souvent e t ea ` loccasion de probl` emes concrets ; on voit enn que la formalisation de lexpression des raisonnements a e t e la voie royale conduisant a ` une meilleure compr ehension de ceux-ci. Linconv enient de cette approche est quelle allonge grandement la taille de lexpos e, surtout si on le compl` ete dune introduction a ` des probl` emes de nature informatique [L2] auxquels la logique apporte une solution partielle ou compl` ete. Tout en restant persuad e de lint er et p edagogique dune approche historique et philosophique de cette mati` ere, nous devons admettre quelle est peu compatible avec la dur ee maximale de 30 heures pr evue au programme (travaux pratiques non compris), surtout pour des auditeurs fortement sollicit es par ailleurs. Un moyen radical de balayer les objections de simplicit e et dinutilit e est de d epasser quelque peu la mati` ere reconnue comme indispensable a ` linformaticien, et daborder quelques grands probl` emes tels lincompl etude et lind ecidabilit e de larithm etique, ou lind ecidabilit e de la logique pr edicative, conduisant a ` de s ev` eres limitations dans les domaines 2

de lalgorithmique, de la d emonstration automatique et des syst` emes experts, notamment. On obtient alors un cours de math ematique plut ot volumineux et difcile, dont lintroduction dans un curriculum de sciences appliqu ees serait malais ee a ` justier. (Recommandons n eanmoins [CL] et [BM] a ` lamateur.) Leffort a ` fournir par l etudiant peu habitu ea ` lalg` ebre et aux math ematiques abstraites devient alors lourd, m eme quand lauteur sing enie avec succ` es a ` motiver tout r esultat et a ` en donner une bonne intuition avant den exposer une d emonstration rigoureuse [S]. Il semble donc que les probl` emes li es a ` lenseignement de la logique se r esolvent surtout par des d eveloppements suppl ementaires, dont le simple volume peut rebuter l etudiant. Signalons quand m eme que peu de domaines progressent aussi rapidement que la logique pour linformatique ; le Handbook of Logic in Computer Science comporte six volumes, dont le premier contient plus de 800 pages [AGM]. En d epit de cette inqui etante ination, on constate que la partie de la logique math ematique r eellement n ecessaire a ` linformaticien est plut ot r eduite, et peut ais ement sexposer en 30 heures et sassimiler concr` etement et pratiquement en 30 heures suppl ementaires . . . a ` condition de respecter une stricte discipline. Une double comparaison va nous permettre de pr eciser ce point. L etudiant en sciences appliqu ees apprend, assimile et utilise une grande quantit e de th eor` emes danalyse math ematique, a ` propos de fonctions r eelles et complexes, dint egrales et d equations diff erentielles, de transform ees de Laplace et de Fourier, etc. En contrepartie, si lon peut dire, lassimilation nest pas toujours tr` es profonde. On m emorise, ou on sait o` u retrouver, les formules dint egration et de transformation de fonctions, mais on sinterroge moins, ou avec moins de succ` es, sur les conditions de validit e de ces formules. Le plus souvent, il ny a pas de cons equences f acheuses, mais parfois un r esultat aberrant sera admis sans h esitation. A loppos e, l etudiant nutilise que peu de r esultats darithm etique, et presque exclusivement des r esultats e l ementaires ; cependant, il est parfaitement ` a laise dans ce petit domaine ; en particulier, sa perception intuitive des nombres lui permettra le plus souvent de d etecter un r esultat aberrant (d ua ` une erreur de signe, dun facteur 10, etc.). Le point crucial est que l etudiant doit assimiler la logique e l ementaire comme larithm etique e l ementaire ; il doit pouvoir doubler le raisonnement m ethodique et rigoureux par une compr ehension intuitive des formules. Il doit arriver, par exemple, a ` rejeter l enonc e de logique (incorrect !)

Si A B est vrai, alors (X (A Y )) (X (B Y )) est vrai.


aussi rapidement que l enonc e alg ebrique (incorrect !)

Si a b est vrai, alors (y a) x (y b) x est vrai.


En math ematique, il est extr emement p enible de m emoriser des d emonstrations vues comme des textes lin eaires dont tous les mots ont la m eme importance. Il est de loin pr ef erable dassocier a ` un th eor` eme un objet concret (au sens large) a ` partir duquel on peut reconstituer ais ement la d emonstration du th eor` eme. Le dessin de gauche de la gure 1 comporte deux carr es int erieurs dont les dimensions sont a et b ainsi que deux rectangles de c ot es a et b. Ce dessin illustre notamment la formule (a + b)2 = a2 + 2ab + b2 . Le dessin de droite comporte un carr e int erieur de dimension c, ainsi que quatre triangles rectangles de petits c ot es a et b et dhypot enuse c. Laire totale des deux rectangles e tant e gale a ` celle des quatre triangles, laire totale a2 + b2 des deux carr es int erieurs 3

e e a e e e e e e e e e b eec e a ee

1 Introduction
Dans ce bref chapitre, on pr esente les objectifs de la logique. On montre certaines analogies existant entre la logique et larithm etique. On montre lutilit e de la logique pour une meilleure compr ehension des th eor` emes et des programmes, et aussi pour l ecriture m eme de certains programmes. Quest-ce que la logique ? La logique est la science du raisonnement et de lexpression pr ecise du raisonnement. Tout e tre humain raisonne et est donc concern e par la logique. Raisonner, cest produire de linformation a ` partir dinformation pr eexistante et de certains m ecanismes de transformation de linformation. Raisonnement et calcul. Le raisonnement est proche du calcul, qui lui aussi transforme linformation. Etant donn e un triangle dont la base et la hauteur sont de 6 cm (information pr eexistante), on sait que laire du triangle est de 18 cm2 (nouvelle information). Le m ecanisme de production est la r` egle classique S = (B H )/2. La logique la plus simple est celle des propositions. Il sagit bien dun calcul, dans lequel les objets ne sont pas les nombres et les expressions num eriques, mais les valeurs de v erit e (vrai et faux) et les propositions et formules susceptibles d etre vraies ou fausses. Voici un exemple typique de ce calcul. Linformation pr eexistante comporte deux e nonc es : Pour sortir sous la pluie, je prends mon parapluie. Je suis dehors sans parapluie. Le m ecanisme de calcul, ou plut ot de d eduction, est le suivant A B , B A Si A implique B est vrai, et si B est faux, alors A est faux. Linformation nouvelle que lon peut obtenir ici est Il ne pleut pas. On a instanci e A en il pleut et B en je sors muni dun parapluie. On notera lemploi de la convention habituelle : la ligne horizontale s epare les pr emisses dun raisonnement (au-dessus de la ligne) et sa conclusion (au-dessous de la ligne). Logique et arithm etique. Dans le raisonnement pr ec edent, le calcul proprement dit est extr emement simple. Cest une arithm etique des plus rudimentaires, o` u on ne dispose que de deux nombres, not es F (faux) et V (vrai), ou encore, pour parfaire lanalogie, 0 et 1. Les tables correspondant a ` limplication et aux quelques autres op erations logiques seront donc bien plus simples que la table de multiplication par exemple, puisque les tables logiques ne comportent que deux entr ees. Une difcult e de la logique par rapport a ` larithm etique est le caract` ere informel du langage utilis e (le franc ais). Linformation repr esent ee par B peut e tre e crite je sors muni dun parapluie ; on a donc implicitement admis que la phrase Pour sortir sous la pluie, je prends mon parapluie. est synonyme de Il pleut implique je sors muni dun parapluie. On conc oit ais ement que, dans des raisonnements plus e labor es, une hypoth` ese

F IG . 1 Clef du th eor` eme de Pythagore.

a ` gauche est e gale a ` laire c2 du carr e int erieur a ` droite. Cette derni` ere e galit e est le th eor` eme de Pythagore. Deux pistes prometteuses . . . Ce genre dobjet (ici, une paire de dessins) est naturellement tr` es utile, mais il nest pas e vident de le d ecouvrir. Cest cependant moins difcile en logique formelle quen alg` ebre ou en analyse, et notre principal objectif, en e crivant ce texte, est de montrer comment ces objets peuvent e ecouverts et utilis es ; ce seront souvent des objets tre d bien connus de linformaticien, tels les tableaux, les listes et les arbres. Nous essayerons aussi darithm etiser la logique, ce qui permet dimporter en logique lexp erience et lintuition acquises en arithm etique e l ementaire. En particulier, les d emonstrations para tront simples au lecteur qui observera leur caract` ere constructif et inductif. Le plus souvent, une d emonstration donne lieu a ` un programme (r ecursif) construisant lobjet dont le th eor` eme d emontr e afrme lexistence.

de ce type peut rapidement devenir douteuse.1 Toutefois, ce probl` eme est du ressort de la linguistique et nous ne laborderons pas ici. Plus pr ecis ement, nous ne consid ererons pas de raisonnement dont la formalisation ne soit e l ementaire, voire m eme d ej` a faite. Lobjet de la logique math ematique sera donc la repr esentation et lanalyse des raisonnements formalis es. A titre dexemple, consid erons les tables de la n egation et de limplication : x V F x F V x V V F F y V F V F xy V F V V

en va de m eme en logique, o` u lon formalise des r` egles g en erales, telle la classique r` egle de r ecurrence : P (0) , n [P (n) P (n + 1)] n P (n) Leffet de dimension est e galement pr esent en logique, comme en t emoignent deux petites e nigmes amusantes. 1. Les e tudiants ayant particip ea ` lexamen de logique diff` erent par le le pr enom, la nationalit e et le sport favori pratiqu e par chacun deux. On demande de reconstituer le classement et de d eterminer qui est le Franc ais et quel est le sport pratiqu e par Richard, sur base des indices suivants. 1. Il y a trois e tudiants. 2. Michel joue au football. 3. Michel est mieux class e que lAm ericain. 4. Simon est Belge. 5. Simon a surclass e le joueur de tennis. 6. Le nageur sest class e premier. 2. Les occupants de maisons align ees diff` erent par la nationalit e, la couleur de la maison, la marque de cigarette favorite, la boisson pr ef er ee et lanimal familier. On demande de reconstituer la situation, et en particulier didentier le propri etaire du z` ebre et le buveur deau, sur base des indices suivants. 1. Les num eros des maisons sont 1, 2, 3, 4, 5. 2. LAnglais habite la maison verte. 3. LEspagnol poss` ede un chien. 4. On boit du caf e dans la maison rouge. 5. On boit du th e chez lUkrainien. 6. La maison rouge suit la maison blanche. 7. Le fumeur de Old Gold e l` eve des escargots. 8. On fume des Gauloises dans la maison jaune. 9. On boit du lait au num ero 3. 10. Le Norv egien habite au num ero 1. 11. Le fumeur de Chestereld et le propri etaire du renard sont voisins. 12. Le fumeur de Gauloises habite a ` c ot e du propri etaire du cheval. 13. Le fumeur de Lucky Strike boit du jus dorange. 14. Le Japonais fume des Gitanes. 15. La maison bleue jouxte celle du Norv egien. Formaliser ces e nigmes, cest-` a-dire les convertir en formules a ` analyser, est facile. Lanalyse proprement dite est tout aussi facile, mais, vu la taille des formules, peut demander un certain temps, et une bonne organisation du travail.2 Naturellement, on peut programmer un ordinateur pour faire le travail ; nous pr eterons une attention particuli` ere aux questions algorithmiques. Mieux comprendre les th eor` emes. La logique formelle a e t e au d epart d evelopp ee par des math ematiciens, pour e clairer divers probl` emes d elicats survenant en alg` ebre, en analyse, en g eom etrie, etc. Ce point na pas tellement dint er et pour linformaticien, mais il importe
2 Si on nest pas habitu ea ` r esoudre ce type d enigme, on peut sattendre a ` une demi-heure de t atonnement avant de d ecouvrir la solution de la seconde, m eme si une minute suft pour la premi` ere . . .

Ces tables permettent d etablir la validit e du m ecanisme de raisonnement utilis e au paragraphe pr ec edent. Par simple combinaison, on obtient imm ediatement la table ci-dessous : A V V F F B V F V F AB V F V V B F V F V A F F V V

Valider le m ecanisme de raisonnement utilis e dans notre exemple (cest le Modus Tollens) consiste a ` v erier que, dans tous les cas o` u les deux pr emisses A B et B sont vraies, la conclusion A est e galement vraie. Dans les trois premi` eres lignes du tableau, lune des pr emisses est fausse. Ces lignes correspondent a ` des cas o` u le Modus Tollens ne sapplique pas. La quatri` eme ligne correspond au cas o` u les deux pr emisses sont vraies, cest-` a-dire au cas o` u le m ecanisme de raisonnement e tudi e sapplique ; on observe que la conclusion est e galement vraie, ce qui ach` eve la v erication. Trop simple, la logique ? On peut se demander a ` quoi sert la logique en tant que science, puisquelle ne recouvre, dans le contexte e l ementaire dont nous ne sortirons pas, que des connaissances e videntes. Nous aurons amplement loccasion de souligner plus loin quil est certaines e vidences m eritant d etre soulign ees mais, pour linformaticien en particulier, lutilit e de la logique est du m eme ordre que celle de larithm etique. Cette utilit e est li ee a ` la dimension des probl` emes trait es, et a ` lint er et, au del` a dune certaine taille tr` es vite atteinte, dautomatiser la r esolution de ces probl` emes. On produit (6 6)/2 = 18 sans effort, mais il nen va pas de m eme pour 345 234 765 864 = 264 402 292 176 ; on utilisera ici une calculatrice, ou un ordinateur dont la programmation a requis la mise en uvre de r` egles arithm etiques bien formalis ees. Plus peut- etre que la taille des probl` emes, cest leur g en eralisation qui requiert l elaboration dune science. L egalit e 1 + 2 + + 10 = 55 pr esente un int er et nettement moindre que l egalit e n galit e ne se d eduit pas seulement i=1 i = (n (n + 1))/2. Cette e de tables arithm etiques, si d etaill ees soient-elles ; une science arithm etique est n ecessaire. Il
M eme dans notre exemple, certains probl` emes surgissent. En particulier, il peut avoir commenc ea ` pleuvoir apr` es que je sois sorti (sans parapluie) ; je peux aussi e garer mon parapluie en cours de route.
1

de reconna tre dembl ee le statut acquis par la logique math ematique : elle contribue au d eveloppement dautres branches des math ematiques et favorise une meilleure compr ehension de celles-ci. Inversement, une certaine maturit e math ematique favorise lapprentissage de la logique. Nous ne donnerons ici quun exemple de la symbiose entre logique et math ematique, mais il est capital. Dans nimporte quelle branche des math ematiques, un th eor` eme e voque une cat egorie dobjets et afrme que tout objet v eriant lhypoth` ese v erie aussi la th` ese. Ceci est un exemple typique d evidence quil est opportun de souligner. Dans le domaine des entiers relatifs, on a le th eor` eme suivant :

Enn, la logique permet de v erier la validit e de largument. Un e l ement crucial de cette v erication est le fait que le corps de la boucle, lorsquil est ex ecut e, restaure linvariant. En appelant cet invariant I , on doit avoir {I x > 0} (y, x) := (y x, x 1) {I } , ou encore o` u I [y, x / y x, x1] d esigne la formule I dans laquelle on a remplac e les occurrences de y et de x par y x et x 1, respectivement. En d enitive, pour e tablir que le programme est correct, il faut prouver que la formule x x0 y ([0 < x x0 y x! = x0 !] [0 x 1 x0 (y x) (x 1)! = x0 !]) est vraie, ce qui peut se faire en utilisant les propri et es arithm etiques usuelles, notamment lassociativit e de la multiplication et le fait que n (n 1)! = n! pour tout entier n strictement positif. Le fait que la logique soit plut ot simple rend possible lautomatisation du raisonnement, qui est vu comme un calcul dun genre particulier. La logique est donc une clef de lintelligence articielle et permet en particulier la programmation de syst` emes experts, aptes a ` la r esolution automatique d enigmes comme celle du z` ebre ou, dune mani` ere moins ludique, a ` l elaboration de diagnostic de pannes dans les r eseaux informatiques, pour ne donner quun exemple. Un algorithme est une recette de calcul permettant de r esoudre un probl` eme sans devoir r e echir. Toute la r eexion n ecessaire a e t e anticip ee par lauteur de lalgorithme, ce qui explique la difcult e potentielle de la t ache du concepteur dalgorithme. Un programme de calcul implique des r` egles de calcul et la mise en uvre de ces r` egles. Dans un programme classique, tel celui calculant la factorielle, ces deux ingr edients sont intimement m elang es, et les r` egles math ematiques de base qui ont e t e utilis ees (lassociativit e de la multiplication, par exemple) napparaissent explicitement que lors dune v erication syst ematique et d etaill ee de lexactitude de lalgorithme. Dans la mesure o` u calcul et raisonnement ne sont que deux facettes dun m eme processus, on peut envisager de s eparer les deux ingr edients. Un algorithme de mise en uvre de r` egles logico-math ematiques est e crit une fois pour toutes, et cet algorithme est particularis ea ` un probl` eme particulier par ladjonction des r` egles relatives a ` ce probl` eme. Cette technique de programmation (par la) logique est tr` es puissante, notamment dans les cas o` u la programmation classique est d ecevante. Dans ce contexte, pour trier un tableau X en un tableau Y , il sufra de donner deux indices : Y est une permutation de X ; les e l ements de Y forment une suite croissante. Trier de cette mani` ere sera cependant tr` es inefcace. Dans le m eme contexte de programmation logique, il sufra de donner les indices et la question de l enigme e voqu ee plus haut pour r esoudre celle-ci. Dans la mesure o` u on ne conna t pas dalgorithme classique de r esolution d enigme, lapproche logique est ici tr` es attrayante. Programmer en logique. Puisque la logique est, dans une certaine mesure, un calcul, elle peut donner naissance a ` un langage de programmation. Le langage PROLOG (PROgrammer en LOGique) est le plus utilis e des langages bas es sur la logique. En d epit de certaines 9 (I x > 0) I [y, x / y x, x 1]

Tout carr e est positif.


La paraphrase suivante donne lieu a ` une traduction imm ediate :

Pour tout n, n est un carr e implique n est positif.


On peut en effet formaliser l enonc e en n [C (n) P (n)] . Comme souvent en math ematique, on sous-entend une partie de linformation ; dans le cas pr esent, la formule ne reprend pas (notamment) le fait que n repr esente un entier relatif et non, par exemple, un nombre complexe. Ce th eor` eme exprime que, des quatre classes dentiers relatifs que lon peut a priori former (C-P : carr e-positif, C-nP : carr e-non-positif, nC-P : noncarr e-positif, nC-nP : non-carr e-non-positif), la seconde est vide. On a en effet C-P 0, 1, 4, . . . , 100, . . . C-nP nC-P 2, 3, 5, . . . , 99, 101, . . . nC-nP 1, 2, 3, . . . , 100, . . . Cela illustre la r` egle logique disant quune implication p q est fausse si et seulement si lant ec edent p est vrai et le cons equent q est faux.3 En particulier, une implication dont lant ec edent est faux est toujours vraie. Par exemple, l enonc e si 2+2=5, alors 2+2=6 est vrai, ce qui ne lemp eche pas d etre sans int er et pratique. Mieux comprendre les programmes. La logique est utile a ` linformaticien, et en particulier au programmeur. Elle permet de sp ecier un programme : {x0 } (x, y ) := (x0 , 1) ; while x > 0 do (y, x) := (y x, x 1) ; F := y {F = x0 !} . Cette e criture exprime une relation utile entre la donn ee x0 et le r esultat F . La logique permet aussi de donner un argument de conformit e entre le programme et sa sp ecication, par exemple un invariant de boucle ; cet invariant est ici x, x0 , y 0 x x0 y x! = x0 !
Le th eor` eme afrme que la seconde des quatre classes est vide ; il ninterdit pas qu eventuellement une des trois autres classes soit vide aussi.
3

limitations, il se pr ete bien a ` la r esolution dune vaste classe de probl` emes. A titre dexemple, nous donnons a ` la page suivante un programme PROLOG pour la r esolution de l enigme du z` ebre donn ee plus haut. Ce programme d ecrit dune part ce quest une e nigme et, dautre part, les particularit es de l enigme du z` ebre. Le syst` eme PROLOG calcule la r eponse en utilisant les algorithmes de r esolution et dunication, pr esent es a ` la n de ce cours.
prc(A,B,[A,B,C,D,E]). prc(A,E,[A,B,C,D,E]). prc(B,E,[A,B,C,D,E]). prc(D,E,[A,B,C,D,E]). one(A,[A,B,C,D,E]). three(C,[A,B,C,D,E]). neighbor(A,B,[A,B,C,D,E]). neighbor(C,D,[A,B,C,D,E]). neighbor(B,A,[A,B,C,D,E]). neighbor(D,C,[A,B,C,D,E]). nation(h(N,C,A,B,T),N). color(h(N,C,A,B,T),C). animal(h(N,C,A,B,T),A). drink(h(N,C,A,B,T),B). tobacco(h(N,C,A,B,T),T). go(X,Y) :- St = [h(N1,C1,A1,B1,T1),h(N2,C2,A2,B2,T2), h(N3,C3,A3,B3,T3),h(N4,C4,A4,B4,T4),h(N5,C5,A5,B5,T5)], member(X2,St), nation(X2,english), color(X2,green), member(X3,St), nation(X3,spanish), animal(X3,dog), member(X4,St), color(X4,red), drink(X4,coffee), member(X5,St), nation(X5,ukrainian), drink(X5,tea), neighbor(X6a,X6b,St), prc(X6b,X6a,St), color(X6a,red), color(X6b,white), member(X7,St), tobacco(X7,oldgold), animal(X7,snails), member(X8,St), color(X8,yellow), tobacco(X8,gauloises), three(X9,St), drink(X9,milk), one(X10,St), nation(X10,norwegian), neighbor(X11a,X11b,St), tobacco(X11a,chesterfield), animal(X11b,fox), neighbor(X12a,X12b,St), tobacco(X12a,gauloises), animal(X12b,horse), member(X13,St), tobacco(X13,luckystrikes), drink(X13,orangejuice), member(X14,St), nation(X14,japanese), tobacco(X14,gitanes), neighbor(X15a,X15b,St), nation(X15a,norwegian), color(X15b,blue), member(Q,St), animal(Q,zebra), nation(Q,X), member(R,St), drink(R,water), nation(R,Y). neighbor(B,C,[A,B,C,D,E]). neighbor(D,E,[A,B,C,D,E]). neighbor(C,B,[A,B,C,D,E]). neighbor(E,D,[A,B,C,D,E]). prc(A,C,[A,B,C,D,E]). prc(B,C,[A,B,C,D,E]). prc(C,D,[A,B,C,D,E]). prc(A,D,[A,B,C,D,E]). prc(B,D,[A,B,C,D,E]). prc(C,E,[A,B,C,D,E]).

La premi` ere exprime un fait (axiome, postulat, d enition). Elle peut se lire On a a ou a est (toujours) vrai. La seconde clause exprime une r` egle, la possibilit e dobtenir le fait a a ` partir des faits b, c et d. On peut lire Si b, c et d sont vrais, alors a est vrai, ou encore Pour avoir ( etablir) a, il suft davoir (d etablir) b, c et d. Les clauses pr eliminaires constituent des d enitions auxiliaires, pour les notions de pr ec edence (une maison pr ec` ede une autre si le num ero de la premi` ere est plus petit que celui de la seconde), de premi` ere maison, de maison du milieu et de maisons voisines. On note par exemple que, dans une structure de cinq e l ements [A,B,C,D,E], les maisons A et B sont mitoyennes, de m eme que B et A, B et C, . . . et enn D et E. On pr ecise aussi quune maison est d ecrite par cinq attributs qui sont, dans lordre, la nationalit e du propri etaire, la couleur de la fac ade, lanimal familier, la boisson favorite et la marque de tabac. La clause principale d enit le pr edicat go. Les cinq premi` eres lignes correspondent a ` lindice 1 ; les lignes suivantes correspondent aux quatorze autres indices, sauf les deux derni` eres lignes qui correspondent aux deux questions. A titre dexemple, voici une paraphrase du dernier indice : la structure St comporte deux maisons mitoyennes X15a et X15b telles que loccupant de X15a est de nationalit e norv egienne, et que X15b est de couleur bleue. La premi` ere question se traduit en la structure St comporte une maison (inconnue) Q, dont loccupant est de nationalit e X et poss` ede un z` ebre. Lex ecution de ce programme est repr esent ee ci-dessous. ?- go(ZebraOwner,WaterDrinker). ZebraOwner = japanese WaterDrinker = norwegian ? ; no Le no indique labsence dune seconde solution ; sur base des indices, il est donc certain que le Japonais poss` ede le z` ebre et que le Norv egien boit de leau. Notre but nest pas ici de pr esenter Prolog, mais de montrer que les algorithmes logiques que nous e tudierons sont sufsamment puissants pour prendre en charge la r esolution dun probl` eme non trivial. Ces algorithmes sont pr eprogramm es efcacement et une fois pour toutes dans le syst` eme Prolog, mais peuvent naturellement e tre programm es dans nimporte quel langage ; nous verrons dailleurs comment, aux chapitres trois et cinq. Nous terminons ce chapitre par une tr` es br` eve introduction aux deux algorithmes utilis es par Prolog. Consid erons le petit programme suivant. a. b. c :d :d :e :-

On observe que ce texte ressemble plus a ` une variante de l enonc e du probl` eme qu` a un programme pour r esoudre le probl` eme. Il nest en fait quune donn ee pour la version Prolog des algorithmes de r esolution et dunication. Le texte est compos e de clauses qui d ecrivent des pr edicats. Il y a deux sortes de clauses : a. a :- b,c,d.

a. a,f. b,c. c,f.

Le logicien e crira plut ot { A , B , A C , (A F ) D , (B C ) D , (C F ) E } . 10 11

La derni` ere formule, par exemple, signie que si C et F sont vrais, alors E est vrai. Essayons, sur base de nos six clauses, de voir si D est vrai, et si E est vrai. Pour avoir D , dapr` es la cinqui` eme clause,4 il suft davoir B et C . On a B (deuxi` eme clause) et, pour avoir C , il suft (troisi` eme clause) davoir A, que lon a par la premi` ere clause. La r eponse a ` la premi` ere question est donc oui. Dautre part, pour avoir E , il suft davoir C et F . On a bien C (on a vu comment), mais aucune clause ne permet desp erer obtenir F . La r eponse a ` la seconde question est donc non. Ces raisonnements, illustr es a ` la gure 2, sont des exemples typiques de ce qu etudie la logique des propositions, abord ee aux chapitres deux et trois. Les num eros des nuds des arbres de la gure 2 indiquent lordre dans lequel ces nuds sont cr ee s et exploit es.
( ( md 0 me 0

( ( m 1 a,f

mb,c 3

mc,f 1

mf 2

mc 4

ma,f 2

ma 5 mf 3

moui 6

mappend(Xs , Ys , [a, b]) ? 0 ( v ( v ( v ( Xs , Ys , Ys 1 [ ], [a, b], [a, b]v Xs , Ys , X 1 , Zs 1 [a|Xs 1 ], Ys 1 , a, [b] v ( v ( v ( v v ( m mappend(Xs 1 , Ys 1 , [b]) ? 1 2 ( v {Xs , Ys = [ ], [a, b]} ( v ( v ( 1 1 2 v Xs 1 , Ys 1 , X 2 , Zs 2 [b|Xs 2 ], Ys 2 , b, [ ] Xs , Ys , Ys ( [ ], [b], [b] v ( v ( v ( v v ( m mappend(Xs 2 , Ys 2 , [ ]) ? 3 4 ( {Xs , Ys = [a], [b]} ( ( ( 2 2 3 ( Xs , Ys , Ys [ ], [ ], [ ] ( ( ( ( m 5

{Xs , Ys = [a, b], [ ]}

F IG . 2 Arbres de v erication syst ematique de faits. Consid erons maintenant un autre programme. append([],Ys,Ys). append([X|Xs],Ys,[X|Zs]) :- append(Xs,Ys,Zs). La notation append(Xs,Ys,Zs) signie la concat enation de la liste Xs et de la liste Ys est la liste Zs. Le programme ci-dessus correspond donc a ` la d enition r ecursive classique de lop eration de concat enation de deux listes. (L ecriture [X|Xs] repr esente la liste dont le premier e l ement est X et dont le reste est la liste Xs.) On peut demander a ` Prolog ? append(Xs,Ys,[a,b]). Cela signie Existe-t-il des listes Xs et Ys dont la concat enation donne la liste [a,b] ?. Prolog cherche une preuve constructive de l enonc e, en pratiquant lunication des termes. En particulier, il e tablit que lon a bien append(Xs,Ys,[a,b]), si lon choisit Xs = [a] et Ys = [b]. Cette recherche syst ematique produit trois solutions ; elle est illustr ee a ` la gure 3. Cest une application typique de la logique des pr edicats, abord ee aux chapitres quatre et cinq.
4

F IG . 3 Arbre de recherche syst ematique des solutions.

2 Logique propositionnelle : syntaxe et s emantique


2.1 Introduction
Lobjet de la logique propositionnelle est l etude des propositions et de certaines op erations qui permettent de les combiner. Nous montrons dans cette section do` u proviennent ces objets et ce quils sont. 2.1.1 G en eralit es sur les propositions Une proposition est une phrase susceptible d etre vraie ou fausse. En franc ais, on parle souvent de phrase e nonciative. Voici quelques exemples de propositions, e crites en langage naturel, en formalisme math ematique . . . ou dans un m elange des deux. 1. Un plus deux e galent trois. 2. 1+1 = 3. 13

Utiliser la quatri` eme clause conduit a ` une impasse, comme on on le voit a ` la gure 2.

12

3. > e. 4. Il nexiste que cinq poly` edres r eguliers convexes. 5. Il existe une innit e de nombres premiers x tels que x + 2 est aussi premier. 6. Le procompsognathus est un deut erostomien anamniote. 7. Il fera beau a ` Li` ege le 29 avril de lan 2021. 8. x2 + y 2 = z 2 . 9. Il pleut. 10. Je donne cours de logique le mardi. 11. Je donne cours(mati` ere, jour). 12. Un plus deux e galent trois et la terre tourne autour du soleil. 13. Un plus deux e galent trois parce que la terre tourne autour du soleil. 14. Cette phrase est fausse. 15. La phrase suivante est vraie. 16. La phrase pr ec edente est fausse. 17. Ceci nest pas une phrase. 18. Cette phrase nest pas une proposition. On observe imm ediatement que la nature propositionnelle dune phrase nimplique pas la connaissance automatique de la valeur de v erit e de cette phrase. Les trois premiers exemples paraissent non probl ematiques, mais on pourrait h esiter a ` leur attribuer une valeur de v erit e par m econnaissance du franc ais ou de larithm etique e l ementaire ; on pourrait aussi ignorer ou refuser les conventions habituelles des math ematiciens concernant les constantes num eriques importantes, telles = 3.14159... et e = 2.71828.... Les exemples 4 a ` 7 montrent que lignorance est une cause excusable et m eme in evitable de non-attribution. On peut savoir ce quest un poly` edre r egulier convexe, mais le non-math ematicien ignore g en eralement leur nombre. Lexemple 5 a un sens clair, mais il sagit dune conjecture de larithm etique : les sp ecialistes pensent quelle est vraie, mais nont pas r eussi a ` la d emontrer. Le sens de la phrase 6 et a fortiori sa valeur de v erit ee chapperont au non-biologiste. Enn, faire une pr evision m et eorologique a ` tr` es long terme est compl` etement irr ealiste. Les exemples 8 a ` 11 posent une difcult e dune autre nature. Les phrases sont claires et e l ementaires, mais leur valeur de v erit e d epend du contexte. La pertinence de ce contexte peut appara tre explicitement, via des param` etres tels x, y , z , mati` ere, jour, ou de mani` ere implicite : qui est Je ? O` u et quand est prononc ee la phrase Il pleut ? On ne peut attribuer une valeur de v erit ea ` ces exemples sans conna tre leur contexte. Les exemples 1 a ` 11 e taient des propositions atomiques ; les exemples 12 et 13 sont des propositions compos ees ; les deux composants sont les propositions atomiques Un plus deux e galent trois et La terre tourne autour du soleil. Ces composants sont connect es par et et par parce que. Les exemples 14 a ` 16 sont des paradoxes ; on les comprend, aucune culture et contexte particuliers ne sont n ecessaires a ` leur analyse, mais il est n eanmoins impossible de leur attribuer une valeur de v erit e sans aboutir a ` une contradiction (le cauchemar du logicien !). 14

Ce ph enom` ene est li ea ` lautor ef erence : ces phrases parlent delles-m emes. Les exemples 17 et 18 montrent que lautor ef erence nimplique pas toujours le paradoxe : il sagit bien de deux propositions, toutes deux fausses. Dans lapproche formelle de la logique propositionnelle, nous voulons nous affranchir de tous les probl` emes non li es au raisonnement proprement dit.5 Un moyen radical dy parvenir est de restreindre le sens dune proposition a ` sa valeur de v erit e, exactement comme, en arithm etique, le sens dune multiplicit e est r eduit a ` sa taille. On e voque le nombre 13 par exemple, sans se soucier d evoquer une multiplicit e concr` ete comportant 13 e l ements. En fait, larithm etique ne nous apprend rien sur les nombres eux-m emes, mais a pour objet les relations qui existent entre les nombres, dont lexistence est tout simplement postul ee et admise. Le lexique de larithm etique se limite donc aux notations identiant les nombres (suites de chiffres), aux variables repr esentant les nombres (souvent des lettres, x, y , a, b, etc.) et aux symboles repr esentant les op erations par lesquelles on peut combiner et comparer les nombres (+, =, <, etc.). L ecriture x2 + y 2 = z 2 est un e nonc e de larithm etique ; cest aussi une proposition. Pour attribuer une valeur de v erit ea ` cette proposition, il faut conna tre les valeurs (num eriques) de x, y et z , mais rien dautre (inutile, par exemple, de savoir si les nombres en questions repr esentent des longueurs, ou des vitesses, ou des nombres de pommes contenues dans des paniers). En arithm etique, on distingue les e nonc es valides, qui sont toujours vrais, les e nonc es inconsistants, ou contradictoires, qui sont toujours faux, et les e nonc es contingents, ou simplement consistants, qui sont vrais ou faux selon le contexte, cest-` a-dire selon les valeurs que lon attribue aux variables quils contiennent. Un e nonc e valide peut contenir des variables, tel x2 + y 2 2xy ou n evoquer que des constantes, tel 2 + 3 = 5. Il en va de m eme pour les e nonc es inconsistants (x2 + y 2 < 2xy , 2+3 = 6). En revanche, un e nonc e contingent comporte toujours une variable au moins (x < 3). La m eme classication sera adopt ee en logique propositionnelle. Les e nonc es true et false p sont valides ; seul le second comporte une variable propositionnelle. L enonc ep q est contingent, tandis que l enonc e true false est contradictoire. Deux diff erences essentielles existent entre la logique et larithm etique. Tout dabord, il nexiste que deux valeurs en logique, contre une innit e en arithm etique ; de plus, la notion de proposition existe en arithm etique (les e nonc es arithm etiques sont des propositions, au m eme titre que les e nonc es de m ecanique des uides, par exemple), alors que la notion de nombre nappara t pas en logique propositionnelle. En fait, la logique pr ec` ede larithm etique, car on ne peut pas faire darithm etique sans faire, consciemment ou non, de la logique. En contrepartie, larithm etique est plus riche que la logique ; on pourra identier le calcul des propositions a ` un calcul num erique particulier, mais on ne pourra pas identier le calcul sur les nombres a ` une logique propositionnelle particuli` ere.
5 Dapr` es Larousse, la logique est la science du raisonnement en lui-m eme, abstraction faite de la mati` ere a ` laquelle il sapplique et de tout processus psychologique.

15

2.1.2 G en eralit es sur les connecteurs Les op erateurs combinant les propositions sont appel es connecteurs. La logique des propositions est en fait la logique des connecteurs, comme larithm etique est plus la science des op erations (addition et multiplication surtout) que celle des nombres proprement dits. Les op erations de larithm etique (au sens large) sont des fonctions dont les arguments (en g en eral, un ou deux) prennent des valeurs num eriques ; la valeur du r esultat est num erique, ou une valeur de v erit e. Voici quelques op erations courantes : Laddition : + : : (x, y ) x + y . : x x. Le passage a ` loppos e: : La divisibilit e: | : 0 {V, F} : (x, y ) x|y . La primarit e: Pr : 0,1 {V, F} : x Pr(x). Rappelons que, si x est un nombre entier plus grand que 1, Pr(x) est vrai si x est premier, cest-` a-dire nest divisible que par lui-m eme et par 1. Il existe une innit e dop erations arithm etiques, et le math ematicien sautorisera a ` en cr eer une nouvelle, quil nommera et notera de mani` ere appropri ee, d` es que le besoin sen fera sentir. Toutefois, quand on e tudie larithm etique, on se limite g en eralement a ` une demi-douzaine dop erations. On retient, dune part, celles dont lint er et pratique est e vident et, dautre part, celles dont les propri et es sont les plus attrayantes et les plus e l egantes. Ces deux crit` eres sont souvent concordants ; de plus, les op erations non retenues comme primitives peuvent souvent se d eriver des op erations primitives . . . au moyen de la logique. On d enit par exemple la divisibilit e (ne pas confondre avec la division) a ` partir de l egalit e et de la multiplication : x|y =def z (x.z = y ) . On se sert de cette nouvelle op eration pour d enir la primarit e: Pr(x) =def x > 1 y [y |x (y = 1 y = x)] . En logique propositionnelle aussi, nous aurons des connecteurs fondamentaux et des connecteurs d eriv es. Notons aussi que certaines op erations arithm etiques ne sont pas consid er ees comme telles par les math ematiciens, parce quelles d ependent non seulement des nombres eux-m emes mais aussi de points annexes, par exemple le formalisme utilis e pour les repr esenter. Ainsi, la longueur dun nombre nest pas une v eritable op eration arithm etique, puisquelle nest pas num erifonctionnelle : (13) = 2 , (6 + 7) = 3 , (78/6) = 4 , (II0I) = 4 , (treize) = 6 , (thirteen) = 8 , (XIII) = 4 . En logique aussi, les connecteurs non v erifonctionnels seront e limin es. Les connecteurs propositionnels sont nombreux dans la langue franc aise ; nous en avons rencontr e deux exemples : 16

Un plus deux e galent trois et la terre tourne autour du soleil. Un plus deux e galent trois parce que la terre tourne autour du soleil. Le connecteur et est v erifonctionnel : la proposition A et B sera vraie si et seulement si les propositions A et B sont toutes deux vraies. En revanche, il nest pas e vident d etablir un e ventuel lien de cause a ` effet entre deux faits, et conna tre les valeurs de v erit e de A et de B ne permet g en eralement pas de conna tre la valeur de v erit e de A parce que B . Les propositions compos ees suivantes, dont nous supposons les composantes vraies, montrent que le connecteur parce que nest pas v erifonctionnel : La voiture d erape parce que la route est mouill ee. La route est mouill ee parce que la voiture d erape. Dans un contexte o` u une voiture a d erap e sur une route mouill ee, la premi` ere proposition compos ee semble vraie mais la seconde est quasi certainement fausse. Or, les deux propositions simples contenues dans les propositions compos ees sont vraies ; cela montre que la valeur de v erit e dune proposition compos ee avec parce que ne d epend pas uniquement des valeurs de v erit e des composantes. Voici quelques exemples demploi des connecteurs v erifonctionnels les plus fr equemment utilis es en franc ais. Jirai au th ea tre ou bien jirai au cin ema. Il pleut ou il vente. Sil pleut, alors la route est mouill ee. Le ciel est bleu et la neige est blanche. Il nest pas b ete. Si cest pile alors je gagne sinon tu perds ! Elle r eussit si elle travaille. Elle r eussit seulement si elle travaille. Elle r eussit si et seulement si elle travaille. Elle travaille, donc elle r eussit. [Ils nont] ni Dieu, ni ma tre !

Dans ces exemples, la valeur de v erit e de la proposition compos ee se d eduit ais ement de la valeur de v erit e des composants ; les connecteurs sont donc bien v erifonctionnels. Dans ce cadre, il est possible de rendre compte de la validit e de certains raisonnements, tel le suivant : 1. Tous les hommes sont mortels. 2. Si tous les hommes sont mortels et si Socrate est un homme, alors Socrate est mortel. 3. Socrate est un homme. 4. Donc, Socrate est mortel. Ce raisonnement est une instance, cest-` a-dire un exemple, du sch ema A , (A B ) C , B C

17

et nous verrons plus loin que toutes les instances de ce sch ema (qui comporte trois pr emisses et une conclusion) sont valides. On observe cependant que, en bonne logique (informelle) la pr emisse 2. Si tous les hommes sont mortels et si Socrate est un homme, alors Socrate est mortel. semble redondante, car elle exprime une tautologie, cest-` a-dire une e vidence. Comme nous lavons signal e plus haut, le probl` eme est que la validit e du raisonnement 1. Tous les hommes sont mortels. 3. Socrate est un homme. 4. Donc, Socrate est mortel. ne peut pas e tre e tablie dans le cadre du calcul des propositions mais seulement dans celui, plus puissant, du calcul des pr edicats. Notons enn que, ici aussi, des curiosit es linguistiques peuvent compliquer lemploi de la logique en langage naturel. Voici un exemple classique de raisonnement qui, formellement, pourrait sembler valide mais qui, clairement, ne lest pas. 1. Jacques est un personnage intelligent. 2. Un personnage intelligent a d ecouvert la relativit e. 3. Donc, Jacques a d ecouvert la relativit e. En voici un autre : 1. Tout ce qui est rare est cher. 2. Une Rolls-Royce bon march e est rare. 3. Donc, une Rolls-Royce bon march e est ch` ere. Le calcul des pr edicats classique ne pourra pas rendre compte de ces probl` emes, qui sont plus du ressort de la linguistique que de la logique. 2.1.3 Les connecteurs v erifonctionnels Le nombre dop erations arithm etiques a ` n arguments est inni et, de plus, il nest pas possible de donner une table explicite exhaustive pour les op erations arithm etiques, car les op erandes peuvent prendre une innit e de valeurs.6 Ces limitations nexistent pas en calcul des propositions, puisquil ny a pour les op erandes que deux valeurs possibles. Une table de connecteur sera explicite et exhaustive : on e num` ere simplement tous les cas possibles. Chaque op erande peut prendre deux valeurs ; pour un op erateur a ` n arguments, la table comportera donc 2n lignes. Chaque ligne peut correspondre a ` un r esultat vrai ou a ` un r esultat faux ; il y aura donc n 22 connecteurs (v erifonctionnels) a ` n arguments. En particulier, il y a 2 constantes (op erateurs sans argument), 4 connecteurs unaires et 16 connecteurs binaires, dont les tables sont reprises aux gures 4 et 5. Dans la suite, nous nutiliserons que des connecteurs v erifonctionnels, simplement quali es de connecteurs.
La table de multiplication, par exemple, ne concerne que les nombres de 1 a ` 10 ; des r` egles suppl ementaires sont utilis ees pour traiter les cas o` u les valeurs des op erandes nappartiennent pas a ` cet intervalle.
6

x V F

1 V V

2 V F

3 F V

4 F F

F IG . 4 Les quatre connecteurs unaires. x V V F F y V F V F 1 V V V V 2 V V V F 3 V V F V 4 V V F F 5 V F V V 6 V F V F 7 V F F V 8 V F F F 9 10 F F V V V V V F 11 F V F V 12 F V F F 13 F F V V 14 F F V F 15 F F F V 16 F F F F

F IG . 5 Les seize connecteurs binaires.

2.1.4 Les connecteurs usuels On voit imm ediatement que, des quatre connecteurs unaires, seul le troisi` eme sera vraiment utile ; on lappelle la n egation. (Les autres sont les deux constantes et lidentit e.) La moiti e des connecteurs binaires ont rec u un nom, et un ou plusieurs symboles. Ils sont repris a ` la gure 6. op. 2 3 5 7 8 9 10 15 nom symbole se lit disjonction ou implication est impliqu e par inverse implication implique e quivalence est e quivalent a ` conjonction et nand (en e lectronique) ou exclusif xor nor (en e lectronique) F IG . 6 Les connecteurs binaires usuels. Les tables de v erit e des connecteurs importants, les plus fr equemment utilis es, sont reprises a ` la gure 7. Remarque. Les symboles utilis es pour repr esenter les connecteurs peuvent diff erer dun ouvrage a ` lautre. Nous avons adopt e les notations les plus courantes ; on notera cependant que est souvent utilis e au lieu de ; en Prolog, le symbole :- est employ ea ` la place de et la virgule remplace la conjonction. Disposer de nombreux connecteurs permet une expression facile et concise des propositions compos ees, mais rend le formalisme plus complexe, et son e tude plus fastidieuse. Avec la n egation et un connecteur binaire bien choisi, il est possible de tout exprimer. Supposons par exemple, comme le font souvent les math ematiciens, que les connecteurs primitifs sont la 19

18

x V F

x F V

x V V F F

y V F V F

V F F F

V V V F

V F F V

F V V F

V F V V

2.2 Syntaxe du calcul des propositions


2.2.1 Les r` egles de base Soit = {p, q, r, . . .}, un lexique propositionnel, cest-` a-dire un ensemble de symboles arbitraires appel es propositions atomiques ou atomes. La notation p signie que p appartient a ement de . Signalons aussi que lensemble vide, celui qui ne ` , ou est un e l contient aucun e l ement, est not e . D enition. Une formule du calcul des propositions est une cha ne de symboles g en er ee par la grammaire formula ::= p , pour tout p formula ::= true | false formula ::= formula formula ::= (formula op formula) op ::= | | | |

F IG . 7 Les connecteurs importants.

n egation et limplication. On peut alors introduire les autres connecteurs comme suit : (a b) =def (a b) , (a b) =def (a b) , . . . On montre facilement que {, } et {, } constituent aussi des paires primitives acceptables, au contraire de {, } et {, }. Curieusement, le connecteur binaire permet a ` lui seul de d enir tous les autres ; on a par exemple a =def (a a) et (a b) =def ((a b) (a b)). Lop erateur est le seul autre connecteur binaire jouissant de cette propri et e. En franc ais, lun des rares connecteurs ternaires dusage courant est si-alors-sinon. La proposition si A alors B sinon C a la valeur de B si A est vrai, et celle de C si A est faux. Ce connecteur permet lui aussi de d eriver tous les autres, si on lui adjoint les constantes de base true et false.7 Il peut lui-m eme sexprimer en termes de connecteurs binaires et de la n egation : si A alors B sinon C a m eme valeur de v erit e que ((A B ) (A C )), ou encore que ((A B ) (A C )). On a aussi le r esultat suivant. Th eor` eme. Tout op erateur n-aire (n > 2) peut se r eduire a ` une combinaison dop erateurs binaires et de n egations. Remarque. En logique, les th eor` emes afrmant lexistence dun certain objet se d emontrent souvent de fac on constructive ; la preuve du th eor` eme est une m ethode (un algorithme) de construction de lobjet en question. En outre, la preuve se fait souvent par r ecurrence ; cela revient a ` dire que lalgorithme de construction est r ecursif. Enn, une fois que lon sait cela, il suft de m emoriser une simple ligne pour reconstituer le d etail de la preuve. Dans le cas pr esent, cette ligne peut e tre M (p1 , . . . , pn ) [(pn M (p1 , . . . , pn1 , true )) (pn M (p1 , . . . , pn1 , false ))] . Cette ligne est en fait une preuve du r esultat suivant : Lemme. Tout op erateur n-aire (n > 2) peut se r eduire a ` une combinaison de deux op erateurs (n 1)-aires, dop erateurs binaires et de n egations. Corollaire. Les connecteurs n-aires (n > 2) peuvent e tre ignor es. Corollaire. Toute la logique propositionnelle peut e tre d evelopp ee sur base du seul connecteur binaire (ou de son dual ).
7

Chaque ligne sinterpr` ete simplement. Par exemple, si nous savons d ej` a que est un op erateur (connecteur) et que (p q ) et r sont des formules, la quatri` eme ligne nous permet de conclure que (p q ) r est une formule. On appelle d erivation un d eveloppement d etaill e montrant quun assemblage de symboles est une formule.8 Voici deux exemples de d erivations, montrant que (p q ) et ((p q ) (q p)) sont des formules : 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. formula (formula formula ) ((formula formula ) formula ) ((p formula ) formula ) ((p q ) formula ) ((p q ) (formula formula )) ((p q ) (formula formula )) ((p q ) (q formula )) ((p q ) (q formula )) ((p q ) (q p))

1. 2. 3. 4. 5.

formula (formula op formula) (formula formula) (p formula) (p q )

Lordre des d erivations nest pas total mais partiel ; il est donc naturel de repr esenter une d erivation par un arbre. Les arbres de d erivation de la gure 8 montrent limportance des parenth` eses. Deux formules peuvent ne diff erer que par les positions des parenth` eses et avoir des sens tr` es diff erents.9
8 Formellement, cette grammaire comporte deux symboles non terminaux formula et op. Une formule est donc un mot du langage engendr e par la grammaire, d epourvu de symboles non terminaux. Cest le dernier terme dune d erivation dont le premier terme est le symbole non terminal distingu e formula. 9 Le m eme ph enom` ene se produit en arithm etique ; les expressions arithm etiques a (b + c) et (a b) + c ont g en eralement des valeurs diff erentes.

On a par exemple (a b) =def [ si a alors true sinon b ] .

20

21

p q

ses op erandes. La notation habituelle est dite inx ee. Changer de notation revient a ` changer lordre de parcours des nuds dans larbre de d erivation. A titre dexemple, les trois parcours possibles pour les arbres de d erivation de la gure 8 sont repr esent es a ` la gure 9. Notation inx ee Notation simpli ee Notation pr ex ee Notation postx ee ((p q ) (q p)) (p q ) (q p) p q q p p q q p (p (q (q p))) p (q (q p)) pqqp p q q p

F IG . 9 Les notations polonaises. Les calculatrices de poche Hewlett-Packard proposent ou imposent lusage de la notation postx ee, ce qui a contribu ea ` rendre cette notation famili` ere aux non-logiciens.11 2.2.4 Formules et sous-formules La formule A est une sous-formule de B si larbre syntaxique (larbre de d erivation) de A est un sous-arbre de larbre syntaxique de B ; la formule A est une sous-formule propre de B si A est une sous-formule de B , mais A nest pas identique a ` B. Exemples. p q est une sous-formule propre de (p q ) (q p) ; en revanche, p q est une sous-formule impropre de p q ; enn, q q nest pas une sous-formule de (p q ) (q p) . On notera aussi quune sous-formule peut avoir plusieurs occurrences dans une formule. Par exemple, la (sous-)formule p a deux occurrences dans l equivalence p (p p) ; la (sous-)formule p a trois occurrences dans limplication p (p p). 2.2.5 Exemples de r ecurrence non num erique Lensemble des formules du calcul des propositions est inductif en ce sens quil admet un principe de r ecurrence :

((p q ) (q p))

(p (q (q p)))

F IG . 8 Deux arbres de d erivation. 2.2.2 Les r` egles simplicatrices Les r` egles simplicatrices de la logique propositionnelle sont analogues a ` celles de larithm etique. Elles sont destin ees a ` abr eger l ecriture des formules et a ` en faciliter la lecture. Voici dabord deux r` egles dun emploi habituel. Omission des parenth` eses ext erieures : on e crit p q au lieu de (p q ), et q (q q ) au lieu de (q (q q )). Utilisation de lassociativit e des op erateurs et :10 on e crit p q r au lieu de (p q ) r ou p (q r ). Certains ouvrages utilisent en outre les r` egles suivantes : Groupement a ` gauche des op erateurs non associatifs : on e crit parfois p q r au lieu de (p q ) r . Priorit e des op erateurs : en arithm etique, on e crit souvent a + b c pour a + (b c) ; de m eme on convient par exemple que p q r e quivaut a ` p (q r ) et non a ` (p q ) r . La suite , , , , , reprend les connecteurs logiques, par ordre d ecroissant de priorit e. Dans la suite, seules les deux premi` eres r` egles de simplication seront utilis ees. On sautorisera aussi, pour faciliter la lecture, a ` remplacer certaines paires de parenth` eses par des paires de crochets. 2.2.3 Les notations polonaises Les logiciens polonais ont propos e des notations permettant de se passer compl` etement des parenth` eses. La notation polonaise directe, ou pr ex ee, consiste a `e crire lop erateur avant ses op erandes ; la notation polonaise inverse, ou postx ee, consiste a `e crire lop erateur apr` es
10

Si une propri et e P est vraie de toute proposition e l ementaire, et si, chaque fois quelle est vraie des formules A et B , elle lest aussi des formules A, (A B ), (A B ), (A B ) et (A B ), alors elle est vraie de toute formule.
On appelle souvent principe dinduction tout principe de r ecurrence non num erique. Ce principe peut e tre utilis e pour d emontrer des propri et es vari ees. Un exemple simple consiste a ` d emontrer que toute formule (en notation inx ee, non simpli ee) comporte un nombre pair de parenth` eses. Dune part, cest vrai pour les propositions e l ementaires qui comportent z ero parenth` ese. Dautre part, si A comporte parenth` eses, si B comporte parenth` eses et si et sont des nombres pairs, alors A comporte parenth` eses (nombre
11 Un bon exercice de programmation consiste a ` e crire les proc edures permettant de passer dune notation a ` lautre.

On verra plus loin comment d emontrer cette propri et e.

22

23

pair) et (A B ), (A B ), (A B ) et (A B ) comportent + + 2 parenth` eses (nombre pair), do` u la conclusion. Un propri et e plus int eressante afrme que toute formule en notation inx ee peut s ecrire en notation pr ex ee et en notation postx ee. Cest e vident pour les propositions e l ementaires. Dautre part, si les versions pr ex ees de A et B sont et , alors les versions pr ex ees de A, (A B ), (A B ), (A B ) et (A B ) sont respectivement , , , et . Le principe dinduction permet de conclure. On peut aussi d emontrer que la traduction est unique.

2.3 S emantique du calcul des propositions


2.3.1 D enitions Une s emantique est une fonction qui donne un sens aux objets dun langage. Une s emantique est compositionnelle si le sens dune entit e compos ee au moyen dun m ecanisme donn e d epend uniquement du sens des composants. Dans le cadre de la logique des propositions, compositionnel signie v erifonctionnel. On sait notamment que la formule conjonctive (A B ) est vraie si et seulement si les formules A et B sont toutes les deux vraies. Le caract` ere non compositionnel des s emantiques des langages naturels est la premi` ere cause de leur complexit e (et de leur richesse). Une s emantique compositionnelle est non seulement facile a ` utiliser mais aussi facile a ` d ecrire. Il suft en fait denrichir les r` egles syntaxiques de construction des formules de r` egles s emantiques, permettant den construire le sens. Aux r` egles syntaxiques rappel ees ci-dessous formula formula formula formula op ::= ::= ::= ::= ::= p , pour tout p true | false formula (formula op formula) | |||

A A1 A2 A1 A2 A1 A2 A1 A2 A1 A2 A1 A2 A1 A2 A1 A2 A1 A2 A1 A2

I (A1 ) I (A2 ) F F sinon V V sinon V F sinon F V sinon I (A1 ) = I (A2 ) I (A1 ) = I (A2 )

I (A) F V V F F V F V V F

F IG . 10 Fonction s emantique pour les op erateurs binaires. Th eor` eme. La fonction dinterpr etation v se prolonge en une et une seule interpr etation I . Cest une cons equence imm ediate de lunicit e de larbre syntaxique (arbre de d erivation) dune formule. Ceci signie seulement que, si on xe linterpr etation des propositions e l ementaires que contient une formule, on xe ipso facto linterpr etation de la formule elle-m eme. La r eciproque nest g en eralement pas vraie. Si on impose que, par exemple, p q soit vrai, alors n ecessairement p est vrai et q est faux. En revanche, si on impose que p q soit faux, on ne peut pas d eduire avec certitude les valeurs de v erit e attach ees a ` p et q . Remarques. Cet e nonc e est effectivement imm ediat mais on peut n eanmoins le d emontrer. Cette d emonstration (il en existe plusieurs variantes) met en e vidence les caract eristiques des d emonstrations en logique : construction de lobjet qu evoque l enonc e, raisonnement par r ecurrence ou par induction. Les r` egles de la gure 10 permettent de calculer I () et I ( op ) a ` partir de I () et I ( ). On voit donc que si I () existe et est unique pour toute formule comportant (strictement) moins de n connecteurs, alors I () existe et est unique pour toute formule comportant exactement n connecteurs. Dautre part, pour une formule comportant 0 connecteur, cest-` a-dire une proposition, on a I () = v () par d enition. Cela montre lexistence et lunicit e de linterpr etation I , prolongement sur le domaine des formules de lexique de la fonction dinterpr etation v (de domaine ). On observera aussi que la gure 10 est en fait un algorithme (r ecursif), pour le calcul de I (). La d emonstration ci-dessus est une preuve dexactitude pour cet algorithme. Notons enn que, I e tant univoquement d etermin ea ` partir de v , il nest pas indispensable dutiliser deux notations diff erentes, ni de distinguer interpr etation et fonction dinterpr etation. Dans la suite, nous parlerons uniquement dinterpr etation, et utiliserons indiff eremment I et v pour noter une interpr etation quelconque. La mise en uvre de la s emantique propositionnelle est e l ementaire ; on attribue dabord une valeur de v erit ea ` toutes les propositions intervenant dans la formule a ` interpr eter, cest-` a-dire a ` toutes les feuilles de larbre syntaxique correspondant a ` la formule. On remonte ensuite dans larbre, la valeur dune sous-formule (correspondant a ` un nud interne de larbre) d ependant 25

correspondent des r` egles s emantiques, permettant dinterpr eter, cest-` a-dire de donner un sens a ` chaque formule. Une interpr etation propositionnelle I est bas ee sur une fonction v : {V, F} qui attribue une valeur de v erit e quelconque a ` chaque atome. Linterpr etation I , dont le domaine est lensemble des formules construites au moyen du lexique , est lunique fonction respectant les conditions suivantes : I (p) = v (p) , pour tout p , I (true ) = V , I (false ) = F , I () = V si I () = F , I () = F si I () = V , I ( op ) = S (op , I (), I ( )) , la derni` ere condition est la d enition de la fonction s emantique S , r esum ee a ` la gure 10. Remarque. Conceptuellement, la formule true (objet syntaxique) et la valeur de v erit e V (objet s emantique) sont des objets tr` es diff erents. Lusage dune seule notation pour les deux objets est cependant fr equent, et peu g enant en pratique.12
12 En arithm etique, il est inhabituel de distinguer lexpression arithm etique r eduite au seul terme 13 (objet syntaxique) et sa valeur (objet s emantique) qui est le nombre repr esent e par 13.

24

uniquement des valeurs attribu ees a ` ses composants directs. Larbre syntaxique e tant ni, on termine en attribuant une valeur a ` la formule elle-m eme, correspondant a ` la racine de larbre. Exemple. La fonction dinterpr etation v = {(p, V), (q, F), (r, V), (s, V)} se prolonge en une interpr etation I unique sur lensemble de toutes les formules bas ees sur le lexique = {p, q, r, s}. Le cas de (p s) (s q ) est trait ea ` la gure 11. I (p ) = V , I (s ) = V , I (p s ) = V , I (q ) = F , I (s q ) = F , I ((p s) (s q )) = F F IG . 11 Interpr etation dune formule compos ee. Remarque. Le fait que toute fonction dinterpr etation v se prolonge en une et une seule interpr etation I nous autorise, en pratique, a ` confondre les deux notions. Remarque. Lexamen exhaustif des interpr etations dune formule compos ee se fait souvent au moyen dune table de v erit e ; cette notion sera approfondie plus loin, mais nous en donnons d ej` a un exemple a ` la gure 12. Cette table montre que la formule (p q ) (q p) est vraie pour chacune des quatre interpr etations possibles.

indiquant une nuance temporelle ou causale. Il en va de m eme des versions naturelles de la n egation, de la disjonction et de l equivalence. Le connecteur dimplication pose toutefois un probl` eme. Des phrases telles que Si 2 + 2 = 4, alors la terre tourne autour du soleil. Si la terre tourne autour du soleil, alors 2 + 2 = 4. Si 2 + 2 = 5, alors 2 + 2 = 6 sont vraies selon les r` egles s emantiques de la logique propositionnelle,13 elles pourraient bien e tre tenues pour fausses (ou absurdes) par le non-logicien. Il se fait que, la plupart du temps, la notion dimplication nest pas v erifonctionnelle. Nous avons d ej` a not e dans le chapitre introductif que limplication logique correspondait exactement a ` limplication math ematique. Il nemp eche que, dans les th eor` emes utiles, le lien entre lhypoth` ese (ou la conjonction des hypoth` eses) et la th` ese nest pas seulement v erifonctionnel ; il sy ajoute un autre lien, lexistence dune d emonstration permettant de passer de lhypoth` ese a ` la th` ese. Il nen est pas moins vrai quun e nonc e tel que si 2 + 2 = 5 alors 2 + 2 = 6 est un th eor` eme de larithm etique, aussi valide quinutile. On peut aborder le probl` eme autrement. Il nexiste que 16 connecteurs binaires, et donc 16 possibilit es de d enir une approximation v erifonctionnelle de limplication. En outre, certains choix sont dofce exclus. En particulier, on admet ais ement que la valeur de v erit e dune implication (p q ) ne peut d ependre du seul ant ec edent p, ou du seul cons equent q ; on admet de m eme que les r oles de lant ec edent et du cons equent ne sont pas interchangeables. Si lon se r ef` ere a ` la gure 5, les seuls candidats possibles sont 3 , 5 , 12 et 14 . Si on admet en outre que, quand lant ec edent est vrai, limplication a la valeur du cons equent, il ne reste que 5 , cest-` a-dire limplication logique telle quelle a e t e d enie plus haut. Une comparaison plus pouss ee entre la logique et larithm etique fournira une autre justication de la notion dimplication (Fig. 13). 2.3.3 Formalisation dun texte en langage naturel Comment formaliser le raisonnement ci-dessous en logique propositionnelle ?

p V V F F

q V F V F

p q q p (p q ) (q p) V V V F F V V V V V V V

F IG . 12 Table de v erit e de (p q ) (q p). 2.3.2 Les connecteurs naturels Les connecteurs v erifonctionnels utilis es en logique sont des versions simpli ees et id ealis ees de leurs homologues naturels. Par exemple, le connecteur et de la langue franc aise nest pas toujours compositionnel, comme le montrent les exemples suivants : Il eut peur et il tua lintrus. Il tua lintrus et il eut peur. Dans un contexte o` u les deux composants sont vrais, un proc` es dassises par exemple, les deux phrases ont des sens nettement diff erents. N eanmoins, dans la plupart des cas, le connecteur et semploie de mani` ere v erifonctionnelle, avec parfois une surcharge de sens, 26

Si le r ecit biblique de la cr eation est strictement exact, le soleil na pas e t e cr ee avant le quatri` eme jour. Et si le soleil na pas e t e cr ee avant le quatri` eme jour, il ne peut avoir e t e la cause de lalternance de lumi` ere et dobscurit e pendant les trois premiers jours. Mais soit le sens du mot jour dans la bible est diff erent du sens habituel, soit le soleil a bien e t e la cause de lalternance de lumi` ere et dobscurit e pendant les trois premiers jours. Il sen suit DONC que le r ecit biblique de la cr eation nest pas strictement exact ou que le sens du mot jour dans la bible est diff erent du sens habituel.
Introduisons les propositions suivantes : E : le r ecit biblique de la cr eation est strictement E xact ; Q : le soleil a e t e cr ee avant le Quatri` eme jour ;
13 On admet que les propositions e l ementaires contenues dans ces phrases ont les valeurs de v erit e que leur assignent les math ematiques et lastronomie . . .

27

A : le soleil a e t e la cause de lAlternance de lumi` ere et dobscurit e pendant les trois premiers jours ; D : le sens du mot jour dans la bible est D iff erent du sens habituel. Le raisonnement se formalise en E Q , Q A , D A E D On peut v erier que toute interpr etation rendant vraies les trois pr emisses rend vraie la conclusion. En effet, si la conclusion est fausse pour linterpr etation v , on a n ecessairement v (E ) = V et v (D ) = F. Les valeurs de v erit e des trois pr emisses sont alors 1. v (E Q) = v (Q) ; 2. v (Q A) ; 3. v (D A) = v (A). On v erie imm ediatement quaucune des quatre mani` eres dattribuer des valeurs de v erit ea ` Q et A ne permet de rendre simultan ement vraies les formules Q, (Q A) et A. En anticipant sur la section suivante, on peut donc afrmer que le raisonnement est correct. Remarque. Notre analyse ne permet e videmment pas de porter un jugement sur la v eracit e des trois pr emisses. Une simple lecture de la Gen` ese permet de v erier la v eracit e de la premi` ere. Pour admettre la seconde, il faut admettre notamment que la cause doit pr ec eder (temporellement) leffet. Lanalyse de chacune des pr emisses et de la conclusion requiert naturellement une bonne connaissance du franc ais. En fait, il est difcile dinventorier avec pr ecision les connaissances, e l ementaires mais nombreuses, n ecessaires a ` la validation de ce raisonnement. 2.3.4 Logique et arithm etique Si on assimile les valeurs de v erit e F et V aux nombres 0 et 1, respectivement, les connecteurs logiques deviennent les restrictions au domaine {0, 1} dop erations arithm etiques. Naturellement, les op erations arithm etiques dont les connecteurs logiques sont des restrictions ne sont pas univoquement d etermin ees. Par exemple, la fonction identit e sur {0, 1} est la restriction non seulement de la fonction identit e sur mais aussi, entre autres, de la fonction carr e puisque 02 = 0 et 12 = 1. Il est int eressant de consid erer que les connecteurs sont les restrictions dop erations arithm etiques aussi e l ementaires et utiles que possible. Nous proposons les rapprochements repris a ` la gure 13. Remarque. Lexpression a mod n, dans laquelle a est un entier et n un entier strictement positif, d esigne le reste de la division de a par n, cest-` a-dire lunique entier r {0, . . . , n 1} tel que l equation a = nq + r admette une solution (n ecessairement unique et appel ee le quotient). Le r ole de limplication en logique est analogue a ` celui, crucial, de la relation dordre num erique en arithm etique. Comme il nexiste que deux valeurs de v erit e, limplication jouit de propri et es particuli` eres. Par exemple, si on consid` ere une formule A(p) comportant une seule occurrence dune proposition p comme une fonction de p, cette fonction est croissante, si A(false ) A(true ) est valide (voir paragraphe suivant), ou d ecroissante (si A(true ) A(false ) est valide) ou les deux a ` la fois (si A(false ) A(true ) est valide). Cette propri et e, qui nest pas v eri ee en arithm etique, permettra de faciliter lanalyse de certaines formules. 28

ab ab ab ab ab a

a=b ab min(a, b) ou encore a b max(a, b) a = b ou encore (a + b) mod 2 1a

F IG . 13 Interpr etation arithm etique des connecteurs.

2.4 Relation de cons equence logique


Un raisonnement est un m ecanisme, ou un algorithme, permettant de d eriver une proposition, la conclusion, a ` partir dun ensemble de propositions donn ees, les pr emisses. Un raisonnement est correct, ou valide, si dans tout contexte o` u les pr emisses sont vraies, la conclusion est vraie aussi. On dit alors que la conclusion est cons equence logique de lensemble des pr emisses. Dans cette section, nous abordons le probl` eme central de la logique, qui est de d eterminer si une formule est ou nest pas cons equence logique dun ensemble donn e de formules. Un probl` eme plus simple est de d eterminer si une formule donn ee (ou un ensemble de formules) est vrai pour toutes les interpr etations possibles, pour au moins une, ou pour aucune. Cest ce probl` eme que nous allons aborder en premier lieu. 2.4.1 Consistance et validit e Consistance et validit e dune formule isol ee. Soit A une formule propositionnelle. Une interpr etation v de A est un mod` ele de A si v (A) = V. A est satisfaisable ou consistante si A a au moins un mod` ele. A est valide, ou A est une tautologie, si v (A) = V pour toute interpr etation v . La notation |= A exprime que A est valide. A est insatisfaisable ou inconsistante si A nest pas satisfaisable, cest-` a-dire si, pour toute interpr etation v , on a v (A) = F. Remarque. (In)satisfaisabilit e est le terme propre ; (in)consistance est souvent pr ef er e par euphonie. Th eor` eme. Une formule A est valide si et seulement si sa n egation A est insatisfaisable. D emonstration. Les quatre e nonc es suivants sont e quivalents. A est valide ; v (A) = V, pour toute interpr etation v ; v (A) = F, pour toute interpr etation v ; A est insatisfaisable. Consistance et validit e dun ensemble de formules. Soit E un ensemble de formules. Le lexique de E est la r eunion des lexiques des e l ements de E . 29

Une interpr etation de E est une fonction v de dans {V, F} ; elle admet un prolongement unique permettant dinterpr eter toutes les formules dont le lexique est inclus dans et, en particulier, toutes les formules de E . Une interpr etation v de E est un mod` ele de E si elle est un mod` ele de tous les e l ements de E , cest-` a-dire si v (A) = V pour toute formule A E . E est satisfaisable ou consistant si E a au moins un mod` ele. E est insatisfaisable ou inconsistant si E nest pas satisfaisable, cest-` a-dire si, pour toute interpr etation v , on a v (A) = F, pour au moins une formule A E . Voici trois cons equences imm ediates de ces d enitions. Toute interpr etation est un mod` ele de lensemble vide . Les mod` eles du singleton {A} sont les mod` eles de la formule A. Les mod` eles de lensemble ni {A1 , . . . , An } sont les mod` eles de la conjonction A1 An . Remarques. On peut d enir la validit e dun ensemble E comme le fait que toute interpr etation est un mod` ele de E . Cela nest gu` ere int eressant car un ensemble valide nest quun ensemble de formules valides. La situation est diff erente en ce qui concerne la consistance. Il est clair que les e l ements dun ensemble consistant sont des formules consistantes, mais un ensemble de formules consistantes peut e tre inconsistant ; cest par exemple le cas de la paire {p, p}. Une interpr etation v dun ensemble ni E = {A1 , . . . , An } est un mod` ele de E si et seulement si cest un mod` ele de la formule A1 An ; cest pourquoi on parle parfois densemble conjonctif de formules. Notons enn que les notions dinterpr etation et de consistance restent pertinentes dans le cas dun ensemble inni de formules. En revanche, la notion de conjonction innie ou de formule innie nexiste pas dans notre contexte, parce quelle correspondrait a ` un arbre s emantique inni, objet (informatique) difcilement manipulable. Th eor` eme. Si E E , tout mod` ele de E est un mod` ele de E . Corollaire. Tout sous-ensemble dun ensemble consistant est consistant. Corollaire. Tout sur-ensemble dun ensemble inconsistant est inconsistant. Remarque. La notation E E repr esente l enonc e tout e l ement de E est un e l ement de E . quivalence logique 2.4.2 Cons equence logique, e Une formule A est cons equence logique dun ensemble E de formules si tout mod` ele de E est un mod` ele de A. La notation E |= A exprime que A est cons equence logique de E .

cons equence logique de tout ensemble. Dans le m eme ordre did ee, la notation E |= false exprime que lensemble E est inconsistant. En effet, le seul moyen que tout mod` ele de E soit un mod` ele de false est que lensemble E nadmette aucun mod` ele. Nous introduisons maintenant un r esultat, imm ediat mais important, permettant de ramener la question A est-elle cons equence logique de E ? a ` la question E {A} est-il inconsistant ?. Th eor` eme de la d eduction (cas ni). Soit A une formule et soit U = {A1 , . . . , An } un ensemble ni de formules. Les trois conditions suivantes sont e quivalentes : A est une cons equence logique de U ; U |= A ; lensemble U {A} est inconsistant ; U {A} |= false ; limplication (A1 . . . An ) A est valide ; |= (A1 . . . An ) A. Th eor` eme de la d eduction (cas g en eral). Soit A une formule et soit E un ensemble de formules. Les deux conditions suivantes sont e quivalentes : A est une cons equence logique de E ; E |= A ; lensemble E {A} est inconsistant ; E {A} |= false . La th eorie dun ensemble E de formules est lensemble des cons equences logiques de E , soit T (E ) = {A : E |= A} ; les e l ements de E sont les axiomes ou les postulats et les e l ements de T (E ) sont les th eor` emes. Cette notion est surtout employ ee dans le cadre de la logique des pr edicats. Th eor` eme. Soit E un ensemble de formules et soit U un ensemble de cons equences logiques de E . Les ensembles E et E U admettent exactement les m emes mod` eles. Corollaire. On pr eserve la consistance dun ensemble de formules par suppression de formules (quelconques) et aussi par adjonction de cons equences logiques ; on pr eserve linconsistance dun ensemble par adjonction de formules (quelconques) et aussi par suppression de cons equences logiques (de ce qui nest pas supprim e !). Deux formules propositionnelles A1 et A2 sont dites logiquement e quivalentes (ce qui se note A1 A2 , ou parfois A1 A2 ) si elles ont les m emes mod` eles, cest-` a-dire si v (A1 ) = v (A2 ) pour toute interpr etation v . En pratique, on peut v erier simplement l equivalence logique de deux formules, en passant en revue toutes les interpr etations d enies sur la r eunion des lexiques des deux formules. On e tablit par exemple pq qp en dressant le tableau suivant : p V V F F q V F V F v (p q ) v (q p ) V V V V V V F F 31

Remarque. Si E est valide, et en particulier si E est vide, A est cons equence logique de E si et seulement si A est valide. On peut donc voir la notation |= A comme une abr eviation de la notation |= A . Autrement dit, une formule est valide si et seulement si elle est cons equence logique de lensemble vide. On notera aussi quune formule est valide si et seulement si elle est 30

Remarque. Le mot equivalence est employ e dans trois cas bien distincts, que nous allons e num erer. 1. Ce mot d esigne des objets du langage formel quest la logique propositionnelle. On peut e crire Le symbole repr esente le connecteur d equivalence. La formule (p q ) (q p) est une e quivalence valide ; La formule p q est une e quivalence contingente ; La formule p p est une e quivalence inconsistante.

2. Ce mot intervient aussi dans le m etalangage, cest-` a-dire le formalisme, comportant des notations sp eciques, qui permet de parler des objets logiques. On peut e crire Le symbole repr esente la relation d equivalence logique. Lexpression (p q ) (q p) nest pas une formule, mais un e nonc e du m etalangage ; cet e nonc e est vrai et exprime que les formules (p q ) et (q p) sont logiquement e quivalentes. L enonc e p q appartient au m etalangage ; il est faux parce que les formules p et q ne sont pas logiquement e quivalentes. 3. Enn, le mot equivalence est employ e en franc ais, la langue qui nous permet d ecrire ce texte, et d evoquer les objets du langage et du m etalangage. On peut e crire Les expressions |= (A B ) et A B appartiennent toutes les deux au m etalangage ; ce sont des e nonc es interchangeables, ou e quivalents, parce quils sont tous les deux vrais, ou tous les deux faux, selon les formules que les variables (du m etalangage) A et B repr esentent. Les e nonc es tout sous-ensemble dun ensemble consistant est consistant et tout sur-ensemble dun ensemble inconsistant est inconsistant appartiennent a ` la langue franc aise (et non au m etalangage) ; ils sont e quivalents, parce quils sont interchangeables ; un raisonnement (informel et e l ementaire) permet de d eduire un e nonc e de lautre. La phrase franc aise Les e nonc es |= (A B ) et A B sont e quivalents nappartient pas au m etalangage, mais exprime un fait (vrai) relatif a ` deux e nonc es du m etalangage. Lusage dun m eme mot pour d esigner des concepts diff erents se justie (ou au moins sexplique) par les liens e troits existant entre ces concepts. Ces liens apparaissent par exemple dans le th eor` eme suivant, qui exprime l equivalence (au sens 3) entre deux e nonc es du m etalangage. Pour toutes formules A1 et A2 , on a A1 A2 si et seulement si on a |= (A1 A2 ). Ce th eor` eme, dont la d emonstration e l ementaire est laiss ee au lecteur, exprime que deux formules sont logiquement e quivalentes (sens 2) si et seulement si l equivalence (sens 1) dont elles sont les deux termes est valide.14 Selon les formules repr esent ees par A1 et A2 , les quatre e nonc es
Pour chicaner un peu plus, signalons que la locution si et seulement si est utilis ee, en franc ais, pour exprimer l equivalence (au sens 3) entre deux e nonc es du m etalangage . . . et parfois aussi entre deux e nonc es du franc ais, cest-` a-dire entre deux phrases e nonciatives quelconques. (Rassurons le lecteur qui nous a suivi jusquici : cest ni sur ce point !)
14

A1 A2 . |= (A1 A2 ). |= (A1 A2 ) et |= (A2 A1 ). {A1 } |= A2 et {A2 } |= A1 . sont, ou bien tous vrais, ou bien tous faux. Remarques. On e crit souvent A |= B au lieu de {A} |= B , et E, A, B |= C au lieu de E {A, B } |= C . De plus, certains auteurs e crivent v |= A au lieu de v (A) = V. Cela vient de ce que lon assimile parfois linterpr etation v a ` lensemble des formules dont v est un mod` ele. Mieux vaut e viter cette surcharge de sens pour une notation importante. 2.4.3 Echange et substitution uniforme En arithm etique et en alg` ebre, on est souvent amen e a ` remplacer une variable ou une sous-expression dune expression ou dune e quation donn ee par une autre expression. Ce remplacement est int eressant sil respecte certaines propri et es de lexpression ou de l equation initiale. Deux cas particuliers sont dusage fr equent. Tout dabord, si une expression contient une sous-expression e gale a ` une troisi` eme expression , on peut remplacer dans une ou plusieurs occurrences de par sans changer la valeur de . Supposons par exemple =def 2x + 3( + )2 (y 1) et = . On a, entre autres, les e galit es suivantes : = 2x + 3( + )2(y 1) = 2x + 3( + )2 (y 1) = 2x + 3( + )2(y 1) . Un autre type de remplacement est souvent employ e dans les e quations. De l egalit e bien connue (x + y )2 = x2 + 2xy + y 2 , on tire par exemple (ab + 3c)2 = (ab)2 + 2ab3c + (3c)2 . Notons deux diff erences importantes entre les deux types de remplacements : Dans le premier cas on exige l egalit e du terme remplac ant et du terme remplac e, mais pas dans le second. Dans le second cas on exige le remplacement uniforme, de toutes les occurrences du terme remplac e, mais pas dans le premier. Ces deux r esultats paraissent e vidents mais on doit se m eer, pour au moins trois raisons. La premi` ere est que les math ematiques fourmillent de r esultats e vidents . . . mais faux. La propri et e dassociativit e de laddition, souvent r esum ee par la formule a + (b + c) = (a + b) + c permet, dans un encha nement dadditions, de former arbitrairement des r esultats interm ediaires, et de calculer indiffemment (a + (b + c)) + d ou (a + b) + (c + d), les r esultats

32

33

e tant e gaux. Cette propri et e est valable pour toute somme nie, mais pas pour toute somme innie (s erie), comme le montre lexemple suivant :15 1 = 1 + [(1)+1] + + [(1)+1] + = [1+(1)] + + [1+(1)] + = 0 . La deuxi` eme raison est que les r esultats susmentionn es, si e vidents quils paraissent, deviennent faux dans certains contextes particuliers. Par exemple, on apprend en astronomie que l etoile du berger est en fait une plan` ete, V enus ; on apprend aussi que les plan` etes, au contraire des e toiles dites xes, tournent autour du soleil. Un imprudent remplacement conduirait a ` confondre les phrases
?

Remarque. Cette d emonstration se r esume tr` es bien en un dessin, que nous sugg erons au lecteur de tracer. La d emonstration qui suit, plus dans le style des math ematiciens, nimplique pas la repr esentation, m eme mentale, dun objet graphique ; on utilise au lieu de cela la notion de profondeur dune sous-formule dans une formule . . . ce qui, en fait, revient au m eme. Seconde d emonstration du lemme. On raisonne par induction sur la profondeur d de la sousformule A dans C , qui correspond a ` la profondeur de la racine du sous-arbre syntaxique A dans larbre C .16 Soit v une interpr etation telle que v (A) = v (B ). d = 0 : A = C et B = D , donc v (C ) = v (D ). d > 0 : C est de la forme C ou (C op C ). Dans le premier cas, A est de profondeur d 1 dans C et, en nommant D le r esultat du remplacement de A par B dans C , on a (hypoth` ese inductive) v (C ) = v (D ) ; comme C = C et D = D , on a aussi v (C ) = v (D ). Dans le second cas, si loccurrence a ` remplacer se trouve dans C , on a aussi v (C ) = v (D ), do` u v (C ) = v (C op C ) = v (D op C ) = v (D ).17 Th eor` eme de l echange. Le th eor` eme suivant est une cons equence imm ediate du lemme de remplacement. Th eor` eme de l echange. Soient A et B deux formules ; soient C une formule admettant A comme sous-formule, et D la formule obtenue en remplac ant une ou plusieurs occurrence(s) de A par B dans C . On a (A B ) |= (C D ) . D emonstration. Il suft de montrer que, pour toute interpr etation v , si v (A) = v (B ), alors v (C ) = v (D ). Dans le cas particulier o` u D sobtient par remplacement dune seule occurrence de A, on applique le lemme de remplacement. Dans le cas g en eral o` u n occurrences sont remplac ees, il suft dappliquer n fois le lemme de remplacement. D emonstration directe. Consid erons une table de v erit e pour la formule C . Elle comporte une colonne pour C elle-m eme, et une colonne pour chacune des sous-formules de C et en particulier une colonne relative a ` A. Pour obtenir une table de v erit e pour D il suft de 1. Juxtaposer a ` la colonne relative a ` A une table relative a ` B (lordre des lignes e tant le m eme). 2. Remplacer les t etes de colonne comportant les occurrences remplac ees par la formule r esultant du remplacement ; le reste de la colonne nest pas alt er e. 3. Supprimer les colonnes inutiles. Corollaire. Avec les notations du th eor` eme de l echange, si A et B sont logiquement e quivalents, alors C et D sont logiquement e quivalents.18
16 La notion de profondeur dune sous-formule peut se d enir par induction, sans e voquer la notion darbre syntaxique : X est de profondeur 0 dans X ; si X est de profondeur d dans Y , alors X est de profondeur d + 1 dans Y , dans Y Z , etc. On notera aussi quune formule peut contenir plusieurs occurrences dune sousformule (cf. 2.2.4) ; ces occurrences peuvent avoir des profondeurs distinctes. 17 Ce dernier point utilise explicitement le caract` ere v erifonctionnel de op. 18 Cela s ecrit, si |= (A B ), alors |= (C D).

Jacques sait que V enus tourne autour du Soleil.


et

Jacques sait que l etoile du berger tourne autour du Soleil.


alors que pour beaucoup de gens la premi` ere phase est vraie mais pas la seconde. Voici un autre exemple :

Lexpression (x + y )3 s ecrit en moins de 10 caract` eres, donc lexpression x3 + 3x2 y + 3xy 2 + y 3 s ecrit en moins de 10 caract` eres.
La troisi` eme raison pour laquelle il nest pas inutile de d emontrer des r esultats e vidents est que les preuves sont parfois aussi instructives que les th eor` emes correspondants. En particulier, la validit e du premier principe de remplacement e voqu e plus haut tient a ` une propri et e essentielle des op erateurs math ematico-logiques ; laquelle ? Lemme de remplacement. La propri et e cruciale des op erateurs math ematico-logiques est que la valeur de la forme f (e1 , . . . , en ) ne d epend que de lop erateur f et de la valeur des op erandes e1 , . . . , en ; en particulier, si ei = ei , alors f (e1 , . . . , en ) = f (e1 , . . . , en ). On dit que les op erateurs math ematico-logiques sont compositionnels, ou encore d enotationnels ; en logique propositionnelle, on a d ej` a not e que compositionnel signie v erifonctionnel. Lop erateur Je sais nest pas v erifonctionnel ; il nest donc pas e tonnant quil mette en d efaut les principes e voqu es plus haut. Formellement, le lien entre v erifonctionnalit e et remplacement sexprime comme suit. Lemme (remplacement). Soient A, B, C des formules et v une interpr etation. On suppose que A appara t au moins une fois comme sous-formule de C , et de plus que v (A) = v (B ). Si D est le r esultat du remplacement dune occurrence de A par B dans C , alors v (D ) = v (C ). Premi` ere d emonstration du lemme. On consid` ere larbre syntaxique relatif a ` la formule C . Chaque nud n de larbre correspond a ` une sous-formule n de C ; il peut e tre e tiquet e par la valeur de v erit e v (n ). Le fait que les connecteurs soient v erifonctionnels signie que la valeur attach ee a ` un nud int erieur n ne d epend que du connecteur principal de n et des valeurs associ ees aux descendants directs de n. Le remplacement dune occurrence de A par B correspond au remplacement dun sous-arbre par un autre mais, comme v (A) = v (B ), ceci ne change ni l etiquette de la racine du sous-arbre, ni les e tiquettes des anc etres, dont la racine de larbre. Cela implique v (C ) = v (D ).
15

Ce fait nous para t maintenant e vident, mais a e t e dans le pass ea ` lorigine derreurs graves.

34

35

Exemple. Soient les formules A: pq B : p q C : ((p q ) r ) ((p q ) r ) D : ((p q ) r ) ((p q ) r ) Une table de v erit e relative a ` C est p V V V V F F F F q V V F F V V F F r V F V F V F V F p q (p q ) r (p q ) r V V V V F F F F V F F V V V V V F F V V V V F F C V F V V V F V F

Enn, on supprime les colonnes devenues inutiles (ici, aucune) ; le r esultat est une table de v erit e pour D . Corollaire. Avec les notations du th eor` eme de l echange, si A et B sont logiquement e quivalents, alors C et D sont logiquement e quivalents.19 Exemple. On donne A =def p , B =def p et C =def (p q ) (q p) . Trois choix sont possibles pour D : D =def (p q ) (q p) ; D =def (p q ) (q p) ; D =def (p q ) (q p) . Comme A et B sont logiquement e quivalents, C et D le sont aussi. Applications du th eor` eme de l echange. La gure 14 donne une s erie d equivalences logiques qui, via le th eor` eme de l echange, permettent de simplier des formules. Ces e quivalences logiques sont des lois alg ebriques, analogues aux identit es remarquables utilis ees en arithm etique et en alg` ebre. (X X ) X (X X ) (X Y ) (Y X ) (X Y ) (Y X ) ((X Y ) Z ) (X (Y Z )) ((X Y ) Z ) (X (Y Z )) (X X ) true ((X Y ) (Y X )) (X Y ) (((X Y ) (Y Z )) (X Z )) true (X Y ) ((X Y ) X ) (X Y ) ((X Y ) Y ) (X (Y Z )) ((X Y ) (X Z )) (X (Y Z )) ((X Y ) (X Z )) (X (Y Z )) ((X Y ) (X Z )) (X X ) true ; (X X ) false (X true ) true ; (X true ) X (X false ) X ; (X false ) false X X (X Y ) (X Y ) (X Y ) (X Y ) F IG . 14 Quelques e quivalences logiques. On utilise souvent ces lois alg ebriques, combin ees au th eor` eme de l echange, pour simplier les formules. Voici un exemple : p (p q ) (p p) (p q ) false (p q ) p q
19

On introduit les colonnes suppl ementaires n ecessaires (ici, une seule) : p V V V V F F F F q V V F F V V F F r V F V F V F V F p q p q (p q ) r (p q ) r V V V V V V F F F F F V F F F V V V V V V V F F V V V V V V F F C V F V V V F V F

On change les t etes de colonnes concern ees par le remplacement (ici, deux), sans changer les colonnes elles-m emes : p V V V V F F F F q V V F F V V F F r V F V F V F V F p q p q (p q ) r (p q ) r V V V V V V F F F F F V F F F V V V V V V V F F V V V V V V F F 36 D V F V V V F V F

Cela s ecrit, si |= (A B ), alors |= (C D).

37

Ces e quivalences d ecrivent des propri et es des connecteurs, telles lassociativit e, la commutativit e et lidempotence de , , la transitivit e de limplication et de l equivalence, etc. Dun point de vue s emantique, des formules telles que p q et p q ne doivent pas e tre distingu ees. Lensemble des formules construites sur un lexique donn e et dans lequel des formules logiquement e quivalentes ne comptent que pour une seule formule est int eressant a ` e tudier. Cela sugg` ere (aux math ematiciens . . .) l etude de lensemble-quotient / , o` u d esigne lensemble des formules bas ees sur le lexique . Cet ensemble-quotient est une alg` ebre de Boole particuli` ere (appel ee alg` ebre de Lindenbaum), dont les op erations sont naturellement les connecteurs. Si = {p}, lalg` ebre correspondante comporte quatre e l ements ; on a A1 = {false , p, p, true }. Si = {p, q }, lalg` ebre correspondante comporte seize e l ements ; on a A2 = { false , p q , p q , p q , p q , p, p, q , q , p q, p q , p q , p q , p q , p q , true }. Lalg` ebre An est isomorphe a ` P (En ), o` u En est un ensemble a ` 2n e l ements. La n egation, la conjonction, la disjonction, limplication et l equivalence correspondent respectivement a ` la compl ementation, lintersection, la r eunion, linclusion et l egalit e. Th eor` eme de la substitution uniforme. Soient A1 et A2 des formules et B la formule A1 (A1 A2 ). La formule B peut e tre tr` es longue, mais on voit imm ediatement quelle est valide, comme instance de la formule valide p (p q ). Si C est une formule, on note C [p, q / A1 , A2 ] la formule obtenue en remplac ant toutes les occurrences des propositions p et q dans C par les formules A1 et A2 , respectivement. On note aussi [p, q / A1 , A2 ] la fonction (dite substitution uniforme double) qui a ` toute formule C associe la formule C [p, q / A1 , A2 ]. Remarque. Les formules C [p, q / A1 , A2 ], C [p/A1 ][q/A2 ] et C [q/A2 ][p/A1 ] peuvent e tre distinctes ; cest le cas par exemple si C est p q et si A1 et A2 sont q et p, respectivement. Dans le cas particulier o` u aucune proposition pi nintervient dans les e l ements de lensemble {A1 , . . . , An }, la substitution uniforme n-uple est dite ind ependante ; on note alors que les formules C [p1 , . . . , pn / A1 , . . . , An ] et C [p1 /A1 ] . . . [pn /An ] sont n ecessairement identiques. Ceci montre que toute substitution uniforme n-uple ind ependante est la compos ee (dans nimporte quel ordre) des n substitutions simples correspondantes. Ce r esultat int eresse le programmeur, qui peut remplacer laffectation n-uple (x1 , . . . , xn ) := (e1 , . . . , en ) par la s equence x1 := e1 ; . . . ; xn := en a ` condition que les expressions affectantes ne contiennent pas les variables affect ees. Remarque. Toute substitution uniforme n-uple est la composition de 2n substitutions uniformes simples ind ependantes.20 Lemme de substitution uniforme. Soient C, A1 , . . . , An des formules et p1 , . . . , pn des propositions deux a ` deux distinctes. Si v est une interpr etation, d enie sur un lexique
20 La d emonstration est laiss ee au lecteur. On pourra utiliser la d ecomposition dune affectation n-uple (x1 , . . . , xn ) := (e1 , . . . , en ) en une s equence e quivalente de 2n affectations simples t1 := e1 ; . . . ; tn := en ; x1 := t1 ; . . . ; xn := tn , o` u les ti sont n nouvelles variables.

comportant toute proposition intervenant dans C ou dans lun des Ai , et telle que v (pi ) = v (Ai ) (i = 1, . . . , n), alors on a v (C [p1 , . . . , pn / A1 , . . . , An ]) = v (C ). Exemple de substitution uniforme. Soit C =def p1 (q p2 ) , A1 =def p2 (p1 r ) , A2 =def p1 q . On a alors C [p1 , p2 / A1 , A2 ] =def (p2 (p1 r )) (q (p1 q )) . Si on choisit v =def {(p1 , F), (p2 , V), (q, V), (r, F)} , on a v (A1 ) = v (p1 ) = F et v (A2 ) = v (p2 ) = V ; on a aussi v ([p1 , p2 / A1 , A2 ]) = v (C ) = V. D emonstration du lemme. Dans le cas o` u la substitution est ind ependante, si ri d esigne le nombre doccurrences de pi dans C , il suft dappliquer r1 + + rn fois le lemme de remplacement (ou n fois le th eor` eme de l echange). On laisse au lecteur lextension au cas des substitutions non ind ependantes. Th eor` eme de substitution uniforme. Soient C, A1 , . . . , An des formules et p1 , . . . , pn des propositions deux a ` deux distinctes ; si C est une tautologie, alors C [p1 , . . . , pn /A1 , . . . , An ] est une tautologie. D emonstration. On suppose dabord que la substitution est ind ependante ; aucun pi nappara t donc dans {A1 , . . . , An }, pas plus que dans C =def C [p1 , . . . , pn / A1 , . . . , An ]. Soit v , une interpr etation quelconque de C , et w lextension de v obtenue en posant w (pi) =def v (Ai ). Le lemme de substitution uniforme implique w (C ) = w (C ). Par hypoth` ese on a w (C ) = V et par construction on a w (C ) = v (C ). On a donc v (C ) = V. Remarque. Si les pi intervenaient dans les Ak , la technique pourrait ne pas fonctionner. De |= p p, on ne d eduit pas imm ediatement que |= (p r ) (p r ) car linterpr etation v : v (p) = F, v (r ) = V telle que v (A) = v (p r ) = V nadmet pas dextension w telle que w (p) = V. Le rem` ede est simple. De |= p p on d eduit |= q q , do` u on d eduit |= (p r ) (p r ). Suite de la d emonstration. Si en revanche les pi interviennent dans {A1 , . . . , An }, on se donne une famille de nouveaux atomes qi . Si C est une tautologie, alors C =def C (p1 /q1 , . . . , pn /qn ) est une tautologie. Dautre part, C peut s ecrire C [q1 , . . . , qn / A1 , . . . , An ], o` u les qi ninterviennent pas dans les Ak ; C est donc une tautologie. Remarque. O` u lexigence duniformit e de la substitution est-elle utilis ee dans cette d emonstration ? Tables de v erit e abr eg ees. On v erie un e nonc e tel que (p q ) (q p) au moyen dune table de v erit e (de quatre lignes). Il semble naturel de v erier un e nonc e tel que (AB ) (B A) de la m eme mani` ere, sans recourir a ` un th eor` eme de substitution uniforme. Cette m ethode est acceptable et se justie comme suit. On peut voir la pseudo-table relative a ` (A B ) (B A) comme une abr eviation de la table compl` ete, potentiellement tr` es longue, relative a ` une instance du sch ema, telle que [(p q ) r ] [r (p q )] . 39

38

Il est clair que chaque ligne v de la table compl` ete est repr esent ee dans la pseudo-table, par la ligne qui attribue a ` A la valeur v (p q ) et a ` B la valeur r . En revanche, certaines lignes de la pseudo-table peuvent ne correspondre a ` aucune ligne de la table compl` ete. Cest le cas par exemple si A est instanci e par une formule valide : les lignes de la pseudo-table concernant les cas o` u A est faux nont pas de correspondant dans la table compl` ete. Cela a la cons equence suivante. Si C est une formule valide, alors C (p1 /A1 , . . . , pn /An ) est une formule valide ; Si C est une formule inconsistante, alors C (p1 /A1 , . . . , pn /An ) est une formule inconsistante ; Si C est une formule simplement consistante, on ne peut rien dire. Donnons un contre-exemple tr` es simple pour le dernier cas : soit C =def p. On voit que C est simplement consistante, tandis que C [p/(q q )] est valide et que C [p/(q q )] est inconsistante.

Th eor` eme dinterpolation de Craig. En logique propositionnelle, linterpolation doit permettre notamment loptimisation des circuits digitaux ; une formule comportant n variables propositionnelles distinctes correspond a ` un circuit digital a ` n entr ees et une sortie. Le plus souvent, un circuit digital nest pas compl` etement sp eci e et le concepteur peut mettre a ` prot les degr es de libert e tol er es par la sp ecication pour obtenir un circuit aussi simple que possible. Dans le cas o` u la sp ecication prend la forme dun intervalle logique, le th eor` eme dinterpolation donne lieu a ` une technique de simplication. Th eor` eme. Soient A et B deux formules propositionnelles. Si |= A B , il existe une formule C , ne contenant que des propositions communes a ` A et B , telle que |= A C et |= C B . D emonstration. On raisonne par induction sur lensemble des propositions communes a ` A et B . Cela signie que lon d emontre dabord le th eor` eme dans le cas particulier o` u lensemble est vide (cas de base). On suppose ensuite que le th eor` eme est vrai dans le cas dun ensemble, quelconque mais x e, ne contenant pas une proposition, elle aussi quelconque mais x ee (cette supposition est lhypoth` ese inductive), puis on d emontre que le th eor` eme reste vrai dans le cas de cet ensemble augment e de cette proposition. Cas de base. Si = , |= A B implique que A est inconsistante (et on choisit C =def false ) ou que B est valide (et on choisit C =def true ). Cela se d emontre par labsurde. Sil existait des interpr etations u et v (de domaines disjoints) telles que u(A) = V et v (B ) = F, linterpr etation w =def u v serait telle que w (A B ) = F. Cas inductif. Si p , lhypoth` ese inductive afrme lexistence dinterpolantes CT et CF relatives a ` A(p/true ), B (p/true ) et a ` A(p/false ), B (p/false ), respectivement. On v erie imm ediatement que la formule (p CT ) (p CF ) interpole A et B . Th eor` eme de d enissabilit e de Beth. Th eor` eme. Soit A une formule ne contenant ni q ni r telle que [A(p/q ) A(p/r )] (q r ) est une tautologie. Il existe une formule B ne contenant pas p, q et r telle que A (p B ) soit une tautologie.

2.5 Quelques th eor` emes s emantiques


2.5.1 Interpolation et d enissabilit e Introduction. Consid erons des fonctions r eelles f et g de domaine R2 et un ensemble 3 D R tels que (x, y, z ) D : f (x, y ) g (x, z ) . Existe-t-il une fonction interpolante h : R R telle que (x, y, z ) D : [f (x, y ) h(x) g (x, z )]? Cela d epend du domaine D . Si par exemple D = D1 D2 D3 , deux interpolantes possibles sont x sup f (x, y ) et x inf g (x, z )
y D2 z D3

Si en revanche on a D = {(0, 0, 0), (0, 1, 1)}, lhypoth` ese devient f (0, 0) g (0, 0) f (0, 1) g (0, 1) et la th` ese devient f (0, 0) h(0) g (0, 0) f (0, 1) h(0) g (0, 1) . On voit que, dans ce cas, linterpolante peut ne pas exister. Dans R+ , l equation x2 = x + 1 caract erise un nombre unique (le nombre dor). Autrement dit, si y 2 = y + 1 et z 2 = z + 1, on a y = z , et l equation d enit implicitement le nombre dor. Lexplicitation de ce nombre nest possible que si on introduit une fonction non rationnelle (la racine carr ee) ; on a alors x = (1 + 5)/2. La d enissabilit e et linterpolation correspondent a ` la r esolution d equations et din equations. Ces concepts existent aussi en logique, o` u et = deviennent respectivement et . 40

Remarque. Lhypoth` ese afrme que A caract erise (la valeur de) la proposition p, donc que A d enit implicitement p. La th` ese afrme quune certaine formule B existe, qui d enit explicitement p. Le th eor` eme afrme donc quen logique propositionnelle, une d enition implicite peut toujours e tre explicit ee. De ce point de vue, le domaine des formules propositionnelles se distingue de la plupart des domaines math ematiques, dans lesquels lexplicitation des d enitions implique souvent lintroduction doutils nouveaux. Dans une logique plus puissante que la logique propositionnelle, adapt ee a ` lintelligence articielle, on peut concevoir, sur base du th eor` eme de Beth, des techniques permettant dexpliciter une information donn ee implicitement (r esolution d enigmes par exemple). D emonstration. On a successivement |= [A(p/q ) A(p/r )] (q r )] , |= [A(p/q ) A(p/r )] (q r )] , |= [A(p/q ) A(p/r ) q ] r , |= [A(p/q ) q ] [A(p/r ) r ] . Soit B une interpolante (th eor` eme de Craig), ne contenant pas p, q , r . On a |= [A(p/q ) q ] B , et donc |= A(p/q ) (q B ) , et par substitution |= A(p/r ) (r B ) . 41

Dautre part, on a |= B [A(p/r ) r ] , do` u |= [B A(p/r )] r , do` u |= A(p/r ) (B r ) , et par substitution |= A(p/q ) (B q ) . On en d eduit la th` ese, sous la forme |= A(p/q ) (q B ) , ou sous la forme |= A(p/r ) (r B ) , ou encore |= A (p B ) . 2.5.2 Th eor` eme de compacit e Pr eliminaires. La majorit e des th eor` emes math ematiques e voquent, explicitement ou non, des objets innis ou des ensembles innis dobjets. La difcult e vient de ce que les propri et es des objets et ensembles nis ne s etendent pas syst ematiquement aux objets et ensembles innis. Par exemple, laddition nie est toujours associative et commutative ; laddition innie (s eries) ne lest que dans des cas particuliers. Certains ensembles structur es, dits compacts, h eritent de la plupart des propri et es int eressantes des ensembles nis. En logique propositionnelle, lensemble des interpr etations devient inni si lensemble des propositions est lui-m eme inni. La compacit e est ici la facult e de ne consid erer quun sousensemble ni (de propositions, dinterpr etations, de formules, . . .) pour tirer des conclusions portant sur un ensemble inni. Plus concr` etement, si E est un ensemble de formules et A une formule, on souhaite que, si A est cons equence logique de E , alors il existe un sousensemble ni E E tel que A soit cons equence logique de E . Dune mani` ere e quivalente, il faudrait que tout ensemble inconsistant (par exemple E {A}) admette un sous-ensemble ni inconsistant (par exemple E {A}). Ou encore (contraposition), que chaque ensemble niment consistant, cest-` a-dire dont toutes les parties nies sont consistantes, soit lui-m eme consistant. Ensembles niment consistants maximaux. D enitions. Un ensemble est niment consistant si tous ses sous-ensembles nis sont consistants.21 Un ensemble niment consistant est maximal sil nadmet pas de sur-ensemble niment consistant.22 Th eor` eme. Soient un ensemble de propositions et lensemble des formules construites sur . Un ensemble E est niment consistant maximal si et seulement sil existe une interpr etation v sur telle que E = { : v () = V}. Corollaire. Tout ensemble niment consistant maximal est consistant et admet un mod` ele unique. D emonstration. La preuve montre la correspondance biunivoque entre les interpr etations et les ensembles niment consistants maximaux (pour un lexique x e).
21 Tout ensemble consistant est donc niment consistant ; le but de cette section est de montrer que linverse est vrai aussi. 22 On e crira parfois f.c. et f.c.max au lieu de niment consistant et niment consistant maximal.

La condition est sufsante. Lensemble E = { : v () = V} est (niment) consistant, puisquil admet le mod` ele (unique) v , et est maximal, parce que si E , lensemble E { } contient le sous-ensemble ni inconsistant {, }. La condition est n ecessaire. On se restreint au cas o` u le lexique est d enombrable, soit = {p1 , p2 , . . .}. Soit E un sous-ensemble f.c. maximal de . Pour tout i, E contient exactement un des e l ements de la paire {pi , pi }. Dune part, il ne peut contenir les deux e l ements, puisque {pi , pi } est inconsistant. Dautre part, si pi E , lensemble E {pi } nest pas niment consistant et E admet un sous-ensemble ni E tel que E {pi } est inconsistant ; on a alors E |= {pi }. On en d eduit que E {pi } est niment consistant [si E E , tout mod` ele de E E est un mod` ele de E {pi }] do` u, vu la maximalit e, pi E . Pour tout i, soit i lunique e l ement de {pi , pi } appartenant a ` E ; ces e l ements d eterminent une interpr etation unique, rendant vrais tous les i . On note v cette interpr etation, dont on va montrer quelle est celle requise par l enonc e. On commence par d emontrer linclusion E { : v () = V}. Soit E et {pi1 , . . . , pin } les propositions intervenant dans . Comme E est niment consistant, son sous-ensemble {i1 , . . . , in , } est consistant, do` u v ( ) = V . On conclut en observant que, lensemble E e tant niment consistant maximal, linclusion E { : v () = V} entra ne l egalit e E = { : v ( ) = V } . Th eor` eme. Tout ensemble niment consistant est consistant. Remarque. Il suft de prouver que tout ensemble niment consistant est inclus dans un ensemble niment consistant maximal. D emonstration. Soit D un ensemble niment consistant. On pose E0 = D et, si n > 0, En = En1 {pn } si cet ensemble est niment consistant, En = En1 {pn } sinon. On d emontre par r ecurrence que tous les En sont niment consistants. Cest trivial pour n = 0. Pour En , cest trivial si En1 {pn } est niment consistant. Sinon, il existe un sous-ensemble ni E En1 tel que E {pn } est inconsistant, et donc que E |= pn . Dans ce cas, En = En1 {pn } est niment consistant, car pour tout sous-ensemble ni E En1 , tout mod` ele de E E est aussi un mod` ele de E {pn }. On pose E =def n En . Lintersection {pi , pi } E contient un e l ement unique i . Ces i d eterminent une interpr etation unique v telle que v () = V pour tout E . Lensemble D , comme lensemble E , est donc inclus dans lensemble maximal { : v () = V}. Remarque. Le th eor` eme de compacit e facilite lemploi de loutil logique, mais indique aussi une certaine faiblesse de cet outil. Par exemple, en arithm etique (th eorie des nombres entiers), un ensemble inni de formules peut e tre inconsistant tout en e tant niment consistant. Si z0 est une constante sur le domaine Z, on pose Ez0 = {(z > z0 ) : z }. Cet ensemble est inconsistant, puisque pour toute interpr etation v , lentier v (z0 ) admet des minorants. N eanmoins, tout sous-ensemble ni de Ez0 est consistant. Un tel ensemble s ecrit {(z > z0 ) : z A}, o` u A est un ensemble ni dentiers. Un mod` ele v sobtient en posant v (z0 ) = (inf A) 1. Cela montre simplement que le calcul des propositions ne permet pas dexprimer toute la th eorie arithm etique. Variante de la d emonstration. On peut combiner la construction dun sur-ensemble maximal et la d emonstration du th eor` eme de compacit e. Il suft dobserver que si est d enombrable, alors lest aussi ; en effet, on a = n n , o` u n est lensemble (ni) des formules construites 43

42

avec le lexique {p1 , . . . , pn } et comportant au plus n connecteurs. On peut alors consid erer une e num eration (1 , 2 , . . .) de lensemble et r ecrire la d emonstration comme suit. Soit D un ensemble niment consistant. On pose E0 = D et, si n > 0, En = En1 {n } si cet ensemble est niment consistant, En = En1 {n } sinon. On d emontre par r ecurrence que tous les En sont niment consistants. Cest trivial pour n = 0. Pour En , cest trivial si En1 {n } est niment consistant. Sinon, il existe un sous-ensemble ni E En1 tel que E {n } est inconsistant, et donc tel que E |= n . Dans ce cas, En = En1 {n } est niment consistant, car pour tout sous-ensemble ni E En1 , tout mod` ele de E E est aussi un mod` ele de E {n }. On pose E =def n En . Par construction, pour tout i > 0, lintersection {pi , pi } E contient un e l ement unique i . Ces e l ements d eterminent une interpr etation v , dont on montre quelle est un mod` ele de E . En effet, soit E et {pi1 , . . . , pin } les propositions intervenant dans . Soit k le plus petit naturel tel que lensemble Ek comporte tous les e l ements de {i1 , . . . , in , } (k existe toujours). Comme Ek est niment consistant, son sous-ensemble {i1 , . . . , in , } est consistant et admet un mod` ele. Ce mod` ele ne peut e tre que v (ou plus exactement la restriction de v au lexique {pi1 , . . . , pin }), do` u v ( ) = V . Remarquons quen arithm etique ce r esultat est faux. Lensemble {n > 0, n > 1, . . . , n > 143, . . .} est inconsistant, car aucun nombre nest plus grand que tous les autres, mais tous ses sousensembles nis sont consistants. Pourquoi ce th eor` eme est-il important ? Pour plusieurs raisons, mais nous nen citons que deux. La premi` ere raison est technique. Supposons quune formule A soit cons equence logique de lensemble inni E de formules. A priori, on pourrait craindre quune innit e de formules de E soient des hypoth` eses n ecessaires pour obtenir la conclusion A. Le th eor` eme de compacit e montre que cette crainte nest pas fond ee. En effet, si A est cons equence logique de E , alors E {A} est inconsistant et, par le th eor` eme de compacit e, il existe un sous-ensemble ni E de E tel que E {A} soit inconsistant, et donc tel que A soit cons equence logique de E . La seconde raison est plus philosophique. Lune des motivations de Frege, dans sa tentative remarquablement r eussie de formaliser la logique, e tait de r eduire les math ematiques a ` la logique. Ce logicisme, dans la lign ee du projet leibnizien de calculus ratiocinator, ne peut r eussir que de mani` ere tr` es partielle. Le th eor` eme de compacit e (surtout dans le cadre pr edicatif, que nous aborderons plus loin) montre que larithm etique ne peut se r eduire a ` la logique. Les c el` ebres r esultats dincompl etude de G odel montrent que cela a des cons equences importantes.

3 Proc edures de d ecision analytiques


Le th eor` eme de la d eduction permet de ramener le probl` eme fondamental de la logique a ` la d etermination de la consistance dun ensemble de formules, en r eduisant la question la formule A est-elle cons equence logique de lensemble de formules E ? a ` la question lensemble de formules E {A} est-il inconsistant ?. En pratique, on d eveloppe surtout des algorithmes de d etermination de la consistance dune formule ou dun ensemble de formules. Un tel algorithme permet aussi de r esoudre le probl` eme de la validit e : un ensemble de formules est valide si et seulement si tous ses e l ements sont valides23 et une formule est valide si et seulement si sa n egation est inconsistante. Une formule est simplement consistante, ou contingente, si elle nest ni valide ni inconsistante.

3.1 La m ethode des tables de v erit e


Le principe de cette m ethode est tr` es simple. Toute formule contient un nombre ni datomes et admet donc un nombre ni dinterpr etations. En cons equence, on peut d eterminer la valeur de v erit e de la formule pour toutes ses interpr etations. On pr esente souvent le r esultat sous forme dune table de v erit e, appel ee aussi tableau matriciel. On voit imm ediatement que la m ethode est tr` es inefcace ; si la formule a ` analyser contient n atomes distincts, elle admet 2n interpr etations. Lalgorithme est donc exponentiel (en temps et espace) en fonction du nombre de propositions intervenant dans la formule. Cela signie que le temps n ecessaire a ` la mise en uvre de cet algorithme augmente tr` es vite en fonction du nombre de propositions intervenant dans la formule. La gure 15 illustre la m ethode des tables de v erit e pour trois formules simples. Le probl` eme de la consistance en logique des propositions est NP-complet. On ne sattend donc pas a ` trouver un algorithme polynomial mais, en pratique, on escompte une m ethode qui soit exponentielle en pire cas, et non dans tous les cas. La suite de ce chapitre est consacr ee a ` des m ethodes qui, le plus souvent, sont nettement meilleures que la m ethode des tables de v erit e. On peut am eliorer la m ethode des tables de v erit e en utilisant diverses simplications. La plus importante consiste a ` ne pas attendre la n de la construction de la table pour tirer une conclusion. Consid erons lexemple de la formule (p q ) (q r ) . Cest une disjonction de deux implications. La premi` ere implication nest fausse que si p est vrai et q faux, mais dans ce cas la deuxi` eme implication est vraie ; la formule est donc valide. Nous napprofondissons pas ici les rafnements que lon peut apporter a ` la m ethode des tables de v erit e, parce quil existe dautres m ethodes nettement plus efcaces.24
Rappelons ici quun ensemble de formules consistantes peut e tre inconsistant. La m ethode des tables de v erit e (avec simplications) reste int eressante pour r esoudre certaines questions th eoriques et surtout pour analyser ` a la main des formules tr` es courtes.
24 23

44

45

structure arborescente particuli` ere, appel ee tableau s emantique.26 p V V F F q V F V F p q q p (p q ) (q p) V V V F F V V V V V V V 3.2.2 Technique de construction du tableau Un exemple introductif. Consid erons la formule =def (p q ) (p r ), en vue de la recherche syst ematique dun mod` ele. La formule e tant une conjonction, tout mod` ele de sera un mod` ele de ses deux composants (et r eciproquement), donc un mod` ele de lensemble {p q , (p r )}. Le deuxi` eme e l ement de cet ensemble est la n egation dune implication ; il sera vrai si et seulement si lant ec edent est vrai et le cons equent faux. Lanalyse de est donc r eduite a ` celle de lensemble {p q , p , r }. Enn, le premier e l ement est une implication, que lon rend vraie en falsiant lant ec edent ou en v eriant le cons equent ; il y a l` a deux possibilit es (non exclusives). Les mod` eles de sont donc, dune part, ceux de lensemble {p , p , r } et, dautre part, ceux de lensemble {q , p , r }. A ce stade, la d ecomposition de la formule est achev ee parce que les ensembles ne comportent plus que des litt eraux. Un litt eral est un atome (litt eral positif) ou la n egation dun atome (litt eral n egatif). En effet, un ensemble de litt eraux est consistant si et seulement sil ne contient pas simultan ement un litt eral et son oppos e, cest-` a-dire une paire compl ementaire du type {p, p} ; ceci se d etermine par simple inspection. On voit notamment que lensemble {p , p , r } est inconsistant et que lensemble {q , p , r } est consistant ; les mod` eles de la formule sont ceux de ce dernier ensemble. La m ethode des tableaux s emantiques consiste donc a ` r eduire la question (complexe) la formule A est-elle consistante ? a ` la question (triviale) la famille (nie) A densembles de litt eraux contient-elle un e l ement consistant ?. Il est commode dorganiser la recherche sous forme dun arbre, appel e tableau s emantique. Celui correspondant a ` la formule est repr esent ea ` la gure 16. (p q ) (p r ) p q , (p r ) p q , p , r p, p, r q, p, r (p q ) (p r ) p q , (p r ) p, (p r ) q, (p r ) p, p, r q, p, r

Table de v erit e de la formule valide (p q ) (q p). p V V F F q V F V F pq V F F F

Table de v erit e de la formule simplement consistante p q . p V V F F q V F V F p q p q (p q ) p q V F F F V F V F V V F F F V V F

Table de v erit e de la formule inconsistante (p q ) p q . F IG . 15 Application de la m ethode des tables de v erit e.

3.2 Les tableaux s emantiques


3.2.1 Introduction La m ethode des tables de v erit e consiste a ` passer en revue toutes les interpr etations possibles dune formule donn ee. La valeur attribu ee par une interpr etation a ` la formule est calcul ee en parcourant larbre syntaxique de du bas vers le haut, des feuilles vers la racine. On utilise le fait que la valeur de v erit e dune formule est d etermin ee par les valeurs de ses composants. La m ethode des tableaux s emantiques consiste en la recherche syst ematique dun mod` ele dune formule donn ee.25 Le fait dimposer une valeur de v erit ea ` une formule peut d eterminer univoquement la valeur des composants de la formule, ou au contraire laisser plusieurs choix possibles. La recherche syst ematique dun mod` ele conduit a ` la construction progressive dune
On peut aussi rechercher un antimod` ele, une interpr etation qui falsie la formule . Il est inutile de consid erer explicitement cette variante, puisquun mod` ele de est un antimod` ele de .
25

F IG . 16 Deux tableaux s emantiques. Une formule peut donner lieu a ` plusieurs tableaux s emantiques diff erents suivant lordre dapplication des r` egles de construction, mais tous conduisent a ` la m eme conclusion (la bonne !) concernant la consistance de la formule. La signication commune des deux tableaux de la gure 16 est
26 Cette structure est bien un arbre, mais ne doit pas e tre confondue, dune part, avec la notion darbre syntaxique d ej` a introduite ni, dautre part, avec la notion darbre s emantique qui sera introduite plus loin.

46

47

Une interpr etation est un mod` ele de la formule (p q ) (p r ) si et seulement si cest un mod` ele de lun des ensembles {p, p, r } , {q, p, r }.
Construction des tableaux s emantiques. La construction des tableaux s emantiques est bas ee sur la partition des formules en trois cat egories : les litt eraux ; les formules conjonctives ; les formules disjonctives. La formule (X Y ) est conjonctive car elle est e quivalente a ` la conjonction des deux formules (plus simples) X et Y . La formule X Y est disjonctive car elle est e quivalente a ` la disjonction de X et Y . Le connecteur est exclu ici,27 et on convient dassimiler X a X. La construction est bas ee sur deux types de r` egles de d ecomposition de formules : les r` egles de prolongation (type ) et les r` egles de ramication (type ). Dans le contexte des tableaux s emantiques on utilise les r` egles pour les formules conjonctives ; les r` egles pour les formules disjonctives.28 La gure 17 r epertorie les formules conjonctives et disjonctives, ainsi que les r esultats de lapplication a ` ces formules des r` egles de prolongation et de ramication, respectivement.29 1 2 A1 A2 A1 A2 (A1 A2 ) A1 A2 (A1 A2 ) A1 A2 (A1 A2 ) A1 A2 B1 B2 (B1 B2 ) B1 B2 B1 B2 1 2 B1 B2 B1 B2 B1 B2 B1 B2

Initialisation. On cr ee une racine e tiquet ee {}. It eration. On s electionne une feuille non marqu ee , d etiquette U (). Si U () est un ensemble de litt eraux : si U () contient une paire compl ementaire, alors marquer comme e tant ferm ee ; sinon, marquer comme e tant ouverte. Si U () nest pas un ensemble de litt eraux, s electionner une formule dans U () : si cest une -formule A, cr eer un nouveau nud , descendant de , et e tiqueter avec U ( ) = (U () {A}) {1 , 2 }; si cest une -formule B , cr eer deux nouveaux nuds et , descendants de , et e tiqueter avec U ( ) = (U () {B }) {1 } et e tiqueter avec U ( ) = (U () {B }) {2 }. Terminaison. La construction est achev ee quand toutes les feuilles sont marqu ees ou .

F IG . 18 Algorithme de construction dun tableau s emantique. p (q p) p, (q p) p (q p) = V p = V, q p = F p = V, q = F p = V, p = F

F IG . 17 Les r` egles de d ecomposition. Le processus g en eral de construction dun tableau s emantique pour une formule donn ee est d ecrit a ` la gure 18. Ce tableau est un arbre dont chaque nud est e tiquet e par un ensemble de formules. Un nud est terminal quand son e tiquette ne comporte que des litt eraux. Quand la construction du tableau est achev ee, toutes les feuilles sont des nuds terminaux. On convient de marquer un nud terminal par si l etiquette est consistante (feuille ouverte), et par si l etiquette est inconsistante (feuille ferm ee). On utilise parfois des assertions plut ot que des formules, une assertion e tant lattribution dune valeur de v erit ea ` une formule. La gure 19 comporte un tableau classique, en notation formule, et sa variante sign ee, en notation assertion.
27 On remplacera donc une e quivalence X Y par une formule conjonctive (X Y ) (Y X ), ou par une formule disjonctive (X Y ) (X Y ), au choix. On e limine de m eme les formules du type X Y . 28 Ce point sera nuanc e plus loin. 29 Dans la suite, on notera souvent une formule conjonctive et une formule disjonctive ; les composants respectifs seront not es respectivement 1 et 2 , et 1 et 2 . Soulignons quen g en eral il sagit de composants s emantiques et non de composants syntaxiques ; par exemple, p nest pas un composant syntaxique de la formule disjonctive p q .

p, q

p, p

F IG . 19 Tableau classique et tableau sign e. Remarque. Si on adopte cette variante, les liens -conjonction et -disjonction ne sont plus valable tels quels ; par exemple, lassertion p q = V est de type , lassertion p q = F est de type . En revanche, les liens -prolongation et -ramication subsistent. Cest pour e viter ces complications (` a tout le moins, ces apparences de complication) que nous navons pas directement introduit les tableaux sign es, pourtant fr equemment utilis es. Programmation de la m ethode. La m ethode des tableaux s emantiques est facilement programmable. Pour e conomiser lespace m emoire, on convient de ne pas cr eer un nouveau nud lors de lapplication dune r` egle , et de ne pas e tiqueter un nud n avec une formule

48

49

qui e tiqu` ete d ej` a un anc etre de n. Avec ces conventions, le tableau (p q ) (p q ) p q, p q p q, p, q p, p, q q, p, q prend la forme plus compacte suivante : (p q ) (p q ), p q, p q, p, q

3.2.3 Propri et es de la m ethode des tableaux s emantiques La m ethode des tableaux s emantiques est le plus souvent utilis ee pour montrer la validit e dune formule (ou linconsistance de sa n egation), ou encore pour montrer linconsistance dun ensemble ni de formules. On souhaite naturellement que la m ethode donne uniquement des r esultats corrects ; elle ne peut conclure, par exemple, a ` linconsistance dune formule, que si la formule est effectivement inconsistante. Cette propri et e est lad equation de la m ethode. Dautre part, on souhaite que, si une formule est inconsistante, la m ethode mette ce fait en e vidence ; cest la propri et e de compl etude. En r esum e, une m ethode est ad equate si elle est correcte ; elle est compl` ete si elle est assez puissante. Dans le cas pr esent, prouver lad equation revient a ` prouver lun des e nonc es suivants : si T (A) est ferm e, alors A est inconsistante ; si T (B ) est ferm e, alors B est valide ; si A est consistante, alors T (A) est ouvert ; si B nest pas valide, alors T (B ) est ouvert. Prouver la compl etude revient a ` prouver la r eciproque, cest-` a-dire lun des e nonc es suivants : si A est inconsistante, alors T (A) est ferm e; si B est valide, alors T (B ) est ferm e; si T (A) est ouvert, alors A est consistante ; si T (B ) est ouvert, alors B nest pas valide. Th eor` eme dad equation. Si T (A) est ferm e, A est inconsistante. D emonstration. On suppose que larbre T (A) est ferm e (tous ses sous-arbres le sont aussi). On d emontre par induction sur la hauteur h du nud n dans T (A) que pour tout sous-arbre de racine n de T (A) lensemble U (n) est inconsistant. La hauteur dune feuille est 0 ; la hauteur dun nud est celle de son ls, plus 1 ; la hauteur dun nud est celle du plus haut de ses ls, plus 1. h = 0 : n est une feuille ferm ee donc U (n) contient une paire compl ementaire de litt eraux et U (n) est inconsistant. h > 0 : une r` egle ou a e t e utilis ee pour cr eer le(s) descendant(s) de n. R` egle : n : {} U0 n : {1 , 2 } U0

Une autre e conomie possible est de ne pas e tiqueter les nuds directement avec des sousformules, mais plut ot avec des pointeurs vers les sous-arbres correspondants dans larbre syntaxique. Enn, certaines branches dun tableau s emantique sont tr` es semblables. Il est possible d eviter aussi les redondances de ce type en utilisant non plus une structure darbre, mais une structure de graphe sans cycle. Ces rafnements sortent du cadre de ces notes (voir [L2] pour plus de d etails). Terminaison de lalgorithme de construction. Th eor` eme. La construction dun tableau s emantique se termine. Principe de la d emonstration. Chaque e tape remplace une formule par une ou deux formules strictement plus simples. Comme la complexit e des formules est limit ee, on ne peut appliquer quun nombre ni d etapes. Remarque. On peut, sans restriction essentielle, supposer que le connecteur d equivalence nest pas employ e. Cette restriction simplie la forme de la mesure W d enie dans la d emonstration. D emonstration. Soit V le tableau dune formule A, a ` une e tape quelconque de sa construction, soit une feuille quelconque de V ; soient b() le nombre de connecteurs binaires dans U () et n() le nombre de n egations dans U (). On d enit W () = 2b() + n(). Quelle que soit la r` egle utilis ee, toute e tape de la construction cr ee un nouveau nud ou deux nouveaux nuds , tels que W ( ) < W () et W ( ) < W (). Or, W () prend ses valeurs dans ; il ne peut donc y avoir de branche innie dans V. Remarque. La d emonstration peut e tre e tendue au cas o` u et apparaissent dans la formule (exercice). Un tableau complet (dont la construction est achev ee) est ferm e si toutes ses feuilles sont ferm ees. Sinon, il est ouvert.

On a h(n ) < h(n) et lhypoth` ese inductive sapplique au sous-arbre (ferm e) de racine n ; lensemble U (n ) est inconsistant. Pour toute interpr etation v , il y a une formule A U (n ) telle que v (A ) = F ; trois cas sont possibles : 1. soit A U0 U (n) ; 2. soit A = 1 : v (1 ) = F do` u v () = F (cf. r` egles ) ; 3. soit A = 2 : v (2 ) = F do` u v () = F. Dans les trois cas, il y a une formule dans U (n) que v rend fausse ; v e tant quelconque, U (n) est donc inconsistant. R` egle : n : { } U0 n : {1 } U0 n : {2 } U0 51

50

h(n ) < h(n) et h(n ) < h(n) ; les ensembles U (n ) et U (n ) sont tous deux inconsistants. Pour toute interpr etation v , 1. soit il y a une formule A U0 U (n) : v (A ) = F 2. soit v (1 ) = v (2 ) = F, do` u v ( ) = F (cf. r` egles ). Dans les deux cas, il y a une formule dans U (n) que v rend fausse ; v e tant quelconque, on en d eduit que U (n) est inconsistant. Ensembles de Hintikka. Les m ethodes de la logique sont en g en eral constructive. En particulier, si une formule A est consistante, non seulement tout tableau s emantique pour cette formule doit e tre ouvert, mais en outre il doit e tre possible de construire un mod` ele de A a ` partir de ce tableau. Cette construction est possible et m eme tr` es simple. On va d emontrer dans ce paragraphe que toute interpr etation v eriant l etiquette dune feuille ouverte v erie aussi l etiquette de tout anc etre de cette feuille, et en particulier de la racine du tableau. Exemple. Les tableaux de la gure 20 sont ouverts. A chaque feuille ouverte correspond un mod` ele de la formule-racine. Il peut se faire que cette formule comporte une proposition napparaissant pas dans l etiquette de la feuille ; cela signie que tout prolongement du mod` ele sp eci e par cette e tiquette rend vraie la formule-racine. Le tableau de droite indique que toute interpr etation v v eriant p est un mod` ele de la formule p (q q ) (et ceci, quelle que soit la valeur attribu ee a ` v (q )). p (q p) p, q p p, q p, p p (q q ) p q q q, q

2. Pour toute -formule U , larbre e tant complet, la r` egle correspondante a d ue tre utilis ee a ` un certain nud n. Par construction, 1 , 2 U (n ) U . 3. Pour toute -formule U , larbre e tant complet, la r` egle correspondante a d ue tre utilis ee a ` un certain nud n. Par construction, 1 U (n ) et 2 U (n ), et U (n ) U ou U (n ) U , do` u 1 U ou 2 U . Lemme de Hintikka. Tout ensemble de Hintikka est consistant. D emonstration. Soit U un ensemble de Hintikka et soit = {p1 , . . . , pm } lensemble des atomes apparaissant dans les formules de U . D enissons une interpr etation v de U : v (p) = V si p U v (p) = F si p U Linterpr etation v assigne une et une seule valeur de v erit ea ` chaque atome de (car U est un ensemble de Hintikka). Il faut d emontrer que pour tout A U , on a v (A) = V. Cela se fait par induction sur la structure de A : A est un litt eral. Par d enition de v on a : Si A = p, alors v (A) = v (p) = V. Si A = p, alors v (p) = F, do` u v (A) = V. A est une -formule . On a 1 , 2 U , donc par hypoth` ese inductive, v (1 ) = V et v (2 ) = V, do` u v () = V par d enition des r` egles . A est une -formule . On a 1 U ou 2 U , donc par hypoth` ese inductive, v (1 ) = V ou v (2 ) = V, do` u v ( ) = V par d enition des r` egles . Th eor` eme de compl etude. Si T (A) ouvert, alors A est consistante. D emonstration. Si T (A) est ouvert, il existe une branche ouverte dans T (A). La r eunion des ensembles de formules e tiquetant les nuds de cette branche forme un ensemble de Hintikka (donc consistant) ; cet ensemble contient la formule A, qui est donc consistante. R esum e. La m ethode des tableaux s emantiques est un algorithme de d ecision pour la validit e (la consistance, linconsistance) dans le calcul des propositions. La formule A est inconsistante si et seulement si T (A) est un tableau ferm e ; la formule B est valide si et seulement si T (B ) est un tableau ferm e ; la formule C est simplement consistante si et seulement si T (C ) et T (C ) sont des tableaux ouverts. 3.2.4 Exercice sur la m ethode des invariants La preuve dad equation et de compl etude que nous avons donn ee est classique et se trouve dans beaucoup de livres de logique math ematique. Il est quand m eme int eressant, a ` titre dexercice, de d evelopper une vue plus informatique de cette double propri et e et de sa preuve. On note dabord que la m ethode des tableaux s emantiques est essentiellement un algorithme it eratif, constitu e dune simple boucle (Fig. 18). Si on n eglige le marquage par des ronds et des croix, les e l ements constitutifs de cette boucle sont linstruction dinitialisation, la garde de la boucle et le corps de la boucle. Linstruction dinitialisation consiste en la cr eation de la racine du tableau et de son e tiquette, compos ee uniquement de la formule de d epart. 53

F IG . 20 Deux tableaux s emantiques ouverts. D enition : Soit U un ensemble de formules. U est un ensemble de Hintikka si les trois conditions suivantes sont satisfaites : 1. Pour tout atome p, p U ou p U 2. Si U est une -formule, alors 1 U et 2 U . 3. Si U est une -formule, alors 1 U ou 2 U . Lemme de la branche ouverte. Soit b une branche ouverte dun tableau complet. Lensemble U =def nb U (n) est un ensemble de Hintikka. D emonstration. On montre que U respecte les trois conditions caract erisant les ensembles de Hintikka. 1. On note la feuille (ouverte) de b. Pour tout litt eral m (m {p, p}), m U implique m U () car aucune r` egle ne d ecompose les litt eraux. Or, est un nud ouvert, sans paire compl ementaire ; on a donc p U ou p U . 52

La garde exprime lexistence dun nud, feuille provisoire, dont l etiquette comporte une formule ou . Le corps de la boucle consiste en la g en eration du ou des successeur(s) direct(s) dune feuille provisoire du tableau. Rien nemp eche donc lapplication de la m ethode des invariants. En fait, cette application est simple et e clairante ; linvariant de boucle est la propri et e suivante : Les mod` eles de la formule de d epart sont exactement les interpr etations qui sont mod` eles dau moins une e tiquette de feuille provisoire. Lorsque le tableau est achev e, le mot provisoire dispara t et, clairement, la formule de d epart est consistante si et seulement si le tableau comporte au moins une feuille ouverte. En ce qui concerne la terminaison, le raisonnement fait plus haut reste valable dans le cadre de la m ethode des invariants. 3.2.5 La m ethode en pratique Si on pr esuppose quune formule X est inconsistante, on construira dabord T (X ) ; si on pr esuppose quelle est valide, on construira dabord T (X ). Si le tableau T (Y ) est ferm e, lanalyse est termin ee : on sait que Y est inconsistant et que Y est valide. Si le tableau T (Z ) est ouvert, on sait que Z est consistant et que Z nest pas valide ; il faut construire T (Z ) pour en savoir plus. On tient compte en pratique de trois r` egles simplicatrices e l ementaires : Une branche peut e tre ferm ee lorsquune paire compl ementaire de formules (pas seulement de litt eraux) appara t. Les formules inchang ees ne doivent pas e tre recopi ees dun nud a ` son descendant ( economie despace). Des heuristiques peuvent e ventuellement e courter le tableau (par exemple, utiliser les r` egles avant les r` egles ).

p (q p) p, q p

prolongation (type ) r` egle conjonctive ramication (type ) r` egle disjonctive

H p, q

A p, p

p, q

p, q p p (q p)

p, p

ramication (type ) r` egle conjonctive prolongation (type ) r` egle disjonctive

F IG . 21 Un tableau s emantique et une d erivation de s equent. p (q p) = F

prolongation (type ) r` egle conjonctive

p = V, q p = F p = V, q = F

H p, q

A p, p

ramication (type ) r` egle disjonctive

p, q p p (q p)

p = V, p = F

ramication (type ) r` egle conjonctive prolongation (type ) r` egle disjonctive

F IG . 22 Un tableau s emantique sign e et une d erivation de s equent. 3.3.2 Interpr etation Fondamentalement, le contenu s emantique dune d erivation de s equent est le m eme que celui du tableau correspondant, mais la dualit e permet de pr esenter ce contenu diff eremment. Chaque e tiquette dune d erivation de s equent sinterpr` ete comme un ensemble disjonctif de formules. Les feuilles correspondent a ` des clauses cest-` a-dire a ` des disjonctions de litt eraux. Les feuilles valides sont e tiquet ees A ; ce symbole signie Axiome : v erit e universelle. Les feuilles non valides sont e tiquet ees H ; ce symbole signie Hypoth` ese : e nonc e contingent. La ligne horizontale sinterpr` ete comme la relation d equivalence logique : une interpr etation rend vraie(s) la (les) pr emisse(s), au num erateur, si et seulement si elle rend vraie la conclusion, au d enominateur. On a aussi les d enitions et r` egles suivantes. Une clause est un axiome si elle comporte une paire compl ementaire de litt eraux, et une hypoth` ese sinon. Les r` egles dinf erence sont de deux types r` egles (prolongation) : U {1 , 2 } U { } r` egles (ramication) :

3.3 La m ethode analytique des s equents


3.3.1 Introduction La m ethode des tableaux s emantiques admet une m ethode duale, dite des s equents. Nous donnons dabord lalgorithme qui transforme un tableau s emantique en une d erivation de s equent. La gure 21 pr esente un tableau s emantique et la d erivation de s equent correspondante. On op` ere une sym etrie daxe horizontal, amenant les feuilles en haut et la racine en bas. (La construction directe dune d erivation de s equent proc` ede donc de bas en haut.) Chaque e tiquette du nouvel arbre se compose des n egations des e l ements de l etiquette correspondante du tableau s emantique ; de plus, chaque e tiquette est pr ec ed ee du symbole . Les arcs du tableau deviennent des lignes horizontales dans la d erivation de s equent. Les symboles et sont remplac es respectivement par les symboles H et A. Un tableau s emantique et la d erivation de s equent correspondante ne se rapportent donc pas a ` une m eme formule. On peut e liminer cette divergence (au moins en apparence) en utilisant la notation sign ee plut ot que la notation classique pour repr esenter le tableau (voir gure 22). 54

55

U {1 }

U { }

U {2 }

les anciennes r` egles V, A, B V, A V, B

A1 A2 (A1 A2 ) A1 A2 A1 A2

1 2 A1 A2 A1 A2 A1 A2 A1 A2

1 2 B1 B2 B1 B2 (B1 B2 ) B1 B2 (B1 B2 ) B1 B2 (B1 B2 ) B1 B2

V, (A B ) peuvent e tre e tendues en U V, A, B U V, (A B ) puis r ecrites en les nouvelles r` egles suivantes : U, A V, B U V, (A B )

V, (A B ) U V, A U V, B

U V, (A B ) U V, A U, B V

F IG . 23 Les r` egles de (d e)composition. Rappelons que les doubles n egations sont syst ematiquement simpli ees et que les connecteurs d equivalence et de disjonction exclusive sont interdits. On observe (gure 23) que les formules conjonctives donnent lieu a ` une ramication (type ) et les formules disjonctives a ` une prolongation (type ). C etait le contraire pour les tableaux s emantiques. Si on lit la d erivation de haut en bas, les r` egles de d ecomposition deviennent des r` egles de composition, ou r` egles dinf erence. 3.3.3 Propri et es de la m ethode des s equents Elles se d eduisent imm ediatement de celles des tableaux. La m ethode de d erivation de s equent est ad equate : toute formule racine dune d erivation de s equent dont toutes les feuilles sont des axiomes est valide. La m ethode de d erivation de s equent est compl` ete : toute formule valide est racine dune d erivation de s equent dont toutes les feuilles sont des axiomes. 3.3.4 Extension d ecriture On convient que le s equent A, B, C, D, E, F peut aussi s ecrire A, C, D B, E, F . Ce s equent est vrai pour v si v rend vraie au moins une des formules B , E et F , ou si v rend fausse au moins une des formules A, C et D . La partie de gauche (ici A, C, D) est lant ec edent, la partie de droite (ici B, E, F ) est le succ edent. Le s equent est vrai pour v si et seulement si limplication (A C D ) (B E F ) est vraie pour v . La virgule a valeur conjonctive dans lant ec edent et valeur disjonctive dans le succ edent. Un ant ec edent vide correspond a ` true , un succ edent vide correspond a ` false , le s equent vide correspond a ` false . Tout s equent dont lant ec edent et le succ edent comportent une formule commune est valide. On peut transf erer une formule de lant ec edent au succ edent, ou inversement, en changeant sa polarit e, cest-` a-dire en transformant A en A ou inversement. Le s equent A, C, D B, E, F est donc logiquement e quivalent au s equent A, B, C D, E, F . Il est commode de r ecrire les r` egles en tenant compte des nouvelles notations. A titre dexemple, si A et B d esignent des formules et si U et V d esignent des ensembles de formules, 56

U, (A B ) V

3.3.5 R` egles r eversibles, r` egles analytiques et synth etiques La r` egle dinf erence U V, A U, B V

U, (A B ) V est r eversible : la barre horizontale peut sinterpr eter comme le quivalence logique. Dans une r` egle non r eversible, la conclusion est cons equence logique des pr emisses, mais non linverse. Si on pose Uc = U et Vd = V , la r` egle ci-dessus exprime que les mod` eles communs des formules Uc (Vd A) et (Uc B ) Vd sont exactement les mod` eles de la formule (Uc (A B )) Vd . Cette r` egle est aussi analytique : toute formule apparaissant en haut appara t aussi en bas (comme formule ou sous-formule). Les d erivations de s equents peuvent se lire de bas en haut (analyse dune formule) ou de haut en bas (d eduction dune formule au d epart daxiomes et/ou dhypoth` eses). Il existe aussi des m ethodes synth etiques de d eduction, ne se pr etant pas directement a ` lanalyse des formules. La m ethode synth etique est le plus souvent la seule utilisable en math ematique. On utilise des r` egles o` u la barre sinterpr` ete comme la relation (non sym etrique) de cons equence logique. Lexemple le plus connu de r` egle synth etique (donc non analytique) et non r eversible est sans doute le Modus ponens : U A U (A B ) U B Un exemple de r` egle synth etique mais r eversible est la r` egle de coupure : U, A V U V, A

U V 57

La formule A et ses sous-formules peuvent ne pas appara tre dans les conclusions. Il est donc difcile de deviner des pr emisses ad equates au d epart des conclusions.30 3.3.6 Diff erences entre implication et s equent Dans la pr esentation qui vient d etre faite, la seule diff erence est que les deux termes dun s equent sont des ensembles ( eventuellement innis) de formules, tandis que les termes dune implication sont des formules, nies par nature. Une autre diff erence plus subtile appara t souvent. Les s equents peuvent e tre utilis es dans des contextes vari es, mais le sont habituellement dans un contexte de preuve de validit e. Autrement dit, seules des d erivations sans hypoth` eses sont consid er ees. Tout s equent apparaissant dans une telle d erivation est valide, et il est alors naturel et fr equent dintroduire cette information dans la d enition m eme de la notion de s equent. Cela signie quun s equent nest plus un objet du langage (assimilable a ` une implication) mais devient un objet du m etalangage. Dans ce cadre, la signication du s equent A, B, C D, E, F not e parfois A, B, C D, E, F est Limplication (A B C ) (D E F ) est valide. 3.3.7 Tableaux sign es vs. s equents Il y a correspondance naturelle entre les tableaux sign es et les s equents : les formules apparaissent dans lant ec edent ou dans le succ edent dun s equent selon quelles sont assert ees positivement ou n egativement dans le nud homologue du tableau (gure 24). p (q p) = F p = V, q p = F p = V, q = F p = V, p = F H p q p qp p (q p) A p p

3.4 Le raisonnement automatique


3.4.1 Introduction La logique formelle permet, comme on vient de le voir tout au long de ce chapitre, de transformer le raisonnement en un objet math ematique, susceptible d etre trait e, et m eme construit, par un ordinateur. Nous avons vu, au paragraphe 2.3.3, quun texte court mais relativement dense, pr esentant un raisonnement, pouvait e tre transform e en formules et ainsi devenir accessible a ` une analyse able et automatique.31 Un c el` ebre ouvrage de sciencection32 e voque ainsi lanalyse formelle dun tr` es compliqu e et volumineux document diplomatique . . . aboutissant a ` la conclusion que ce document e tait s emantiquement vide et que ses auteurs m eritaient, e tymologiquement du moins, leur statut de diplomate. Plus concr` etement, un livre danalyse math ematique a e t e enti` erement v eri e par ordinateur dans le cadre dun projet dintelligence articielle. Peut-on r eellement esp erer ramener ainsi le raisonnement au calcul, dans le but de lautomatiser ? 3.4.2 Digression : Leibniz et le raisonnement automatisable Leibniz avait imagin e un ratiocinator universalis, sorte de machine abstraite capable de raisonner et, dans une certaine mesure, de trancher des d ebats e pineux. Il croyait possible de repr esenter les id ees et le raisonnement dans un langage symbolique pourvu dune syntaxe et dune s emantique pr ecises. Dans une discussion, il devenait th eoriquement possible de remplacer un d ebat did ees anim e par une s eance de froid calcul dont lissue serait inconditionnellement admise par les protagonistes du d ebat. Boole et surtout Frege ont cr ee le langage symbolique r ev e par Leibniz, et la logique pr edicative est parfaitement apte a ` la repr esentation de tout type de raisonnement.33 Il y a cependant loin entre la capacit e de repr esenter un probl` eme et la capacit e de le r esoudre ; dans cette section, nous e voquons quelques aspects fragmentaires mais importants de cette question. 3.4.3 Automatiser la logique Cette question est comme beaucoup dautres : il est plus facile de lexaminer dans le cadre propositionnel que dans le cadre pr edicatif, et certaines conclusions e tablies dans le cadre propositionnel s etendront au cadre pr edicatif. Cela e tant admis, on pourrait croire quil ny a pas de question. La logique propositionnelle est en effet automatisable, puisque nous lavons effectivement automatis ee. La m ethode des tables de v erit e et celle des tableaux s emantiques par exemple, permettent danalyser tout raisonnement propositionnel, si complexe soit-il. Nous allons voir maintenant que la port ee pratique de ces m ethodes est s ev` erement limit ee par un probl` eme de dimension. En d epit de la puissance quils ont atteinte actuellement (et qui continuera a ` cro tre de longues ann ees encore), les ordinateurs ne sont pas capables danalyser, en toute g en eralit e, un probl` eme logique dune certaine taille. Consid erons par exemple le probl` eme classique consistant a ` d eterminer si un ensemble de formules est consistant ou pas.
Linformaticien dirait : able parce que compl` etement automatique . . . Foundation, dIsaac Asimov. 33 Des logiques sp eciales ont e t e et continuent a `e tre introduites pour mod eliser plus commod ement certains aspects de la connaissance mais, fondamentalement, la logique pr edicative peut pr etendre a ` luniversalit e.
32 31

F IG . 24 Un tableau s emantique sign e et une d erivation de s equent.


30 Les deux r` egles synth etiques de Modus ponens et de coupure formalisent deux modes de raisonnement omnipr esents en math ematique et dans la vie quotidienne. Le Modus ponens traduit la notion m eme de th eor` eme ou de r esultat g en eral : appliquer (A B ), cest d eduire B dans le cas o` u A est connu. La r` egle de coupure formalise le raisonnement par cas : si on inf` ere V de U quand A est vrai, et aussi quand A est faux, on inf` ere V de U en toute g en eralit e.

58

59

Si nous utilisons les tables de v erit e, et si lensemble en question comporte des occurrences de n propositions e l ementaires distinctes, il suft de construire une table de v erit e . . . qui comportera 2n lignes. Si n vaut 30, la table comportera plus dun milliard de lignes ; si n vaut 100, ce qui na rien dirr ealiste, le probl` eme est, sauf cas particulier, d enitivement hors datteinte de tout ordinateur pr esent ou a ` venir. Observons au passage que multiplier par 1 000 les performances dun ordinateur ne permet que dajouter 10 nouvelles variables propositionnelles a ` notre lexique. Il existe a priori deux moyens de contourner cet e cueil. Dune part, il est possible de d evelopper des proc edures de d ecision plus rapides que la m ethode des tables de v erit e et, dautre part, on peut essayer disoler certains types de formules et densembles de formules pour lesquels le probl` eme de la consistance pourrait se r esoudre plus rapidement. Nous avons d ej` a adopt e la premi` ere approche : la m ethode des tableaux s emantiques est souvent mais pas toujours nettement plus efcace que celle des tables de v erit e. Une analyse plus ne montrerait quand m eme que cette m ethode et, a ` des degr es divers, toutes les m ethodes connues actuellement, restent fondamentalement trop lentes. Plus pr ecis ement, dans beaucoup de cas, les performances se d egradent tr` es vite d` es que la dimension du probl` eme augmente. Une th eorie r ecemment d evelopp ee34 laisse peu de chances de progr` es signicatifs dans cette voie. La seconde approche est plus prometteuse ; nous la d eveloppons dans la suite de ce chapitre. 3.4.4 Cubes, clauses et formes normales Consid erons la table de v erit e de la gure 25, se rapportant a ` une formule inconnue X , d ependant des trois variables propositionnelles p, q et r . Peut-on reconstituer la formule sur base de la table ? Oui, a ` une e quivalence logique pr` es. La table indique que la formule est vraie dans quatre cas, correspondant aux lignes 1, 3, 5 et 6. A chaque cas correspond un cube, cest-` a-dire une conjonction de litt eraux. Par exemple, le cube correspondant a ` la ligne 6 est (p q r ), ce qui sinterpr` ete en v (p) = F, v (q ) = V et v (r ) = F. p V V V V F F F F q V V F F V V F F r V F V F V F V F X (p, q, r ) V F V F V V F F

Cette formule peut s ecrire diff eremment, et notamment (p r ) (p q ) , ou encore (p r ) (p q ) . Le point important est que toute formule, puisquelle admet une table de v erit e, est e quivalente a ` une disjonction de cubes, ce que lon appelle aussi une forme disjonctive normale. Observons aussi que la n egation dune disjonction de cubes est une conjonction de clauses, ce que lon appelle aussi une forme conjonctive normale. On obtient ais ement la forme conjonctive normale dune formule a ` partir de la forme disjonctive normale de la n egation de cette formule ; on peut aussi lobtenir directement a ` partir de la table de v erit e, en consid erant les lignes pour lesquelles la formule est fausse. Par exemple, la formule X (p, q, r ) est fausse dans quatre cas ; elle peut donc s ecrire (p q r ) (p q r ) (p q r ) (p q r ) ou encore (p q r ) (p q r ) (p q r ) (p q r ) , ce qui est une forme conjonctive normale, cest-` a-dire une conjonction de clauses ; la formule peut se simplier en (p r ) (p q ) , qui est encore une forme conjonctive normale, appel ee aussi forme clausale. Le principe de la d eduction afrme que la formule A est cons equence logique de lensemble E si et seulement si lensemble E {A} est inconsistant. Chaque formule de ce dernier ensemble est logiquement e quivalente a ` une conjonction de clauses ; si C est lensemble de toutes ces clauses, on peut dire que A est cons equence logique de E si et seulement si C est inconsistant. Le probl` eme fondamental de la logique se r esume donc a ` celui de d eterminer si un ensemble de clauses est inconsistant ou non. Remarque. Construire la table de v erit e dune formule donn ee nest g en eralement pas le moyen le plus rapide dobtenir une forme normale disjonctive ou conjonctive logiquement e quivalente a ` cette formule. 3.4.5 Clauses de Horn et ensembles de Horn Nous venons de rappeler que, pour les probl` emes dune certaine taille, lapproche automatique e tait tr` es al eatoire. Cest e tonnant, dans la mesure o` u l etre humain moyen est capable deffectuer des raisonnements logiques de grande taille avec une certaine efcacit e. Une raison a ` cela est laptitude, typique de l etre humain, a ` sadapter aux circonstances et a ` remplacer une m ethode g en erale par une approche plus sp ecique et plus rapide, du moins dans le cas particulier consid er e. Une autre raison, plus pertinente ici, est que bien souvent les formules de lensemble E , qui constituent la base de connaissance a ` partir de laquelle on va d eduire la formule A, ont une forme tr` es particuli` ere, qui se retrouve aussi dans les e nonc es math ematiques, a ` savoir (p 1 p n ) q . 61

F IG . 25 Table de v erit e dune formule inconnue La formule X est donc (logiquement e quivalente a ` ) la formule (p q r ) (p q r ) (p q r ) (p q r ) .
34

Et notamment le th eor` eme de la NP-compl etude du probl` eme de la consistance, d emontr e par Cook en 1970.

60

Les pi et q sont des propositions e l ementaires.35 La formule exprime simplement que toute interpr etation rendant vraies les propositions p1 , . . . , pn rend vraie aussi la conclusion q .36 On voit imm ediatement que cette formule est une clause, que lon peut r ecrire en p1 pn q . De m eme, la conclusion A est souvent une simple proposition, ou une conjonction de propositions, donc de lit eraux positifs. Sa n egation est une disjonction de litt eraux n egatifs. On appelle clause de Horn toute clause contenant au plus un litt eral positif. Une clause de Horn est d enie si elle comporte exactement un litt eral positif ; elle est n egative si elle nen comporte pas. Un ensemble de Horn est un ensemble de clauses de Horn. Cette notion est extr emement importante parce que, dans le cas particulier des ensembles de Horn, le probl` eme de la consistance peut se r esoudre de mani` ere efcace, en toute g en eralit e. 3.4.6 Lalgorithme de r esolution unitaire Une clause unitaire est une clause comportant un seul litt eral. Une clause unitaire peut e tre positive ou n egative. Dans la suite, sauf mention explicite du contraire, une clause unitaire est une clause unitaire positive, r eduite a ` une proposition e l ementaire. Lalgorithme de r esolution unitaire (gure 26) est un moyen simple de d eterminer si un ensemble de Horn est consistant ou inconsistant. {S := S0 } Tant que 2 S faire choisir p et c tels que p est une clause unitaire positive de S , c est une clause de S contenant p ; r := c \ {p} ; S := (S \ {c}) {r } . F IG . 26 R esolution unitaire Le principe de cet algorithme est tr` es simple. Il consiste a ` supprimer, dans les clauses dun ensemble S de clauses de Horn, tous les litt eraux n egatifs dont la proposition sous-jacente appara t comme clause unitaire, jusqu` a ce quune clause soit devenue vide, ou que plus aucune suppression ne soit possible. Dans le premier cas, on conclut a ` linconsistance, dans le second, a ` la consistance. La notation := signie devient ; ex ecuter linstruction x := x + y signie que la nouvelle valeur de x est lancienne valeur de x + y . Si c est une clause contenant p, c \ {p} est la clause obtenue en supprimant p. La clause vide, qui ne contient aucun litt eral, est repr esent ee par le symbole 2. Une clause est vraie si au moins un de ses litt eraux est vrai ; la clause vide est donc logiquement e quivalente a ` false . Si c est une clause de lensemble S ,
35 On peut consid erer que cette formule repr esente un th eor` eme math ematique, dont les pi sont les hypoth` eses et q la th` ese. 36 On observera que cette formule, m eme si elle repr esente un th eor` eme de math ematique, nest pas valide. La raison en est que dans le cadre de la logique propositionnelle, les propositions e l ementaires ne sont pas analys ees.

S \ {c} est lensemble obtenu en enlevant c de S . Si r est une clause, S {r } est lensemble obtenu en ajoutant r a ` S. La gure 27 donne un exemple dex ecution de lalgorithme, permettant de montrer que lensemble S = {p r t , q , r , t p r , t q , p q r } est inconsistant. 1. 2. 3. 4. 5. 6. 7. p r t p r t p t p t p t p p q q q q q q q r r r r r r r t t t t t t t p p p p p p p r r r r r r r t q p q r t p q r t p q r t p r t p t p t 2

F IG . 27 R esolution unitaire : un exemple positif La gure 28 donne un second exemple dex ecution de lalgorithme, permettant de montrer que lensemble S = {p r t , q , s , t p r , t q s , p q r } est consistant. 1. 2. 3. 4. 5. p p p p r t r t r t r t p r q q q q q s s s s s t t t t t p p p p p r r r r r t q s p q r t s p q r t p q r t p r t p r

F IG . 28 R esolution unitaire : un exemple n egatif La premi` ere propri et e de lalgorithme de r esolution unitaire est d etre efcace. A chaque e tape, un litt eral est enlev e donc le nombre d etapes ne peut d epasser le nombre total de litt eraux. A chaque e tape, lensemble S change (un litt eral est supprim e). Comme dhabitude, le point crucial de lanalyse de lalgorithme consiste a ` d eterminer ce qui ne change pas. Comme pr ec edemment, cest lensemble des mod` eles de S qui ne change pas. En effet, si la clause unitaire p se trouve dans S , seules les interpr etations rendant p vrai peuvent e tre des mod` eles. Soit I une telle interpr etation ; quelle que soit la clause c contenant p, on a I (c) = I (c \{p}). On a donc, apr` es chaque e tape, M(S ) = M(S0 ). En particulier, apr` es la derni` ere e tape, on a M(Sf ) = M(S0 ), si Sf d esigne l etat nal de lensemble S . Cela prouve en particulier 63

62

que S0 (lensemble de d epart, celui qui nous int eresse) est consistant si et seulement si Sf est consistant. Il se fait que d eterminer si Sf est consistant est imm ediat. En effet, il ny a que deux possibilit es : Lensemble Sf contient la clause vide, qui est inconsistante, donc Sf est inconsistant. Lensemble Sf ne contient pas la clause vide. Soit I linterpr etation qui rend vraies toutes les clauses unitaires (positives) de Sf et fausses toutes les autres propositions. Cette interpr etation rend vraies toutes les clauses unitaires, et aussi toutes les clauses non unitaires, puisque ces derni` eres contiennent au moins un litt eral n egatif dont la proposition sous-jacente est fausse par d enition de I (car cette proposition nest pas une clause unitaire, sinon elle donnerait lieu a ` une e tape suppl ementaire). On appelle base de connaissance un ensemble de clauses de Horn positives ; on appelle question une conjonction de propositions. Lalgorithme de r esolution unitaire permet de d eterminer si une question A est cons equence logique dune base de connaissance H ; ce sera le cas si lensemble H {A} est reconnu inconsistant. Remarque. On peut aussi tester lensemble H seul ; il est n ecessairement consistant puisquil ne comporte que des clauses de Horn positives.37 La d etermination de Hf permet dobtenir lensemble de toutes les propositions qui sont cons equences logiques de H ; ce sont les propositions qui apparaissent comme clauses unitaires dans Hf . Linterpr etation qui rend vraies ces propositions et seulement celles-l` a est le mod` ele canonique, ou mod` ele minimal de H . Le mod` ele minimal de lensemble trait ea ` la gure 28 est donc linterpr etation qui rend vraies les propositions q , s et t et seulement celles-l` a. Remarque. On repr esente souvent les ex ecutions de lalgorithme de r esolution unitaire sous forme arborescente ; la repr esentation correspondant a ` lex ecution de la gure 27 se trouve a ` la gure 29. Larborescence sappelle arbre de d erivation, ou arbre de r efutation dans le cas particulier o` u on d erive la clause vide. t p r p r t r t q q p q r

3.4.7 La programmation logique propositionnelle Le probl` eme de la programmation logique propositionnelle consiste a ` d eterminer si une proposition est ou nest pas cons equence logique dun ensemble de clauses de Horn d enies, appel e base de connaissance ou programme logique. Nous venons de voir que lalgorithme de r esolution unitaire est une solution g en erale et raisonnablement efcace pour ce probl` eme. Elle nest cependant pas optimale en pratique. La raison en est que, dans la plupart des cas, la base de connaissance est e norme, voire innie, et que la plupart des clauses quelle contient nont rien a ` voir avec la question particuli` ere a ` traiter. Lalgorithme de r esolution unitaire naccorde aucun r ole particulier a ` la question trait ee, dont la n egation est simplement ajout ee a ` la base de connaissance. Lalgorithme de r esolution dentr ee est une variante de lalgorithme de r esolution unitaire, dans laquelle la n egation de la question joue un r ole privil egi e. Cette variante est repr esent ee a ` la gure 30, o` u L d esigne un programme logique. { G = G0 } Tant que G = 2 faire choisir p et c tels que p G, c L et p c; G := (G \ {p}) (c \ {p}). F IG . 30 R esolution dentr ee Cet algorithme utilise une variable G, appel ee le but, dont la valeur est toujours une clause de Horn n egative ; initialement, le but est la n egation de la question. A chaque e tape, le but est transform e selon la r` egle suivante : un litt eral p du but est remplac e par (c \ {p}), o` u c est une clause de la base de connaissance, dont le litt eral positif est p. On pourrait d emontrer que lalgorithme de r esolution dentr ee est e quivalent a ` lalgorithme de r esolution unitaire. A titre dexemple, nous montrons a ` la gure 31 que la proposition p est bien cons equence logique du programme logique L = { t p r , p r t , r , t q , q } . On voit que, dans un arbre de r efutation dentr ee, il existe une branche principale unissant le but initial (ici, p) a ` la clause vide. Les branches auxiliaires sont de longueur 1 et unissent une clause dentr ee (do` u le nom de lalgorithme) a ` un but interm ediaire. 3.4.8 Prolog propositionnel Lalgorithme de Prolog est une version concr` ete de lalgorithme de r esolution dentr ee. Les clauses sont repr esent ees par des listes de litt eraux et le programme logique L est une liste de clauses. Les choix de p et c sont impos es par une strat egie tr` es simple ; p est n ecessairement la proposition correspondant au premier litt eral du but et c est la premi` ere clause de L convenable. En effet, le syst` eme Prolog essaiera, dans lordre o` u elles se pr esentent dans la liste L, toutes les clauses dont la t ete est p. Cela peut poser un probl` eme si lordre des clauses ou des litt eraux 65

t d t d t d

p t

t p r t t 3 3 3 3 d 3 3 d t 3 3 d33 t33

d d d d d d

d d d

2 F IG . 29 Arbre de r efutation unitaire pour lensemble S


37

Linterpr etation qui rend vraies toutes les propositions est donc un mod` ele de H .

64

t p r

d d d

p r t
  

r
    

  

t q
  

q
 

r t

La m ethode des tables de v erit e est peu int eressante ici car le lexique utilis e comporte quatre propositions ; la table de v erit e aurait donc seize lignes. La m ethode des tableaux s emantiques peut sappliquer ; si nous croyons que largument est correct, la racine de notre tableau sera la n egation de limplication associ ee a ` cet argument. La gure 32 repr esente ce tableau. ([(E Q) (Q A) (D A)] (E D )) [(E Q) (Q A) (D A)] , (E D ) (E Q) , (Q A) , (D A) , (E D ) (E Q) , (Q A) , (D A) , E , D
rr r rr rr

d d  d

d d  d

  

d d d

  

  

  

F IG . 31 Arbre de r efutation dentr ee pour L et p dans une clause est mal choisi. A titre dexemple, voici la version Prolog du programme logique L donn e plus haut : t :- p,r. p :- r,t. r. t :- q. q. On voit que la virgule a valeur conjonctive et que le symbole :- repr esente le connecteur (inverse de limplication). Lordre nest pas ad equat ici car la clause inutile t :- p,r. court-circuite la clause utile t :- q.. Si on omet la clause inutile, le syst` eme Prolog d etecte que la proposition p est cons equence logique du programme logique L. Nous reviendrons sur le syst` eme Prolog dans le cadre pr edicatif, qui permet des applications plus int eressantes.

E , . . . , E . . . Q , (Q A) , (D A) , E , D rr
r rr r

Q , Q , . . .

Q , A , (D A) , E , D
r rr rr

. . . , D, . . . , D

. . . , A, A, . . .

F IG . 32 Tableau s emantique, argument biblique Ce tableau est ferm e, donc largument est correct. On notera cependant que cette construction nest que marginalement moins fastidieuse que celle dune table de v erit ea ` seize lignes. Il serait souhaitable de disposer de techniques plus exp editives, non seulement pour gagner du temps, mais aussi pour limiter le risque derreur.38 En relisant attentivement la justication de la m ethode des tableaux s emantiques, on peut observer que l etiquette dun nud peut e tre remplac ee par une autre, pour peu que les deux e tiquettes admettent exactement les m emes mod` eles.39 La gure 33 donne un tableau s emantique exploitant ce principe. Les simplications successives se basent sur les faits suivants : Les ensembles {E Q , E } et {Q , E } sont logiquement e quivalents ; Les ensembles {D A , D } et {A , D } sont logiquement e quivalents ; Les ensembles {Q A , A} et {Q , A} sont logiquement e quivalents. Chacune de ces simplications a permis l economie dun branchement.40
38 On dit parfois que le taux derreur dun d eveloppement formel (non v eri e par ordinateur) est proportionnel au carr e de la taille de ce d eveloppement. . . 39 De plus, pour e viter le risque de non-terminaison, la nouvelle e tiquette ne pourra e tre plus complexe que lancienne. 40 Une autre mani` ere de justier ces simplications est dobserver que chaque couple simpliable comporte une formule disjonctive et un litt eral, et que la d ecomposition de la formule disjonctive donne lieu a ` une branche comportant le litt eral oppos e et a ` une branche comportant le couple simpli e. Le raccourci propos e consiste a ` faire l economie de la premi` ere branche, inutile puisque fermable imm ediatement.

3.5 Quelques exercices


3.5.1 Argumentation Le r ecit de la cr eation du monde. Au paragraphe 2.3.3, nous avons formalis e un argument ; les techniques pr esent ees dans ce chapitre permettent de d eterminer si cet argument est correct ou non ou, plus pr ecis ement, si largument formel correspondant est correct. Un argument formel se compose dun ensemble (ni) de pr emisses E = {P1 , . . . , Pn } et dune conclusion C ; il est dit correct si la conclusion est cons equence logique des pr emisses, ce qui s ecrit E |= C ; cela a lieu si et seulement si limplication (P1 Pn ) C est valide. Largument formel introduit au paragraphe 2.3.3 conduit donc a ` la question {E Q , Q A , D A} |= E D . 66
?

67

([(E Q) (Q A) (D A)] (E D )) [(E Q) (Q A) (D A)] , (E D ) (E Q) , (Q A) , (D A) , (E D ) (E Q) , (Q A) , (D A) , E , D Q , (Q A) , (D A) , E , D Q , (Q A) , A , E , D Q , Q , A , E , D F IG . 33 Tableau s emantique simpli e On peut aussi envisager lutilisation de la th eorie de Horn, pour tester linconsistance de lensemble compos e des pr emisses et de la n egation de la conclusion : {E Q , Q A , D A , (E D )} , qui se r ecrit en { E Q , Q A , D A , E , D } . Lune des clauses de cet ensemble comporte deux litt eraux positifs, ce qui est incompatible avec lutilisation de la th eorie de Horn. Dans le cas pr esent, on rem edie a ` ce probl` eme par , d obversion.41 On introduit donc la proposition D enie comme logiquement e quivalente a ` la formule D . Lensemble devient A, E, D }. { E Q , Q A , D Cet ensemble de Horn est bien inconsistant, comme le montre le d eveloppement de la gure 34. Croire aux fant omes ? Cest ce que nous sugg` ere le raisonnement ci-dessous, quil est prudent danalyser . . .
Si on consid` ere que les gens qui e tudient les perceptions extra-sensorielles sont honn etes, alors il faut admettre lexistence de telles perceptions. De plus, si lon met a ` l epreuve lexistence des perceptions extra-sensorielles, on se doit de consid erer s erieusement la doctrine de la clairvoyance. Admettre lexistence des perceptions extra-sensorielles doit nous pousser a ` mettre celles-ci a ` l epreuve et a ` les expliquer.
41 Lobversion consiste a ` introduire ou a ` supprimer une n egation dans une phrase sans en changer le sens. Par exemple, la phrase Tout ensemble contenant une paire compl ementaire de litt eraux est inconsistant devient par obversion Aucun ensemble contenant une paire compl ementaire de litt eraux nest consistant.

1. 2. 3. 3. 4.

E Q Q Q Q 2

Q A Q A Q A Q Q

A D A D A A A

E E E E E

D D D D D

F IG . 34 R esolution unitaire : argument biblique


La doctrine de la clairvoyance doit e tre consid er ee s erieusement si on est pr et a ` consid erer s erieusement les ph enom` enes occultes. Et si on est pr et a ` consid erer s erieusement ces ph enom` enes, nous devrons respecter les m ediums. Aussi, si nous respectons ces gens, nous devrons aussi prendre au s erieux leur pr etendue aptitude a ` communiquer avec les morts. Enn, si nous devons prendre au s erieux cette aptitude a ` communiquer avec les morts, on ne peut que croire aux fant omes. Consid erer que les gens qui e tudient les perceptions extra-sensorielles sont honn etes nous oblige donc a ` croire aux fant omes.

On utilise le lexique suivant : hon on consid` ere que les gens qui e tudient les perceptions extra-sensorielles sont hon n etes ; adm on adm et lexistence des perceptions extra-sensorielles ; epr on met a ` le preuve lexistence des perceptions extra-sensorielles ; cla on consid` ere s erieusement la doctrine de la cla irvoyance ; exp on cherche a ` exp liquer les perceptions extra-sensorielles ; occ on consid` ere s erieusement les ph enom` enes occ ultes ; med on respecte les m ed iums ; com on prend au s erieux laptitude des m ediums a ` com muniquer avec les morts ; fan on croit aux fan t omes. Les pr emisses sont, pour le premier paragraphe, hon adm , epr cla , adm (epr exp ) ; celles du second paragraphe sont cla occ , occ med , med com , com fan . La conclusion (dernier paragraphe) est hon fan . Les proc ed es utilis es pour r esoudre le probl` eme du r ecit biblique sappliquent e galement a ` ce probl` eme ; nous consid erons ici seulement la r esolution unitaire. La pr emisse adm (epr exp ) nest pas une clause, mais est logiquement e quivalente a ` la conjonction des deux 69

68

clauses adm epr et adm exp ; de m eme, la n egation de la conclusion hon fan nest pas une clause, mais est logiquement e quivalente a ` la conjonction des deux clauses hon et fan . On obtient ainsi le d eveloppement de la gure 35, dans laquelle les clauses (de Horn) ont gard e leur forme implicative.

1. 2. 3.

hon adm , epr cla , adm epr , adm exp cla occ , occ med , med com , com fan , hon , 2. adm , epr cla , adm epr , adm exp cla occ , occ med , med com , com fan , hon , 3. adm , epr cla , epr , exp cla occ , occ med , med com , com fan , hon , 4. adm , cla , epr , exp cla occ , occ med , med com , com fan , hon , 1. F IG . 35 R esolution unitaire : croire au fant omes ?

fan fan fan fan

4. 5. 6. 7. 8. 9.

hon adm , epr cla , adm epr , adm exp cla occ , occ med , med com , com fan , hon , fan adm , epr cla , adm epr , adm exp cla occ , occ med , med com , com fan , hon , fan adm , epr cla , epr , exp cla occ , occ med , med com , com fan , hon , fan adm , cla , epr , exp cla occ , occ med , med com , com fan , hon , fan adm , cla , epr , exp occ , occ med , med com , com fan , hon , fan adm , cla , epr , exp occ , med , med com , com fan , hon , fan adm , cla , epr , exp occ , med , com , com fan , hon , fan adm , cla , epr , exp , occ , med , com , fan , hon , fan adm , cla , epr , exp , occ , med , com , fan , hon , 2 F IG . 36 Argument Croire au fant omes ? corrig e

On voit imm ediatement que lobtention de la nouvelle clause unitaire cla ne permet pas de progresser, car lunique autre occurrence de cla est positive, dans la pr emisse cla occ . Cependant, si la pr emisse
La doctrine de la clairvoyance doit e tre consid er ee s erieusement si on est pr et a ` consid erer s erieusement les ph enom` enes occultes.

e tait remplac ee par la pr emisse


La doctrine de la clairvoyance doit e tre consid er ee s erieusement seulement si on est pr et a ` consid erer s erieusement les ph enom` enes occultes.

Cependant, lhypoth` ese A |= B e limine les cas A = V , B = F, ce qui ne laisse subsister que douze lignes. La table compl` ete est repr esent ee a ` la gure 37 ; on en d eduit imm ediatement les solutions : 2. C2 |= D2 et D2 |= C2 ; 1. C1 |= D1 et D1 |= C1 ;

ou encore, ce qui revient au m eme, par la pr emisse


Si la doctrine de la clairvoyance est consid er ee s erieusement, alors on doit aussi consid erer s erieusement les ph enom` enes occultes.

la clause cla occ serait remplac ee par la clause cla occ ; cela rendrait largument correct, comme le montre le d eveloppement de la gure 36. On voit toute limportance quun seul mot peut avoir dans un texte . . . 3.5.2 Analyse de formules Soient A, B, X, Y des formules. On suppose A |= B . Dans les quatre cas suivants, peut-on afrmer Ci |= Di et/ou Di |= Ci ? 1. C1 =def X (A Y ) et D1 =def X (B Y ) ; 2. C2 =def (X A) Y et D2 =def (X B ) Y ; 3. C3 =def (X A) Y et D3 =def (X B ) Y ;

Remarque. Il se peut que, pour des choix particuliers de A, B, X, Y , on ait Ci |= Di et/ou Di |= Ci m eme si cest faux dans le cas g en eral. Plus concr` etement, le r esultat n egatif C1 |= D1 que nous venons dobtenir signie que pour certains choix des formules A, B, C, D, la condition A |= B ne garantit pas C1 |= D1 ; cest le cas notamment si A et Y sont identiquement vraies et si B et X sont identiquement fausses. Cela nexclut pas que, pour dautres choix (par exemple celui o` u les quatre formules sont identiquement vraies), C1 |= D1 puisse avoir lieu. En revanche, tout r esultat positif, tel D1 |= C1 ou C4 |= D4 , sentend pour tous les choix de formules compatibles avec lhypoth` ese. Dans le m eme ordre did ee, rappelons que les e nonc es |= (A B ) et |= (A B ) ne sont pas e quivalents : le second (qui garantit la validit e de A et linconsistance de B ) est nettement plus fort que le premier. La m ethode des tableaux s emantiques est e galement utilisable ici. A titre dexemple, le tableau de la gure 38 montre la consistance de la formule (A B ) (D2 C2 ), ce qui e tablit le r esultat n egatif D2 |= C2 . Il convient de souligner que les m ethodes des tables de v erit e et des tableaux s emantiques sont toujours utilisables, mais rarement optimales. Dans le cas pr esent, on peut arriver aux conclusions plus rapidement, en notant qua priori il est e vident que certaines interpr etations 71

4. C4 |= D4 et D4 |= C4 .

3. C3 |= D3 et D3 |= C3 ;

4. C4 =def X ((A (B A)) Y ) et D4 =def X ((B (A B )) Y ) . Comme toujours, la m ethode des tables de v erit e peut e tre utilis ee. En principe, puisque les formules C et D d ependent des quatre formules A, B, X, Y , seize lignes sont n ecessaires. 70

(A B ) ([(X B ) Y ] [(X A) Y ])

A V V V V F F F F F F F F

B V V V V V V V V F F F F

X V V F F V V F F V V F F

Y V F V F V F V F V F V F

C 1 D1 V V F F V V V V V V V F V V V V V V V V V V V V

C 2 D2 V V V V V V V V V V F V V V V V V V F F V V V V

C 3 D3 V V F F V V V V V V V F V V F V V V V V V V F F

C 4 D4 V V F F F F V V V V F F F F V V V V F F F F V V

(A B ) , ([(X B ) Y ] [(X A) Y ]) (A B ) , [(X B ) Y ] , [(X A) Y ] (A B ) , [(X B ) Y ] , (X A) , Y


r rr rr rr rr rr r r rr rr r rr r

(A B ) , [(X B ) Y ] , X , A , Y

A , [(X B ) Y ] X , A , Y

r r rr rr r rr r

B , [(X B ) Y ] X , A , Y

F IG . 37 Analyse de formules par table de v erit e rendent Ci et Di logiquement e quivalentes. De telles interpr etations ne doivent naturellement pas e tre e tudi ees, puisque nous cherchons a ` mettre en e vidence les differences s emantiques entre les deux formules. Par exemple, C1 et D1 sont toujours vraies (et donc logiquement e quivalentes) d` es que X est fausse ou que Y est vraie ; le probl` eme relatif a ` C1 et D1 peut donc se r eduire au probl` eme relatif a ` C1 =def A et D1 =def B , puisque C1 se r eduit a ` C1 , et D1 se r eduit a ` D1 d` es que X est vraie et que Y est fausse. Dans le m eme ordre did ee, on note que les formules A (B A) et B (A B ) sont identiquement vraies (valides). En fait, le probl` eme initial se r eduit de la sorte au probl` eme concernant les paires suivantes :
1. C1 =def A et D1 =def B ; 2. C2 =def A et D2 =def B ; 3. C3 =def (X A) et D3 =def (X B ) ;

A , (X B ) X , A , Y

A , X X , A , Y

A , B X , A , Y

A , Y X , A , Y

B , (X B ) X , A , Y

B , X X , A , Y

B, Y X , A , Y

B, B X , A , Y

F IG . 38 Tableau s emantique : D2 |= C2 On introduit les propositions a, b, c, d, e pour mod eliser la pr esence e ventuelle de A, B , C , D , E , respectivement. Le coffre peut e tre ouvert dans toute situation v eriant la formule =def (a b) (a c) (b d e) . En utilisant la r` egle de distributivit e de la disjonction sur la conjonction, on voit que est logiquement e quivalente a ` la conjonction des 12 clauses suivantes : (a a b) , (b a b) , (a c b) , (b c b) , (a b) , (a b) , (a c b) , (b c ) , (a a d ) , (b a d ) , (a c d ) , (b c d ) , (a d ) , (b a d ) , (a c d ) , (b c d ) , (a a e) , (b a e) , (a c e) , (b c e) . (a e) , (b a e) , (a c e) , (b c e) .

Cette simplication du probl` eme rend les r esultats e vidents. Enn, notons que le tableau s emantique de la gure 38 pouvait e tre simpli e, comme dans le cas de largument biblique ; le r esultat est donn ea ` la gure 39. On notera lemploi dune nouvelle r` egle de simplication : la paire {(A B ) , A} est r ecrite en le singleton {A}, ces deux ensembles e tant logiquement e quivalents. 3.5.3 Probl` emes Le coffre partag e. Cinq personnes (A, B , C , D , E ) ont des e conomies en commun dans un coffre. Nayant pas conance lune en lautre, elles d ecident que le coffre ne pourra souvrir quen pr esence de A et B , ou de A et C , ou de B , D et E . Combien de serrures le coffre doit-il avoir ? Combien faut-il de cl es et a ` qui les donne-t-on ? 72

4. C4 =def X Y et D4 =def X Y .

On peut omettre les r ep etitions de litt eraux au sein dune clause, ce qui simplie les clauses en

De plus, si une clause (vue comme un ensemble de litt eraux) en contient une autre, la clause contenante peut e tre omise ; seules quatre clauses subsistent : 1 : (a b) , 2 : (a d) , 3 : (a e) , 4 : (b c) . 73

(A B ) ([(X B ) Y ] [(X A) Y ]) (A B ) , ([(X B ) Y ] [(X A) Y ]) (A B ) , [(X B ) Y ] , [(X A) Y ] (A B ) , [(X B ) Y ] , (X A) , Y (A B ) , (X B ) , (X A) , Y (A B ) , (X B ) , X , A , Y (X B ) , X , A , Y B , X , A , Y

On observe que si la r eponse fournie est oui, le voisin de gauche nest jamais Z ; cest donc a ` lui que lon sadressera pour les deux questions suivantes. de m eme, si la r eponse fournie est non, cest au voisin de droite, qui nest jamais Z, que lon sadressera. Dans les deux cas, on posera ensuite une question dont on conna t la r eponse, par exemple Etes-vous Monsieur Z ?, qui identiera ce nouvel interlocuteur (X si non, Y si oui). La troisi` eme question, Votre voisin de gauche est-il Monsieur Z ?, permettra de compl eter les identications. Lenqu ete polici` ere. Cinq suspects (A, B, C, D et E) sont interrog es a ` propos dun crime. Voici leurs d eclarations : A: B: C: D: E: C et D mentent. A et E mentent. B et D mentent. C et E mentent. A et B mentent.

F IG . 39 Tableau s emantique simpli e : D2 |= C2 Ceci montre quune solution a ` quatre serrures (1, 2, 3, 4) convient, avec la distribution de cl es suivante : A : 1, 2, 3 ; B : 1, 4 ; C : 4 ; D : 2 ; E : 3 . Penser ou payer ! Vous entrez dans un pub e cossais et le barman vous dit : Vous voyez ces trois hommes ? Lun deux est Monsieur X, qui dit toujours la v erit e, un autre est Monsieur Y, qui ment toujours, et le troisi` eme est Monsieur Z, qui r epond au hasard sans e couter les questions. Vous pouvez poser trois questions (appelant une r eponse par oui ou non), en indiquant chaque fois lequel des trois doit r epondre. Si apr` es cela vous pouvez identier correctement ces messieurs, ils vous offrent un whisky !. Comment vous y prenez-vous ? Il est clair que les r eponses de Monsieur Z sont sans int er et, aussi une bonne tactique consistera a ` rep erer dabord quelquun qui nest pas Monsieur Z ; cela peut se faire au moyen dune question bien choisie. Cest a ` ce quelquun que lon posera les deux derni` eres questions. On pose a ` lun des hommes (I) la question Votre voisin de gauche (G) est-il plus menteur que votre voisin de droite (D) ? Examinons, pour les six dispositions possibles, la r eponse fournie, e tant entendu que Y est plus menteur que Z, lui-m eme plus menteur que X : I X X Y Y Z Z G D Y Z X Z X Y Z Y Z X Y X R eponse exacte oui non non oui non oui R eponse fournie oui non oui non oui/non oui/non

Que peut-on en d eduire ? Si x signie X dit la v erit e, on peut mod eliser les d eclarations en les formules A: B: C: D: E: a b c d e (c d) (a e) (b d) (c e) (a b)

Remarque. On pourrait imaginer dautres interpr etations des d eclarations, et donc dautres mod elisations. Supposons que A dise la v erit e ; ceux qui disent le contraire ont donc menti et on en d eduit A: B: C: D: E: c, d b c d d c e

On obtient une contradiction, ce qui montre que A a menti. La situation est donc A: B: C: D: E: a, c d b e c (b d) d (c e) e b

74

75

Si B a menti, on obtient a, c d, b, e, c, d

Si B dit la v erit e, on obtient a, c d, b, e, c, d.

En conclusion, A est certainement menteur mais, pour les quatre autres suspects, il y a deux possibilit es : B et D disent la v erit e et C et E mentent, ou B et D mentent et C et E disent la v erit e.

3.6 La m ethode de r esolution


La m ethode de r esolution est la technique de preuve la plus souvent utilis ee dans les programmes de d emonstration automatique ; elle intervient souvent, sous une forme ou sous une autre, dans les programmes dintelligence articielle. Cette m ethode op` ere par r efutation : elle permet de d emontrer la validit e de A en d emontrant linconsistance de A. Plus g en eralement, pour d emontrer E |= A, on prouve linconsistance de E {A}. On peut appliquer la m ethode de r esolution a ` nimporte quel ensemble de formules mais, comme pour les m ethodes vues ant erieurement, il est plus simple de se limiter a ` un certain type de formules, appel ees formes clausales. 3.6.1 Formes normales Formes normales en alg` ebre. Lexpression (x2 4x)(x + 3) + (2x 1)2 + 4x 19 est un polyn ome, mais ses propri et es ne sont pas directement apparentes. On souhaitera donc normaliser le polyn ome, cest-` a-dire trouver un polyn ome e quivalent (en fait, e gal) mais de forme plus agr eable. Le type de forme normale ou de forme canonique choisi d ependra des propri et es que lon souhaite mettre en e vidence et/ou utiliser, et aussi de lexistence et de lefcacit e de lalgorithme de recherche de la forme choisie. On a notamment les formes suivantes : x3 + 3x2 12x 18 (x 3)(x + 3 3)(x + 3 + 3) (somme de mon omes de degr es d ecroissants) ; (produit de facteurs du premier degr e) ; (forme de Horner).

p V V V V F F F F

q V V F F V V F F

r V F V F V F V F

pq V V F F V V V V

(p q ) r V F V V V F V F

( p q ( p q ( p q (p q (p q

r) r) r ) r) r)

F IG . 40 Table de v erit e et forme normale disjonctive. Remarque. Dans ce contexte, les connecteurs 0-aires true et false ne sont pas utilis es. On observe imm ediatement quun cube est inconsistant si et seulement sil contient une paire compl ementaire de litt eraux ; de plus, le cube vide est le seul cube valide. Une forme normale disjonctive est inconsistante si et seulement si tous ses cubes sont inconsistants. En particulier, la forme normale disjonctive vide est inconsistante. Forme normale conjonctive. Une clause est une disjonction de litt eraux. Une telle formule est parfois repr esent ee par la notation ensembliste {i : i = 1, . . . , n}, voire {i : i = 1, . . . , n}.43 esenter le cube p q r ou la clause Remarque. Selon le contexte, la notation pqr peut repr p q r . Cette notation compacte mais ambigu e est a `e viter. La seule clause inconsistante est la clause vide, repr esent ee par F ou par 2. (On nutilise pas les connecteurs true et false.) Une clause est valide si et seulement si elle comporte une paire compl ementaire de litt eraux. Une clause unitaire est une clause compos ee dun seul litt eral. Une forme normale conjonctive (FNC, ou CNF pour Conjunctive Normal Form) est une conjonction de clauses, cest-` a-dire une conjonction de disjonctions de litt eraux. Voici un exemple et un contre-exemple : (p q r ) (q r ) (r ) CNF (p q r ) (q r ) (r ) non CNF Une forme normale conjonctive est valide si et seulement toutes ses clauses sont valides. En particulier, la forme normale conjonctive vide est valide. Toute formule du calcul des propositions peut e tre transform ee en une forme normale conjonctive e quivalente. Rappel. Les clauses, cubes et formes normales sont des formules ; on les traite souvent comme des ensembles (conjonctifs ou disjonctifs) mais ces ensembles sont toujours nis. Int er et des formes normales. Une forme normale doit e tre, id ealement assez g en erale pour que chaque formule soit r eductible a ` une forme normale e quivalente,
43

[(x + 3)x 12]x 18

Les formules propositionnelles, comme les polyn omes, peuvent prendre diverses formes normales ; nous en introduisons ici deux. Forme normale disjonctive. La gure 40 montre quune formule est toujours e quivalente a ` une disjonction de conjonctions de litt eraux. On appelle forme normale disjonctive (FND) toute disjonction de conjonctions de litt eraux. Toute formule est donc e quivalente a ` une FND. Remarque. Il sagit de disjonctions et de conjonctions g en eralis ees, cest-` a-dire a ` nombre quelconque (mais ni) de termes.42 Un cube est une conjonction de litt eraux, cest-` a-dire une formule (1 2 n ) , u les i sont des litt eraux. On e crit parfois {1 , . . . , n }, ou i i , ou simplement (n ) , o` { 1 , . . . , n } .
42

Il faut se m eer de cette derni` ere notation : une clause est un ensemble disjonctif de litt eraux.

NB :

false ,

true ,

{A} A

{A} ,

{A, B } A B ,

{A, B } A B .

76

77

aussi restrictive que possible, pour que les algorithmes qui traitent les formes normales soient plus simples que les algorithmes g en eraux. Des formes normales conjonctives ou disjonctives distinctes peuvent e tre e quivalentes. Exemple. La forme normale disjonctive (p q r ) (p q r ) (p q r ) (p q r ) (p q r ) se simplie en (p r ) (q r ) (q r ) Algorithme de normalisation. On ne consid` ere que la forme normale conjonctive. 2. Utiliser les lois de De Morgan pour propager les occurrences de vers lint erieur. (A B ) (A B ) (A B ) (A B ) 3. Eliminer les doubles n egations. A A 4. Utiliser les lois de distributivit e de par rapport a ` pour e liminer des disjonctions. A (B C ) (A B ) (A C ) (A B ) C (A C ) (B C ) Une formule en forme conjonctive normale e quivaut a ` un ensemble (conjonctif) de clauses ; on dit aussi forme clausale. Exercice. Comment obtenir une forme disjonctive normale e quivalente a ` A au d epart dune forme conjonctive normale e quivalente a ` A ? Exemple de normalisation. On r ecrit la formule (p q ) (p q ) en forme conjonctive normale. (p q ) (p q ) (p q ) (p q ) (p q ) (p q ) (p q ) (p q ) (p p q ) (q p q ) ( elimination ) (propagation ) (double n egation) (distributivit e) 1. Eliminer les connecteurs autres que , , .

Algorithme de normalisation (variante). Une variante int eressante de lalgorithme de normalisation est repr esent ee a ` la gure 41. La donn ee manipul ee est un ensemble conjonctif L de disjonctions g en eralis ees. Initialement, lunique e l ement de L est la formule donn ee A (vue comme une disjonction g en eralis ee a ` un terme). La valeur nale de L est une FNC e quivalente a ` A. On appelle non-clause toute disjonction (g en eralis ee) dont au moins un terme nest pas un litt eral. La preuve de terminaison est analogue a ` celle pour la construction des tableaux s emantiques. La valeur nale de L est lensemble de clauses cherch e. Remarque. Cet algorithme nest quune reformulation de lalgorithme pr ec edent. Lint er et est li ea ` la m ethode de r esolution vue plus loin. L := {A} ; Tant que L comporte une non-clause faire { L A est invariant } choisir une non-clause D L ; choisir un non-litt eral t D ; si t = t faire D := (D t) + t ; { D D } L := (L \{D }) {D } si t = faire t1 := 1 ; t2 := 2 ; D1 := (D t) + t1 ; D2 := (D t) + t2 ; { D D1 D2 } L := (L \{D }) {D1 , D2 } si t = faire t1 := 1 ; t2 := 2 ; D := ((D t) + t1 ) + t2 ; { D D } L := (L \{D }) {D } F IG . 41 Algorithme de normalisation. Exemple de normalisation (variante) 1. 2. 3. 4. 5. {(p q ) (p q )} {(p q ) (p q )} {(p q ) p q } {p p q , q p q } {p p q , q p q } Init , 1 , 2 , 3 , 4

Une forme normale conjonctive de (p q ) (p q ) est (p p q ) (q p q ) . Une forme plus simple est p q .

La forme normale requise est donc (p p q ) (q p q ) . Elle se simplie en (p q ) (p q ) , et puis en p q . Simplications des formes clausales. Les formes clausales ou ensembles conjonctifs de clauses fournis par lalgorithme de normalisation peuvent souvent e tre simpli es.

78

79

1. On peut supprimer les r ep etitions de litt eraux au sein dune m eme clause. Exemple : (p q p) (r p) (p q ) (r p). 2. Les clauses valides (elles contiennent une paire compl ementaire de litt eraux) peuvent e tre supprim ees. Exemple : (p q p) (r p) (r p). 3. Une clause contenant une autre clause peut e tre supprim ee. Exercice : justier la r` egle. Exemple : (r q p) (p r ) (p r ). Ces simplications e l ementaires sont faciles a ` mettre en uvre mais ne conduisent pas a ` une forme normale unique. Par exemple, elles ne permettent pas de r eduire (p q ) q en p q . 3.6.2 La r` egle de r esolution D enition. On sait quun ensemble de clauses S est inconsistant si et seulement si S |= 2. (2 est la clause vide qui d enote false.) Cela sugg` ere de montrer linconsistance de S en essayant de d eriver 2 (false) a ` partir de S , au moyen dun m ecanisme ad equat. Soient A, B, X des formules et soit v une interpr etation. Supposons v (A X ) = V et v (B X ) = V. Si v (X ) = V, alors v (B ) = V et donc v (A B ) = V. Si v (X ) = F, alors v (A) = V et donc v (A B ) = V. En conclusion, {(A X ), (B X )} |= (A B ).

2. Soient C1 = (C1 p) et C2 = (C2 p) ; si S |= C1 et S |= C2 , alors S |= C1 C2 .

La premi` ere condition est e vidente, la seconde est une cons equence de l enonc e { (A X ), (B X )} |= (A B ) , valable quelles que soient les formules A, B et X . Remarque. On d eduit de ceci que les ensembles S et S R sont logiquement e quivalents, pour tout ensemble S de clauses. 3.6.3 Compl etude de la m ethode de r esolution Introduction. Si S est un ensemble de clauses, si A est une clause et si S |= A, a-t-on n ecessairement S R A ? La r eponse est clairement n egative : on a {p, p} |= q , mais on na pas {p, p} R q . Cela nest pas g enant, dans la mesure o` u on ne cherchera pas a ` utiliser la r esolution pour e tablir directement S |= A, mais plut ot S, A |= 2. On d emontrera et utilisera le th eor` eme suivant. Th eor` eme. Si S |= 2, alors S R 2. Cette compl etude affaiblie (cas particulier o` u la clause a ` d eriver est toujours la clause vide) est aussi puissante que la compl etude usuelle (non satisfaite ici) puisquon peut toujours se ramener au cas particulier. Cest pourquoi la compl etude affaiblie est nomm ee simplement compl etude. Arbre s emantique. Soient S une formule ou un ensemble (conjonctif) de formules et (p1 , p2 , . . .) une e num eration de S , lensemble (ni ou d enombrable) des propositions pr esentes dans S . Larbre s emantique de S est un arbre binaire complet dont toutes les branches de gauche de niveau i sont e tiquet ees par pi et toutes les branches de droite de niveau i sont e tiquet ees par pi .

Cette r` egle tr` es simple est appel ee r` egle de r esolution dans le cas o` u X est une proposition et o` u A, B sont des clauses. Avec la notation habituelle, on l ecrit A X , B X AB

Fermeture par r esolution. On d enit par induction la relation R (que nous noterons simplement ) entre un ensemble de clauses et une clause ; cest la plus petite relation v eriant les deux conditions suivantes : 1. Si C S , alors S C . 2. Soient C1 = (C1 p) et C2 = (C2 p) ; si S C1 et S C2 , alors S C1 C2 . Les deux clauses C1 et C2 sont dites r esolvables (par rapport a ` p) ; leur r esolvante est la clause res (C1 , C2 ) =def C1 C2 . Si S est un ensemble de clauses, S R d enote la fermeture de S par r esolution, cest-` a-dire le plus petit sur-ensemble de S contenant les r esolvantes de ses e l ements. On a S R = {C : S C } = {C : S R C }. Ad equation de la r` egle de r esolution. Soient S un ensemble de clauses et C une clause. On doit montrer que si S C , alors S |= C . Il suft de montrer que la relation |= (restreinte aux ensembles de clauses et aux clauses) v erie les deux conditions d enissant la relation R : 1. Si C S , alors S |= C . 80

Larbre s emantique de S d ecrit toutes les interpr etations possibles de S . Chaque chemin C dans larbre allant de la racine a ` un nud n de niveau i d enit un ensemble de propositions, soit (n) = {p1 , . . . , pi } ; une interpr etation pour cet ensemble de propositions, soit vn ; on a vn (pk ) = V si pk C et vn (pk ) = F si pk C . Exemple. Soit S = {p q, p r, q r, p} , un ensemble de clauses. Le lexique S est {p, q, r }. Un arbre s emantique relatif a ` ce lexique est donn ea ` la gure 42. Larbre est ni puisque S est ni. Comme S est inconsistant, chaque feuille peut e tre e tiquet ee par une clause fausse pour linterpr etation correspondante. Preuve de compl etude dans le cas ni. Soit S inconsistant et ni ; on doit prouver S 2. Comme dhabitude, on souhaite une preuve constructive, cest-` a-dire un moyen effectif dobtenir 2 au d epart de S , par applications r ep et ees de la r` egle de r esolution. 81

p q r
p

p q r
p

q r
p

q r
pq

Si p Cn1 et p Cn2 : vn1 (Cn1 ) = F implique Cn1 = Cn p et vn2 (Cn2 ) = F implique Cn2 = Cn p. 1 2 On pose Cn = Cn1 Cn2 = res p (Cn1 , Cn2 ). Dans les deux cas, on a Cn S R et Cn (n) et vn (Cn ) = F. Ceci ach` eve la d emonstration du cas ni. Un exemple d etiquetage complet de larbre s emantique est donn ea ` la gure 43.

r
p

r
q r

r
pr

r
pq p

p q
p p q

p q r r r

F IG . 42 Arbre s emantique montrant linconsistance dun ensemble de clauses.


p

q r r

q r

pq

Soit A un arbre s emantique pour S . Chaque chemin dans cet arbre allant de la racine a ` un nud n d enit un ensemble de propositions (n) et une interpr etation vn pour cet ensemble ; vn rend vrais les litt eraux e tiquetant le chemin. S est inconsistant, donc S est falsi e par toutes les interpr etations d enies par les feuilles de A. Par cons equent, a ` chaque feuille f de larbre correspond au moins une clause Cf S telle que Cf (f ) = S et vf (Cf ) = F . (Cf est lensemble des propositions intervenant dans Cf .) La feuille f est e tiquet ee Cf . Soit S R = S {C : S C }. On va montrer quil est possible d etiqueter chaque nud int erieur n de larbre au moyen dune clause Cn S R telle que Cn (n) S et vn (Cn ) = F.

q r

pr

pq

pq

F IG . 43 Arbre s emantique montrant linconsistance dun ensemble de clauses.

Compl etude dans le cas inni, preuve indirecte. mais, vu le th eor` eme de compacit e, le r esultat

On a jusquici suppos e que S e tait ni

2 S R ssi S est inconsistant reste valable si S est inni. En effet, si S est inconsistant, il admet un sous-ensemble ni Sf R inconsistant ; on en d eduit 2 Sf , do` u a fortiori 2 S R . Compl etude dans le cas inni, preuve directe. Prouver directement ce r esultat revient a ` donner une autre preuve, moins abstraite, du th eor` eme de compacit e. On se limite au cas habituel o` u le lexique est un ensemble d enombrable. Larbre s emantique correspondant A comporte une innit e de branches, elles-m emes innies. A chaque nud n on associe vn comme pr ec edemment ; le nud n est un nud- echec sil existe Cn S telle que vn (Cn ) = F.

De cette mani` ere, on aura au noeud racine r une clause Cr S R telle que Cr (r ) et vr (Cr ) = F.

Or comme (r ) = et vr (Cr ) = F, on aura n ecessairement Cr = 2. L etiquetage se fait en remontant des feuilles vers la racine. Soit une paire de nuds n1 , n2 de larbre ayant un nud p` ere n commun tel que (n1 ) = (n2 ) = (n) {p}. On suppose Cn1 S R et Cn1 (n1 ) et vn1 (Cn1 ) = F

On obtient larbre B en e laguant A, de telle sorte que les feuilles de B soient des nudse checs et que les nuds int erieurs ne le soient pas. (Les feuilles de B ne sont pas n ecessairement toutes au m eme niveau.) Lensemble S e tant inconsistant, toutes les branches de B sont nies. Un arbre binaire dont toutes les branches sont nies est n ecessairement ni (cest un cas particulier du classique lemme de K onig, dont nous (re)verrons la d emonstration au paragraphe suivant). On applique a ` B la technique d etiquetage introduite pour le cas ni. Lensemble S0 S des clauses R associ ees aux feuilles de B est donc tel que 2 S0 , et S0 est un sous-ensemble ni 83

Cn2 S R et Cn2 (n2 ) et vn2 (Cn2 ) = F L etiquette Cn de n sera Cn1 ou Cn2 ou res (Cn1 , Cn2 ) et ne contiendra ni p ni p ; cela sugg` ere la politique de choix suivante : Si p Cni pour i = 1 ou 2, alors Cn = Cni . 82

inconsistant de S . On a donc prouv e que tout ensemble inconsistant de clauses construit au moyen dun lexique d enombrable admet un sous-ensemble ni inconsistant. Toute formule e tant logiquement e quivalente a ` un ensemble (conjonctif) de clauses, on a en fait d emontr e que tout ensemble inconsistant de formules construit au moyen dun lexique d enombrable admet un sous-ensemble ni inconsistant. Lemme de K onig. D enition. Un arbre ni est un arbre comportant un nombre ni de nuds. Un arbre est nitaire si chaque nud a un nombre ni de ls. Lemme. Tout arbre inni nitaire a au moins une branche innie. D emonstration. Consid erons un arbre inni nitaire. Soit n0 sa racine. Larbre est inni, donc n0 a un nombre inni de descendants. Larbre est nitaire, donc n0 a un descendant direct, soit n1 , qui a un nombre inni de descendants. De m eme, n1 doit avoir un descendant direct, soit n2 , qui a un nombre inni de descendants. On peut it erer ind eniment ; on obtient ainsi la branche innie n0 , n1 , n2 , . . . 3.6.4 Proc edure de r esolution Si S est un ensemble de clauses, on note MS lensemble des mod` eles de S . Lensemble S est inconsistant si et seulement si MS = . Lalgorithme repr esent ea ` la gure 44 met en uvre la v erication dinconsistance par r esolution. S := S0 ; (S0 est un ensemble de clauses) {MS = MS0 } Tant que 2 S , r ep eter : choisir p S , C1 = (C1 p) S , C2 = (C2 p) S ; S := S {res (C1 , C2 )} {MS = MS0 } F IG . 44 Proc edure de r esolution. Remarque sur linvariant de boucle. Ajouter a ` S des cons equences logiques de ses e l ements ne change pas lensemble MS des mod` eles de S . Remarque sur la proc edure de choix. On admet quaucune paire de clauses r esolvables ne peut e tre choisie plus dune fois ; cela garantit la terminaison puisquun lexique de n propositions donne lieu a ` 3n clauses distinctes non valides. Le programme peut se terminer normalement (garde falsi ee) ou anormalement (plus de choix possible). Terminaison normale. Si la garde devient fausse, la valeur nale Sf v erie MSf = MS0 et 2 Sf , ce qui implique linconsistance de Sf et de S0 . Terminaison anormale. Si toutes les r esolvantes ont e t e calcul ees sans produire 2, on a MSf = MS0 et 2 Sf . Cela implique la consistance de Sf et de S0 . Remarque. Une d erivation de 2 (false) a ` partir de S est appel ee une r efutation de S . 84

Exemples de r efutations.

Soit S lensemble des quatre clauses suivantes : 1. 2. 3. 4. pq pr q r p

Cet ensemble est inconsistant ; il admet au moins une r efutation. Comme souvent, il en existe plusieurs, telles que 5. 6. 7. 8. q r q 2 (1, 4) (2, 4) (3, 6) (5, 7) 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. p r q p q r p r q r q 2 (1, 3) (1, 4) (2, 3) (2, 4) (2, 5) (3, 6) (3, 8) (4, 5) (4, 7) (4, 9)

Soit S lensemble des deux clauses suivantes : 1. p 2. p q La seule d erivation possible est 3. q (1, 2) qui ne produit pas la clause vide. Lensemble est donc consistant. Soit S lensemble des trois clauses suivantes : 1. p 2. p q 3. q On obtient imm ediatement la r efutation 4. q (1, 2) 5. 2 (3, 4) qui prouve linconsistance de lensemble. Efcacit e de la r esolution. On sait que lalgorithme de r esolution est correct et se termine toujours, mais est-il efcace ? M eme si on e vite de produire plusieurs fois la m eme r esolvante, il est clair que le nombre de clauses produites peut e tre exponentiel en la taille de S (ou en la taille du lexique S ). La plupart du temps, lemploi dune strat egie adapt ee permet dobtenir une efcacit e acceptable (dans le cas o` u lensemble de d epart est inconsistant). On peut cependant construire des cas pathologiques pour lesquels aucune strat egie efcace nexiste. 85

3.7 Exercice de r ecapitulation


Soit A la formule [(p q ) (r s)] [(p (r s)) (q (r s))] . On utilise diverses m ethodes pour prouver la validit e de A. 3.7.1 M ethode directe Elle consiste a ` consid erer toutes les interpr etations. La formule A comporte quatre propositions distinctes, il y a donc 24 = 16 interpr etations. Il est plus commode de structurer lanalyse que de proc eder en 16 e tapes ; on utilise aussi les r` egles de simplications e l ementaires concernant a b, o` u est un connecteur binaire. Ces r` egles sappliquent d` es que a et b sont e gaux ou oppos es, et aussi si lun des op erandes est V ou F. On simplie aussi les doubles n egations. p=V: [(T q ) (r s)] [(T (r s)) (q (r s))], [q (r s)] [T (q (r s))], [q (r s)] [q (r s)], V; p=F: [(F q ) (r s)] [(F (r s)) (q (r s))], [F (r s)] [(r s) (q (r s))], (r s) [(r s) (q (r s))] ; q = V : (r s) [(r s) (T (r s))], (r s) [(r s) T ], (r s ) (r s ), V; q = F : (r s) [(r s) (F (r s))], (r s) [(r s) (r s)], (r s ) (r s ), V. Diverses variantes existent selon le nombre de r` egles simplicatrices admises (assez r eduit ici) et le niveau auquel on les applique (ici, tous). 3.7.2 M ethode alg ebrique Elle consiste a ` utiliser les lois alg ebriques pour simplier les formules. Cette m ethode est tr` es efcace si on fait les meilleurs choix . . . mais elle est tr` es inefcace sinon ! [(p q ) (r s)] [(p (r s)) (q (r s))] [(p (r s)) (q (r s))] [(p (r s)) (q (r s))] { X X true pour tout X } true 86 { Distributivit e de sur (ant ec edent) }

3.7.3 Tableau s emantique (notation r eduite) A, (p q ) (r s), [(p (r s)) (q (r s))] (p (r s)), (q (r s)), p, (r s) q, (r s) p q, p, q rs p q, p, q rs On observe une certaine redondance dans les calculs ; cest le prix a ` payer pour une m ethode facilement m ecanisable. ` la forme conjonctive 3.7.4 R eduction a On applique les r` egles habituelles : [(p q ) (r s)] [(p (r s)) (q (r s))] [(p q ) r s] [(p r s) (q r s)] [(p q ) r s] [(p r s) (q r s)] (p r s) (q r s) [(p r s) (q r s)] Une conjonction est valide si et seulement si tous ses termes sont valides. On prouve donc s epar ement la validit e des deux formules A1 =def (p r s) (q r s) p r s et A2 =def (p r s) (q r s) q r s. Chacune de ces formules se r eduit a ` une conjonction de 9 clauses ; on consid` ere seulement la formule A1 . Les clauses sont p q p r s p r p r s p s p r s r q p r s r r p r s r s p r s s q p r s s r p r s s s p r s

Chaque clause comporte une paire compl ementaire de litt eraux et est donc valide. 87

3.7.5 R esolution On commence par r eduire A en forme clausale. ([(p q ) (r s)] [(p (r s)) (q (r s))]) [(p q ) r s] [(p r s) (q r s)] (p r s) (q r s) [(p r s) (q r s)] ... Cela donne 11 clauses : 1. p r s 2. q r s 3. p q 4. p r 5. p s 6. r q 7. r 8. r s 9. s q 10. s r 11. s ps qs p q q 2 1, 7 2, 7 11, 12 11, 13 3, 14 15, 16

2. (p q ) r s

1. A

1, 1 1, 2 2, 1 2, 2 4, 5, R 6, 7, R

3. [(p r s) (q r s)] 5. p r s 6. q r s 8. 2

4. (p r s) (q r s) 3,

7. (q r s)

3.7.7 M ethode ad-hoc Elle consiste a ` tirer parti des particularit es de la formule e tudi ee . . . cest-` a-dire a ` navoir pas de m ethode ! On peut observer, par exemple, que [(p q ) (r s)] [(p (r s)) (q (r s))] est de la forme (A B ) (C D ) , et quune telle formule est valide si et seulement si les formules A C , A D , B C , B D sont valides. On doit donc prouver |= (p q ) (p (r s)) , |= (p q ) (q (r s)) , |= (r s) (p (r s)) , |= (r s) (q (r s)) ,

On d eduit la clause vide 2 par r esolution : 12. 13. 14. 15. 16. 17.

Remarque. Les clauses valides ou sur-ensembles dautres clauses sont inutiles et peuvent e tre supprim ees dembl ee. Dans le cas pr esent, toutes les clauses minimales (1, 2, 3, 7 et 11) ont e t e utilis ees. 3.7.6 R esolution g en eralis ee La d eduction X Y , X Z |= Y Z reste correcte si X nest pas un litt eral. On utilise aussi les trois r` egles suivantes : X |= 1 X , X |= 2 X , X |= 1 2 X . On obtient alors une r efutation plus courte, sans r eduction pr ealable a ` la forme clausale : 88

ce qui est e vident dans chaque cas.

89

4 M ethodes d eductives : le syst` eme de Hilbert


4.1 Introduction
Nous avons vu quune th eorie est lensemble des cons equences logiques dun ensemble donn e de formules, appel ees axiomes ou postulats. Ces cons equences logiques sont appel ees th eor` emes. D evelopper une th eorie consiste donc a ` rep erer les th eor` emes parmi les formules construites au moyen du lexique (du langage) utilis e pour introduire les postulats. Deux grandes techniques existent pour cela, la m ethode analytique et la m ethode synth etique. Jusquici, nous avons utilis e la m ethode analytique, sous la forme dune proc edure de d ecision. Pour analyser une formule propositionnelle, il suft de construire un ou deux tableau(x) s emantique(s). Cette approche est excellente . . . quand elle est possible. En logique pr edicative, qui est la logique des math ematiciens, on ne dispose pas en g en eral dune proc edure de d ecision ; m eme quand elle existe, elle peut e tre difcile a ` mettre en uvre. De plus, une proc edure de d ecision pour la validit e ne donne gu` ere dinformation sur le lien s emantique entre axiomes et th eor` emes. Enn, les proc edures de d ecision sont souvent inefcaces parce quelles ne r eutilisent pas les r esultats. On ne peut pas, en g en eral, acc el erer la validation dun th eor` eme sur base dautres th eor` emes ant erieurement d emontr es. Les math ematiciens utilisent le plus souvent la m ethode synth etique. Des th eor` emes simples sont obtenus a ` partir des postulats au moyen de quelques m ecanismes de raisonnement. Ces m emes m ecanismes, appliqu es aux th eor` emes simples, permettent de d emontrer des th eor` emes plus difciles, et ainsi de suite. Lapproche synth etique est e galement utilis ee dans les autres sciences exactes, et notamment en physique ; dans une certaine mesure, on utilise e galement lapproche synth etique en m edecine, en psychologie, en sociologie, etc. Un aspect typique de cette approche est lexploitation de r esultats ant erieurs pour produire des r esultats nouveaux. Le principal avantage de cette approche est sa g en eralit e. La m ethode synth etique saccommode dun ensemble inni de postulats (chaque preuve nen utilise quun nombre ni) ; elle permet disoler les postulats n ecessaires a ` la production dun th eor` eme donn e, ce qui permet notamment de d eterminer si un th eor` eme subsiste ou non quand lensemble des postulats est modi e. La th eorie est d evelopp ee de mani` ere modulaire, chaque th eor` eme pouvant e tre assimil ea ` un postulat suppl ementaire, disponible pour lobtention de nouveaux th eor` emes. Ces avantages ont un prix. Lobtention de th eor` emes par lapproche synth etique est un processus fonci` erement non d eterministe, pouvant requ erir cr eativit e, inventivit e . . . et t atonnement, au contraire de lapproche analytique dans laquelle le non-d eterminisme est inexistant (tables de v erit e) ou peu important (tableaux s emantiques). Des choix inad equats conduisent a ` des th eor` emes corrects mais inint eressants ; on voit quune certaine forme de cr eativit e est n ecessaire ici. On peut m eme dire que le talent du math ematicien consiste essentiellement a ` op erer les bons choix, ceux qui conduisent a ` valider (ou a ` inrmer) les conjectures les plus remarquables.44 La logique propositionnelle est sufsamment e l ementaire pour e tre correctement
44 Une autre facette du talent du math ematicien est laptitude a ` cr eer de nouveaux ensembles de postulats conduisant a ` des th eories int eressantes.

appr ehend ee au moyen des seules m ethodes analytiques. Nous introduisons n eanmoins lapproche synth etique pour pr eparer le lecteur a ` son utilisation dans le cadre plus complexe de la logique pr edicative.

4.2 Axiomes et r` egle dinf erence


Le syst` eme formel H est constitu e de sch emas daxiomes ; on a 1. A (B A) 2. (A (B C )) ((A B ) (A C )) 3. (B A) (A B ) de la r` egle du Modus ponens (MP) : A B AB

A, B et C sont des formules quelconques, nutilisant que les connecteurs et .45 Un axiome proprement dit sobtient en instanciant lun des trois sch emas, cest-` a-dire en remplac ant A, B , C par des formules. Par exemple, la formule (p q ) (p (p q )) est un axiome, obtenu en appliquant la substitution [A/(p q ), B/p] au premier sch ema. La notation se lit est un th eor` eme. Rappelons ici que tout axiome est un th eor` eme. Le syst` eme de Hilbert comporte la seule r` egle dinf erence Modus ponens. Cette r` egle permet dobtenir le th eor` eme B au d epart des th eor` emes A et A B .

4.3 Preuves
Une preuve dans H est une s equence de formules, chaque formule e tant linstance dun axiome, ou inf er ee de deux formules la pr ec edant dans la s equence, au moyen de la r` egle dinf erence Modus ponens. Par d enition, tout e l ement dune preuve, et en particulier le dernier, est un th eor` eme ; si A est le dernier e l ement de la s equence, celle-ci est une preuve de A. A titre dexemple, une preuve de limplication p p est donn ee a ` la gure 45. Remarques. Par facilit e, chaque e l ement dune preuve est pr ec ed e dun num ero dordre et suivi dune br` eve justication ; Axiome 1 veut dire instance du sch ema daxiome 1 et 4, 3, MP veut dire obtenu a ` partir des formules de num eros 4 et 3 (pr emisses) par la r` egle du Modus ponens. La preuve donn ee ici e tablit que la formule (p p) est un th eor` eme, ou encore que lassertion (p p) (lire : (p p) est un th eor` eme) est un m etath eor` eme (cest-` a-dire un th eor` eme au sens math ematique courant ; le pr exe m eta est souvent omis).46 Lexpression
45 Il existe des variantes permettant lemploi de tous les connecteurs habituels, mais la version pr esent ee ici est plus simple, sans e tre r eellement restrictive ; on consid` ere p q comme une abr eviation de p q , et p q comme une abr eviation de (p q ). 46 Signalons que (p p) est une formule, donc un objet du langage, tandis que (p p) est une assertion, donc un objet du m etalangage.

90

91

1. p ((p p) p)

(Axiome 1) (1, 2, MP) (Axiome 1) (4, 3, MP)

4. p (p p) 5. p p

3. (p (p p)) (p p)

2. (p ((p p) p)) ((p (p p)) (p p)) (Axiome 2)

F IG . 45 Exemple de preuve dans le syst` eme de Hilbert. (A A) est un sch ema de th eor` eme ; toute instance dun sch ema de th eor` eme est un th eor` eme. On transforme facilement la preuve de (p p) en une preuve de (p q ) (p q ), par exemple. La preuve donn ee plus haut peut se repr esenter de mani` ere arborescente (gure 46). Cette repr esentation est plus naturelle que la repr esentation s equentielle introduite plus haut, mais nest gu` ere utilis ee a ` cause de son encombrement.
p ((p p) p) (p ((p p) p)) ((p (p p)) (p p)) p (p p) pp

(p (p p)) (p p)

En d epit de ces diff erences, on peut dire que le syst` eme de Hilbert est un calcul de s equent (synth etique). Remarque. Le mot axiome a en fait plusieurs sens relativement voisins, mais quil convient de distinguer. Dans le cadre de la m ethode (analytique) des s equents, un axiome est un s equent dun type particulier, dont la validit e est imm ediate. Dans le cadre du syst` eme de Hilbert, un axiome est une tautologie dun certain type, obtenue par instantiation dun sch ema particulier. Dans les deux cas, lid ee de validit e est importante. En revanche, dans le langage courant, dans le langage math ematique g en eral et dans le cadre plus technique des th eories logiques (surtout pr edicatives), les axiomes ne sont pas des tautologies mais des e nonc es consistants dont on souhaite e tudier lensemble des cons equences logiques. Dans le cadre de cette e tude seulement, les axiomes sont consid er es comme toujours vrais ; il sagit donc dune validit e locale, limit ee a ` un certain contexte. En pratique, ce contexte peut para tre universel. Cest le cas de l enonc e laddition est commutative, traduit par la formule x y (x+y = y +x). Cette formule nest pourtant valide que si on interpr` ete de mani` ere ad equate le symbole fonctionnel + et le symbole pr edicatif =. Notons aussi que le mot postulat est synonyme du mot axiome mais que ce dernier insiste plus sur laspect v erit e universelle tandis que postulat met plus laccent sur laspect relatif de la validit e. Le c el` ebre e nonc e dEuclide Par tout point ext erieur a ` une droite passe une et une seule parall` ele a ` cette droite est un axiome de la g eom etrie classique47 et un postulat auquel il est parfois protable de renoncer de la g eom etrie moderne. De m eme, la commutativit e de laddition est un axiome (ou un th eor` eme) en arithm etique et un postulat en th eorie des groupes.

4.4 D erivations
F IG . 46 Repr esentation arborescente dune preuve. On peut aussi (gure 47) ne mentionner dans larborescence que les num eros des formules impliqu ees, ce qui r eduit lencombrement. 1 3 5 F IG . 47 Repr esentation arborescente abr eg ee dune preuve. Il existe une nette analogie entre une preuve de Hilbert (repr esent ee de mani` ere arborescente) et une d erivation de s equent, mais il y a aussi quelques diff erences : Le symbole remplace le symbole . Les ant ec edents sont vides (pour linstant). Les succ edents comportent un seul e l ement. Le sens de axiome a chang e. Lunique r` egle est le Modus ponens, qui nest pas analytique, ni r eversible. 92 2 4 Un ensemble U de formules quelconques e tant donn e, une d erivation ou preuve avec hypoth` eses dans H est une s equence de formules, chaque formule e tant une hypoth` ese ( el ement de U ), ou une instance dun axiome, ou inf er ee de deux formules pr ec edentes, au moyen du Modus ponens. Le m etath eor` eme relatif a ` une preuve avec hypoth` eses s ecrit U H A ou U A . Un exemple de d erivation est donn ea ` la gure 48. Comme pour les preuves, les lignes sont num erot ees et accompagn ees dune courte justication. En outre, lensemble des hypoth` eses est rappel ea ` chaque ligne. On verra plus loin pourquoi. Remarque. En g en eral, le dernier e l ement A dune d erivation nest pas un th eor` eme. On verra plus loin que U A a lieu si et seulement si on a U |= A ; en particulier, A a lieu si et seulement si A est une tautologie. Remarques. Il est souvent plus facile d etablir A, B, C D que A (B (C D )), mais on montrera quune d erivation du premier e nonc e se convertit automatiquement en une preuve du second ; la d erivation ci-dessus e tablit donc indirectement (p (q r )) (q (p r )) .
47 Apr` es en avoir longtemps e t e une conjecture, dont les math ematiciens ont nalement d etermin e quelle ne pouvait e tre d eduite des autres axiomes.

93

1. p (q r ), q, p p (q r ) (Hypoth` ese) 2. p (q r ), q, p p 3. p (q r ), q, p q r 4. p (q r ), q, p q 5. p (q r ), q, p r (Hypoth` ese) (1, 2, MP) (Hypoth` ese) (3, 4, MP)

F IG . 48 Exemple de d erivation dans le syst` eme de Hilbert. La repr esentation arborescente, style s equent, reste possible. Les hypoth` eses deviennent les e l ements des ant ec edents. (Le sens du mot hypoth` ese a donc chang e.)

aurons montr e que U A est assimilable a ` U |= A , on pourra prouver facilement quune r` egle est correcte. Par exemple, la r` egle U , X X U X est correcte, parce que si X est cons equence logique de U {X }, alors X est est cons equence logique de U . Nous devrons cependant e tablir directement certaines r` egles, n ecessaires pour d emontrer que les relations et |= sont coextensives. Remarque. Dans ce contexte, U, A abr` ege U {A}. On notera que les principes de composition et de substitution uniforme peuvent se traduire par des r` egles d eriv ees, de m eme que le principe de monotonie, selon lequel une hypoth` ese suppl ementaire nalt` ere pas les d erivations faites sans elle. On a U A U, A B U B U A U [p/B ] A[p/B ] U A U, B A

4.5 Quelques r esultats utiles


Nous voyons ici trois r esultats permettant de raccourcir les preuves ou, plus exactement, d ecrire des textes qui ne sont pas, a ` strictement parler, des preuves, mais des argumentations (souvent plus courtes que les preuves elles-m emes) e tablissant lexistence dune preuve dun th eor` eme donn e. 4.5.1 Principes de composition et de substitution uniforme Th eor` eme. Tout th eor` eme peut e tre utilis e comme un axiome dans une preuve.48 D emonstration. On obtient une preuve (au sens strict) en remplac ant chaque th eor` eme utilis e comme un axiome par une preuve de ce th eor` eme. Th eor` eme. Si C est un th eor` eme et si p1 , . . . , pn sont des propositions deux a ` deux distinctes, alors C (p1 /A1 , . . . , pn /An ) est un th eor` eme. D emonstration. Lapplication dune substitution uniforme a ` toutes les lignes dune preuve produit toujours une preuve. 4.5.2 R` egles dinf erence d eriv ees U1 A1 , , Un An U B est une r` egle dinf erence d eriv ee ; elle exprime que sil existe des d erivations pour chacune des n pr emisses, alors il existe une d erivation pour la conclusion. Une r` egle est ad equate ou correcte si elle exprime une v erit e. L ecriture Remarque. Une r` egle d eriv ee est correcte . . . si lon peut sen passer, cest-` a-dire si toute d erivation lutilisant peut e tre convertie en une d erivation ne lutilisant pas. Une fois que nous
48 On notera la diff erence de sens entre les deux emplois du mot th eor` eme ; la premi` ere occurrence aurait pu e tre m etath eor` eme.

4.6 R` egle de d eduction


Cette r` egle d eriv ee essentielle s ecrit U, A B . U AB

Remarque. On voit que cette r` egle provient directement dune r` egle (r eversible et de type ) du calcul des s equents. Elle formalise une d emarche courante en math ematiques : on doit d emontrer A B ; on suppose A ; on en d erive B . On a d ej` a vu lutilit e potentielle de la r` egle (pour peu que son ad equation soit e tablie) : p (q r ), q, p r est trivial ; (p (q r )) (q (p r )) ne lest pas. Notons enn que la r` egle est r eversible, la r` egle inverse e tant une simple variante du Modus Ponens. 4.6.1 Ad equation de la r` egle de d eduction On doit d emontrer que toute preuve utilisant la r` egle de d eduction peut se r ecrire en une preuve ne lutilisant pas. Cela revient a ` transformer, e tape par e tape, une preuve de U, A B en une preuve de U A B .

D emonstration. On suppose donn ee une preuve 1 de U, A B , dont chaque e tape est du type U, A X . On construit une preuve 2 de U (A B ) en remplac ant chaque e tape de 1 n. U, A X

par une ou plusieurs nouvelles e tapes dont la derni` ere est

94

95

n . U A X . On distingue quatre cas : 1. X est un axiome ; 2. X est une hypoth` ese de lensemble U ; 3. X est la nouvelle hypoth` ese A ; 4. X est inf er e par Modus ponens. Dans les cas 1 et 2, l etape n. U, A X (Ai ou H) est remplac ee par les trois e tapes suivantes : n 2. U X (Ai ou H) n 1. U X (A X ) (A1) n . U AX (n 2, n 1, MP) Dans le cas 3, l etape U, A A est remplac ee par cinq e tapes calqu ees sur la d emonstration de (p p) donn ee plus haut ; la derni` ere de ces cinq nouvelles e tapes est naturellement U (A A). Dans le cas 4, la preuve 1 comporte les e tapes i. U, A Y (. . .) j . U, A Y X (. . .) n. U, A X (i, j , MP) Le pr exe d ej` a construit de 2 comportera i . U A Y (. . .) j . U A (Y X ) (. . .) Le fragment de 2 relatif a ` la ni` eme e tape de 1 sera : n 2. U (A (Y X )) ((A Y ) (A X )) (A2) n 1. U (A Y ) (A X ) (j , n 2, MP) n . U (A X ) (i , n 1, MP) Ceci ach` eve la d emonstration.

1. (A B ) ((B C ) (A C )) 2. (A (B C )) (B (A C )) 4. A (A B ) 3. A (A B )

5. A A 6. A A

9. (B A) ((B A) A) Il sagit en fait de sch emas de th eor` emes ; chacune des lettres A, B et C d esigne ici nimporte quelle formule. Dans la suite, on e vitera la construction des preuves ; on pr ef erera d emontrer simplement lexistence dune preuve. Les notions de d erivation et de r` egle d eriv ee ont pour but de faciliter ces d emonstrations dexistence. A titre dexemple, une d erivation du th eor` eme 6 est donn ee a ` la gure 49, les th eor` emes 1 a `5e tant suppos es d ej` a d emontr es. On voit ici lutilit e capitale du principe de composition ; la r` egle de d eduction facilite le travail de justication . . . qui nest quand m eme pas e vident. 1. A, A A A (Composition, th. 5) (Hypoth` ese) (1, 2, MP) (D eduction, 3) (Axiome 3) (4, 5, MP) (Hypoth` ese) (6, 7, MP) (D eduction, 8)

8. B (C (B C ))

7. (A B ) (B A)

4. A A A 6. A A A

3. A, A A

2. A, A A

5. A (A A) (A A)

4.7 Th eor` emes et r` egles d eriv ees suppl ementaires


Dans le syst` eme de Hilbert, les preuves sont tr` es faciles a ` v erier mais nettement plus difciles a ` construire ; cette situation est habituelle avec les m ethodes synth etiques. Nous donnons ici quelques th eor` emes utiles et quelques r` egles d eriv ees suppl ementaires. 4.7.1 Th eor` emes suppl ementaires Nous donnons ici neuf th eor` emes importants :

9. A A

8. A A

7. A A

F IG . 49 Justication de A A . Remarque. Une r` egle d eriv ee e vidente, le plus souvent utilis ee implicitement, est la r` egle daugmentation ; elle s ecrit U A U, B A et exprime quune hypoth` ese disponible ne doit pas n ecessairement e tre utilis ee.

96

97

4.7.2 Quelques autres r` egles d eriv ees Notons dembl ee un puissant moyen de construire des r` egles d eriv ees. U A est une r` egle d eriv ee correcte. M etar` egle. Si A B , alors U B Cela formalise une d emarche intuitive : 1. Ayant d emontr e A en supposant U , soit U A, 2. on utilise le th eor` eme A B 3. et on applique la r` egle du Modus ponens a ` (1) et (2) pour obtenir U B . U B A U AB U AB U B C U AC U A U A U A (B C ) U B (A C ) Contrapos ee

U, B A U BA (B A) ((B A) A) U (B A) A U, B A U B A U A

Pr emisse D eduction Th eor` eme 9, 4.7.1 MP Pr emisse D eduction MP

On obtient ainsi diverses r` egles d eriv ees utiles, dont voici quatre exemples :

Remarque. Un peu de cr eativit e . . . ou de patience est n ecessaire pour d emontrer le th eor` eme utilis e dans le d eveloppement ci-dessus.

Transitivit e

4.8 Ad equation et compl etude du syst` eme de Hilbert


Le syst` eme de Hilbert est un m ecanisme permettant dengendrer des th eor` emes ; on souhaite naturellement que tout th eor` eme soit une tautologie (ad equation) et que toute tautologie soit un th eor` eme (compl etude). On peut e tablir un r esultat plus g en eral : si A est une formule et si U est un ensemble de formules, alors U |= A est vrai si et seulement si U A est vrai. (Seuls les connecteurs de n egation et dimplication sont admis.) 4.8.1 Ad equation du syst` eme de Hilbert Montrer que tous les th eor` emes sont des tautologies revient a ` montrer que tous les e l ements dune preuve sont des tautologies. Cest une cons equence imm ediate des lemmes suivants, eux-m emes e vidents. Lemme. Toute instance des sch emas daxiomes est une tautologie. On d emontre de m eme que si lassertion U A appara t dans une d erivation, alors la formule A est cons equence logique de lensemble U . 4.8.2 Lemme de Kalmar Le syst` eme de Hilbert est, nous venons de le prouver, un m ecanisme de production de tautologies. Il faut aussi prouver que ce syst` eme produit toutes les tautologies. Le point de vue constructif adopt e dans ce texte nous incite donc a `e laborer une strat egie dutilisation du syst` eme de Hilbert, permettant de construire a ` la demande une preuve dont le dernier e l ement est une tautologie donn ee. 99 Lemme. Si A et A B sont des tautologies, alors B est une tautologie.

Double n egation

Echange dant ec edents

La r` egle de contraposition formalise le raisonnement par labsurde. La r` egle de transitivit e formalise lemploi de lemmes en cascade : pour d emontrer A B , on d emontre les lemmes A C1 , C1 C2 , . . . , Cn B . Par application r ep et ee de la r` egle de transitivit e, on d eduit A B . La r` egle de ec edents indique que lordre change dant dans lequel des hypoth` eses sont faites nest pas important. La r` egle de la double n egation est couramment utilis ee en math ematique. Elle nest pas innocente dans le cadre de la philosophie, de la linguistique, de linformatique. Par exemple, la phrase Il nest pas vrai que je suis m econtent. nest pas tout a ` fait e quivalente a ` Je suis content. De m eme, un programme qui ne produit pas deux valeurs x = y , nest pas n ecessairement un programme qui produit deux valeurs x = y . Signalons encore la r` egle de disjonction des cas, qui s ecrit U, B A U, B A U A

Voici un sch ema de d emonstration de cette r` egle importante.

98

Le syst` eme le plus simple de v erication de tautologie est sans doute la m ethode des tables de v erit e.49 Le lemme de Kalmar sp ecie qu` a chaque ligne dune table de v erit e correspond une d erivation dans le syst` eme de Hilbert. Lemme. Soit A une formule construite a ` partir des propositions p1 , . . . , pn et des connecteurs et . Soit v une interpr etation. Si on d enit pk comme pk ou pk selon que v (pk ) est V ou F, et si on d enit A comme A ou A selon que v (A) est V ou F, on a {p1 , . . . , pn } A Exemple. Du fragment de table de v erit e p q r s F F V V le lemme de Kalmar permet de d eduire {p, q, r, s} [(p q ) (r s)] . Remarque. Le lemme de Kalmar permet de coder une ligne de table de v erit e dans le syst` eme de Hilbert ; il contribue donc a `e tablir que U |= A implique U A. 4.8.3 D emonstration du lemme de Kalmar Remarque pr eliminaire. On va utiliser les lemmes suivants : C B C, B B , B B C , (p q ) (r s) F

Premier sous-cas. v (B ) = F et v (A) = V. {p1 , . . . , pn } B , {p1 , . . . , pn } {p1 , . . . , pn } A ,

Deuxi` eme sous-cas. v (B ) = V et v (A) = F. {p1 , . . . , pn } B , {p1 , . . . , pn } B

{p1 , . . . , pn }

B ,

A .

{p1 , . . . , pn } A . Second cas inductif : la formule A est limplication B C . Premier sous-cas. v (C ) = V et v (A) = V. {p1 , . . . , pn } C , C (B C ) , {p1 , . . . , pn } C, Deuxi` eme sous-cas. v (B ) = F et v (A) = V. {p1 , . . . , pn } {p1 , . . . , pn } B , B , Troisi` eme sous-cas.

{p1 , . . . , pn } A ,

{p1 , . . . , pn } B ,

B B ,

v (B ) = V, v (C ) = F et v (A) = F. {p1 , . . . , pn } B , {p1 , . . . , pn } C , {p1 , . . . , pn } B ,

{p1 , . . . , pn } (B C ) , {p1 , . . . , pn } (B C ) , {p1 , . . . , pn } C , {p1 , . . . , pn } {p1 , . . . , pn } A ,

B (B C ) ,

A .

{p1 , . . . , pn } A , {p1 , . . . , pn }

A .

C, B (B C ) , {p1 , . . . , pn } A ,

{p1 , . . . , pn } (B C ) , {p1 , . . . , pn } A .

C, B (B C ) . dont les d emonstrations sont e videntes si lon tient compte respectivement de laxiome 1 ( 4.2) et des th eor` emes 6, 3 et 8 ( 4.7.1) D emonstration. On raisonne par induction sur la structure de la formule A. Cas de base : la formule A est une proposition pk . Si v (pk ) = V, l enonc e se r eduit a ` {. . . , pk , . . .} pk . Si v (pk ) = F, l enonc e se r eduit a ` {. . . , pk , . . .} pk . Premier cas inductif : la formule A est la n egation B .
49

Remarque. On a raisonn e par cas pour e tablir {p1 , . . . , pn } A , sans pour autant utiliser la 50 r` egle d eriv ee de disjonction des cas. En fait, cette r` egle d eriv ee est, comme les autres, une version particuli` ere et formelle dune technique de raisonnement (informel). 4.8.4 Compl etude du syst` eme de Hilbert Soit A une tautologie construite a ` partir des propositions p1 , . . . , pn et des connecteurs et . Dapr` es le lemme de Kalmar, on a {p1 , . . . , pn } A , o` u pk est indiff eremment pk ou pk . (On a toujours A = A.) De ces 2n th eor` emes on tire, par disjonction des cas sur pn , les 2n1 th eor` emes suivants : {p1 , . . . , pn1 } A ,
50

Ne confondons pas le plus simple et le plus efcace.

En revanche, cette r` egle sera utilis ee explicitement au paragraphe suivant.

100

101

et, plus g en eralement, les 2k th eor` emes suivants, pour tout k {0, 1, . . . , n} : {p1 , . . . , pk } A , et donc, en particulier (k = 0) le th eor` eme A, ce qui ach` eve la d emonstration.

102