52
ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´ esent´ e le 11 juin 2012 pour l’obtention du Master Premi` ere Ann´ ee de l’Universit´ e d’Artois Sp´ ecialit´ e Informatique par Nicolas SZCZEPANSKI Composition du jury Encadrants : Bertrand Mazure Universit´ e d’Artois Sa¨ ıd Jabbour Universit´ e d’Artois Tiago de Lima Universit´ e d’Artois Président : Eric Gr´ egoire Universit´ e d’Artois CENTRE DE RECHERCHE EN I NFORMATIQUE DE LENS – CNRS UMR 8188 Universit´ e d’Artois, rue Jean Souvraz, S.P. 18 F-62307, Lens Cedex France Secr´ etariat : T´ el.: +33 (0)3 21 79 17 23 – Fax : +33 (0)3 21 79 17 70 http://www.cril.univ-artois.fr

M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Methodes efficaces de raisonnement

en logique modale

RAPPORT DE STAGE

presente le 11 juin 2012

pour l’obtention du

Master Premiere Annee de l’Universite d’Artois

Specialite Informatique

par

Nicolas SZCZEPANSKI

Composition du jury

Encadrants : Bertrand Mazure Universite d’ArtoisSaıd Jabbour Universite d’ArtoisTiago de Lima Universite d’Artois

Président : Eric Gregoire Universite d’Artois

CENTRE DERECHERCHE ENI NFORMATIQUE DE L ENS – CNRS UMR 8188

Universite d’Artois, rue Jean Souvraz, S.P. 18 F-62307, Lens Cedex France

Secretariat : Tel.: +33 (0)3 21 79 17 23 – Fax : +33 (0)3 21 79 17 70

http://www.cril.univ-artois.fr

Page 2: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Mise en page avec memcril (B. Mazure, CRIL) et thloria (D. Roegel, LORIA).

Page 3: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Table des matières

Table des figures iv

Introduction générale 1

Partie I État de l’art

Chapitre 1 Le probleme SAT

La logique propositionnelle 4

1.1 Langues et logiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.1.1 Différenciation des langues. . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.1.2 Explications des aspects syntaxique et sémantique. . . . . . . . . . . . . . 5

1.2 Syntaxe de la logique propositionnelle. . . . . . . . . . . . . . . . . . . . . . . . . 6

1.2.1 Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.2.2 Formules bien formées. . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.3 Sémantique de la logique propositionnelle. . . . . . . . . . . . . . . . . . . . . . 6

1.3.1 Sémantique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.3.2 Définitions et théorèmes. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.4 Formes normales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.4.1 Définitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.4.2 Le problème SAT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

i

Page 4: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Table des matières

Chapitre 2 Les logiques modales 10

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.1.1 Pourquoi une logique modale ?. . . . . . . . . . . . . . . . . . . . . . . . 10

2.1.2 Vocabulaire de la logique modale. . . . . . . . . . . . . . . . . . . . . . . 11

2.2 La sémantique de Kripke. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.1 Notions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.2 Sémantique de la logique modale normale minimale : Le système K. . . . . 15

2.3 Classification des systèmes de logique modale. . . . . . . . . . . . . . . . . . . . 16

2.3.1 Notions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3.2 Relations dans la classification des systèmes. . . . . . . . . . . . . . . . . 17

2.4 Correspondance, complétude et exemples. . . . . . . . . . . . . . . . . . . . . . . 18

2.4.1 Correspondance et complétude. . . . . . . . . . . . . . . . . . . . . . . . 18

2.4.2 Exemples et réflexion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Chapitre 3 La logique modale S5 21

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.1.1 Sémantique de S5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.1.2 Représentation de la sémantique. . . . . . . . . . . . . . . . . . . . . . . 22

3.2 Démonstration de théorèmes et d’inférences de S5. . . . . . . . . . . . . . . . . . 22

3.2.1 Validité d’une expression dans S5. . . . . . . . . . . . . . . . . . . . . . . 22

3.2.2 Théorèmes utiles de S5. . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.3 Exemples de démonstrations utiles. . . . . . . . . . . . . . . . . . . . . . 24

Partie II L’application

Chapitre 1 Présentation du programme MLSAT 28

1.1 Présentation globale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

1.1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

1.1.2 Fonctionnalité. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

1.2 Structure du programme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

1.2.1 Présentation de la structure. . . . . . . . . . . . . . . . . . . . . . . . . . 30

1.2.2 Explication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

1.2.3 La configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

ii

Page 5: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2 La traduction 33

2.1 Les simplifications et premieres distributions. . . . . . . . . . . . . . . . . . . . . 34

2.1.1 Pourquoi ce choix ?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

2.1.2 Démonstration dans le système S5. . . . . . . . . . . . . . . . . . . . . . 35

2.1.3 Le renommage des variables. . . . . . . . . . . . . . . . . . . . . . . . . 36

2.2 La distribution "spéciale" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.3 La tranformation des "Boxs" en variables propositionnelles. . . . . . . . . . . . . 38

2.3.1 Le nombre de mondes possibles. . . . . . . . . . . . . . . . . . . . . . . . 38

2.3.2 La dernière étape pour arriver à PL. . . . . . . . . . . . . . . . . . . . . . 39

2.3.3 Algorithme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

2.4 La tranformation de Tseitin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

2.4.1 Idée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

2.4.2 Algorithme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Conclusion 41

Bibliographie 42

iii

Page 6: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Table des figures

1.1 Connecteurs logiques usuels de la logique propositionnelle.. . . . . . . . . . . . . . . . 61.2 Théorèmes utililes de la logique propositionelle. . . . . . . . . . . . . . . . . . . . . . 8

2.1 Signification lexicale de Box et Diamond dans la logique modale classique.. . . . . . . 112.2 Lectures pour les opérateurs modaux.. . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Carré de la logique modale.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.4 Cadre (ou structure) de Kripke.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.5 Modèle de Kripke. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.6 Règles sémantiques d’une logique modale normale minimale : Le systemes K. . . . . . 152.7 Classification des systèmes de logique modale. . . . . . . . . . . . . . . . . . . . . . . 172.8 Principales formules de Sahlqvist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.9 Carré de la logique modale améliorée.. . . . . . . . . . . . . . . . . . . . . . . . . . . 192.10 Modèle de Kripke. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1 Règles sémantiques de la logique modale S5. . . . . . . . . . . . . . . . . . . . . . . . 213.2 Modèle de Kripke d’un système S5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.3 Axiomes ou théorèmes utiles de S5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.4 Règles d’inférences utiles de S5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.1 Transformation de S5 à CNF d’une formule dans MLSAT. . . . . . . . . . . . . . . . . 291.2 Structure et dépendance du programme (partie 1). . . . . . . . . . . . . . . . . . . . . 301.3 Structure et dépendance du programme (partie 2). . . . . . . . . . . . . . . . . . . . . 31

2.1 Théorème de S5 utiles à la traduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . 342.2 La distributions spéciale : exemple (partie 1). . . . . . . . . . . . . . . . . . . . . . . . 362.3 La distributions spéciale : exemple (partie 2). . . . . . . . . . . . . . . . . . . . . . . . 372.4 La distributions spéciale : exemple (partie 3). . . . . . . . . . . . . . . . . . . . . . . . 382.5 Règles de transformation de la "Box". . . . . . . . . . . . . . . . . . . . . . . . . . . 39

iv

Page 7: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Introduction générale

Les applications de la logique modale sont nombreuses : elles sont liées aux raisonnements sur lesprogrammes, à la sécurité dans leurs résolutions, aux logiques non monotones, aux problèmes de logiqueépistémique, déontique, temporelle, doxastique et dynamique. En d’autres termes, à un grand nombre deproblèmes associés à la formalisation du raisonnement en intelligence artificielle.

Dans la première partie, nous étudierons respectivement la logique propositionnelle, les logiques mo-dales normales, puis le système normal S5 plus en détail. Cette première partie a pour but de nous fairecomprendre le problème et le sujet de ce stage TER (Méthodes efficaces de raisonnement en logiquemodale), plus précisément : apprendre les notions pour raisonner sur latraduction de la logique modaleS5 en logique propositionnelle, le chapitre 3 de la première partie est importantpour la deuxième partie,car il traite exclusivement le système S5. Il en va de soit qu’une personne connaissant les logiques mo-dales peut passer directement à ce chapitre. Cette deuxième partie présente une manière de traduire lalogique modale S5 en logique propositionnelle suivant les idées données par mes encadrants et qui a étéappliquée dans un programme nommé MLSAT(Modal Logic SAT) programmé par moi-même, qui estaussi expliqué dans cette partie.

Les thèses de M. Mazure [Maz99], M. Lagniez [Lag11] et M. Jabbour [Jab08] m’on aidé à com-prendre le problème SAT. Pour ce qui est de la logique modale, le livre principal est celui de Chellas(Modal Logic : An Introduction) : [Che80], en anglais, qui est très complet. Plusieurs autres livres dontquelques uns sont en français contiennent des chapitres consacrésà la logique modale qui m’ont été aussid’une grande utilité : [FK09],[HM92], [Gré90] de M. Grégoire et [GHR98].

Je remercie mes encadrants pour le temps qu’il m’on consacré et les connaissances qu’il m’on ap-portées.

Je remercie mon père pour sa présence et son intérêt et Elodie pour la vérification orthographiquequ’elle a apportée à ce rapport et pour ses encouragements.

1

Page 8: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Introduction générale

2

Page 9: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Première partie

État de l’art

3

Page 10: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 1

Le probleme SATLa logique propositionnelle

Sommaire

1.1 Langues et logiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.1.1 Différenciation des langues. . . . . . . . . . . . . . . . . . . . . . . . . 41.1.2 Explications des aspects syntaxique et sémantique. . . . . . . . . . . . . 5

1.2 Syntaxe de la logique propositionnelle. . . . . . . . . . . . . . . . . . . . . . 61.2.1 Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.2.2 Formules bien formées. . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.3 Sémantique de la logique propositionnelle. . . . . . . . . . . . . . . . . . . . 61.3.1 Sémantique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.3.2 Définitions et théorèmes. . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.4 Formes normales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.4.1 Définitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.4.2 Le problème SAT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Ce chapitre a pour objectif de présenter brièvement le problème de satisfaisabilité d’une formulepropositionnelle SAT, pour “SATisfiability” en expliquant la notion en logique propositionnelle. Nousrappelons tout d’abord qu’une logique est une langue formelle et précisons quelques définitions du jar-gon de la logique pour ensuite étudier la syntaxe, la sémantique et d’autres définitions de la logiquepropositionnelle.

1.1 Langues et logiques

1.1.1 Différenciation des langues

Cette section a été inspirée du premier chapitre du livre [Tha89] dirigé parA.Thaysequi énonce lesbases de la logique. Une langue est constituée d’un ensemble de phrases, cet ensemble est le plus souventinfini. On distingue deux classes de langues : les langues naturelles telles le français et l’anglais et leslangues formelles telles la logique et les mathématiques.

4

Page 11: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

1.1. Langues et logiques

Définitions (Langues naturelles, Langues formelles) :

– Les langues naturellessont constituées par enrichissement progressif avant toutes tentativesdeformation d’une théorie. Les caractères expressifs sont dûs en grande partie à la richesse du composantsémantique : Ils sont qualifiés de polysémiques (qualité d’un mot ou d’une expression qui a deuxvoir plusieurs sens différents). Cela a pour conséquence une forte difficulté ou impossibilité d’uneformalisation complète.

– Leslangues formellessont constituées à partir d’une théorie établie à priori. Elles ont une composantesémantique minimale en fonction de la théorie à formaliser. La syntaxe produit des phrases univoques,utilise les nombres, et a pour intérêt une formalisation complète et donc une possibilité d’implantationsur ordinateur.

On peut noter que le processus de genèse et de développement d’unelangue formelle est donc inversépar rapport a ceux que l’on rencontre pour une langue naturelle. En conséquence, les mots et donc lesphrases d’une langue formelle sont parfaitement univoques1.

1.1.2 Explications des aspects syntaxique et sémantique

Le terme de sémantique2 est utilisé en opposition à celui de syntaxe dans l’étude des languages deprogrammation en informatique et des logiques en général, pour laquelle elle aété développée de ma-nière formelle. Il y a entre la sémantique et la syntaxe le même rapport qu’entre le fond et la forme.

Définitions (Aspect syntaxique, Aspect sémantique) :

– Aspectsyntaxique: il s’agit de définir le language par les règles d’écriture des propositions, formules,ou phrases.

– Aspectsémantique: il s’agit ici de donner un sens aux symboles représentant les connecteurs logiquesen fonction de la valeur de vérité des propositions de base (ainsi¬ signifie non). Ce sens est donné,par exemple, par des tables de vérité ou par des modèles de Kripke, puis dedécrire les règles d’in-férence permettant la déduction de propositions à partir d’autres. Ces règles de déduction permettentd’engendrer des propositions spécifiques que l’on appelle des théorèmes.

Le fait que la déduction corresponde parfaitement à la sémantique s’appelle la complétude. Le lan-guage de la logique propositionnelle, introduit parBoole(1854) dans l’ouvrage [Boo54] décrivant l’al-gebre de Boole, est une manière naturelle de représenter des connaissances.

1. Univoque : Garde le même sens dans des contextes ou emplois différents.2. La sémantique est une branche de la linguistique qui étudie les signifiés,soit ce dont parle un énoncé.

5

Page 12: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 1. Le probleme SAT La logique propositionnelle

1.2 Syntaxe de la logique propositionnelle

1.2.1 Syntaxe

Nous définissons ici les principaux éléments syntaxiques de la logique propositionnelle :

Définitions (Vocabulaire de la logique propositionnelle) :

– La base de la syntaxe du calcul des propositions sont lesvariables propositionnellesoupropositionsatomiques, notées p, q, ... qui constituent généralement un ensemble infini dénombrable.

– La syntaxe de la logique propositionnelle contient aussi dessymboles de ponctuationqui sont souventnotées "(", ")", "[" et "]".

– les deuxconstantes propositionnelles⊥ et⊤ qui représentent respectivement le "faux" et le "vrai".– Et pour finir, de l’ensemble desconnecteurs logiques usuels: la figure1.1.

Nom Négation Conjonction Disjonction Implication Equivalence Ou exclusifArité Unaire Binaire Binaire Binaire Binaire Binaire

Symbole ¬ ∧ ∨ ⇒ ⇔ ⊕

FIGURE 1.1 – Connecteurs logiques usuels de la logique propositionnelle.

1.2.2 Formules bien formées

La syntaxe permet de distinguer les formules bien formées parmi les assemblages quelconques desymboles.

Définition (Formules) :

Les phrases du language de la logique propositionnelle sont obtenues récursivement à partir des propo-sitions et d’un ensemble de règles syntaxiques. Ces phrases sont appeléesformules :– Toute proposition est une formule (règle de base).– Si X et Y sont des formules, alors¬X, (X∧Y),(X∨Y),(X⇒Y),(X⇔Y) et (X⊕Y) sont des formules

(règle d’induction).– Une formule s’obtient uniquement à partir des règles de base et d’induction.(règle de fermeture).

1.3 Sémantique de la logique propositionnelle

1.3.1 Sémantique

La sémantique de la logique propositionnelleest compositionnelle : c’est-à-dire que la significationd’une formule sera en fonction de celle de ses constituants. La valeur de vérité d’une formule dépendrauniquement de la structure de cette formule :

6

Page 13: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

1.3. Sémantique de la logique propositionnelle

Définition (Sémantique de la logique propositionnelle) :

– Toute variable propositionnelle est interprétée comme vraie ou fausse.– Si X est une formule, alors¬X est vraie si et seulement si X est fausse.– Si X et Y sont des formules, alors :

– (X∧Y) est vrai si et seulement si X et Y sont vraies.– (X∨Y) est vraie si et seulement si X ou Y est vraie.– (X⇒Y) est vraie si et seulement si X est fausse ou Y est vraie.– (X⇔Y) est vraie si et seulement si X et Y sont soit toutes deux vraies, soit toutes deux fausses.– (X⊕Y) est vraie si et seulement si seul X ou seul Y est vraie (pas les deuxen même temps).

1.3.2 Définitions et théorèmes

Définitions (Interprétation, Modèle, Falsifie, Satisfiable, Insatisfiable, Conséquence logique, Logique-ment équivalentes) :

– Une interprétation est une fonction qui associe à toute variable propositionnelle une valeur de vé-rité. Cette fonction, dont le domaine est l’ensemble des propositions, est prolongée à l’ensemble desformules au moyen des règles de la sémantique. Le prolongement correspondant est encore appeléinterprétation.

– Un modèled’une formule est une interprétation de cette formule qui la vérifie, c’est-à-dire, qui luiassocie la valeur vraie.

– Par opposition, on dit qu’une interprétationfalsifie une formule lorsqu’elle lui associe la valeur faux.– On dit qu’une formule estsatisfiableou consistante si et seulement si il existe au moins un modèle

qui la vérifie, sinon elle estinsatisfiable.– Si tout modèle d’une formuleα est modèle d’une formuleβ alorsβ est uneconséquence logiquedeα, notéα |= β.

– Les formulesα etβ sontlogiquement équivalentes, siα |= β etβ |= α, notéα ≡ β.

Définitions (Formule valide, Tautologie) :

Lorsque la formule A est vérifiér par toutes ces interprétations, A est unetautologie. On dit aussi que Aestvalide et on notera cette assertion� A.

Théorème :(Déduction) :

Soit α et β deux formules propositionnelles, on aα |= β si et seulement siα ∧ ¬β est une formuleinsatisfiable.

7

Page 14: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 1. Le probleme SAT La logique propositionnelle

Nom ExpressionsDéfinition de⇒ A ⇒ B ⇔ ¬A ∨B

Définition de⇔ (A ⇔ B) ⇔ ((A ⇒ B) ∧ (B ⇒ A)) ⇔ ((¬A ∨B) ∧ (¬B ∨A))

Modus ponens ((A ⇒ B) ∧A) ⇒ B

Modus tollens ((A ⇒ B) ∧ ¬B) ⇒ ¬A

Contraposition (A ⇒ B) ⇔ (¬B ⇒ ¬A)

FIGURE 1.2 – Théorèmes utililes de la logique propositionelle

1.4 Formes normales

1.4.1 Définitions

Dans cette section, nous détaillons comment nous pouvons classer et distinguer differentes sortes deformules propositionnelles, on dit alors qu’elles sont sous une forme normale :

Définitions : (Littéral, Clause, Terme) :

– Un littéral est une variable propositionnelle ou bien ca négation.– Uneclauseou unedisjonction de littéraux est une formule de la forme(P1∨P2∨ ...∨Pn) ou chaquePn représente un littéral.

– Un terme ou uneconjonction de littéraux est une formule de la forme(P1 ∧P2 ∧ ...∧Pn) ou chaquePn représente un littéral.

Définitions : (NNF, DNF, CNF) :

Nous distinguons trois formes normales particulières :– Une formule propositionnelle est dite sousforme normale négative(NNF pour "Negative Normal

Form") si elle est exclusivement constituée de conjonctions, de disjonctions et de littéraux.– Une formule propositionnelle est dite sousforme normale disjontive (DNF pour "Disjonctive Normal

Form") si c’est une disjonction de termes.– Une formule propositionnelle est dite sousforme normale conjonctive (CNF pour "Conjonctive

Normal Form") si c’est une conjonction de clauses.

Propriété : Pour toute formule de la logique propositionnelle, il existe une formule équivalente sousforme normale.

8

Page 15: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

1.4. Formes normales

1.4.2 Le problème SAT

Le terme SAT est repris de l’anglais :boolean SATisfiability problem.

Définition : (Le problème SAT) :

Le problème SAT est le problème de décision qui consiste à savoir si une formule sous forme normaleconjonctive possède ou pas un modèle (si elle est satisfiable).

Ce problème est très important en théorie de la complexité et a de nombreuses applications en plani-fication classique, model checking, diagnostic, ...

9

Page 16: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2

Les logiques modales

Sommaire

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.1.1 Pourquoi une logique modale ?. . . . . . . . . . . . . . . . . . . . . . . 10

2.1.2 Vocabulaire de la logique modale. . . . . . . . . . . . . . . . . . . . . . 11

2.2 La sémantique de Kripke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.2.1 Notions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.2 Sémantique de la logique modale normale minimale : Le système K . . . 15

2.3 Classification des systèmes de logique modale. . . . . . . . . . . . . . . . . . 162.3.1 Notions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3.2 Relations dans la classification des systèmes. . . . . . . . . . . . . . . . 17

2.4 Correspondance, complétude et exemples. . . . . . . . . . . . . . . . . . . . 182.4.1 Correspondance et complétude. . . . . . . . . . . . . . . . . . . . . . . 18

2.4.2 Exemples et réflexion. . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.1 Introduction

La logique modale est une logique à laquelle on a ajouté des modificateurs, qu’on pourrait com-prendre en language naturel comme des adverbes. En d’autres termes,le nom de la logique modale pro-vient du fait que les systèmes logiques correspondants font intervenir des opérateurs de modalité portantsur les propositions et formules : la modalité modifie un fait énoncé par une proposition en le présentantcomme nécessaire, possible ou vraie de fait. « Il est nécessaire que Paul vienne » est par exemple laproposition « Paul vient » modifiée par le concept de nécessité. La catégorie de modalité joue un rôle enlogique et ce tout particulièrement dans le cadre des logiques modales.

2.1.1 Pourquoi une logique modale ?

Les chercheurs qui ont travaillé dans le domaine des logiques classiquesont mis en évidence l’inapti-tude de ce formalisme à modéliser et à résoudre un certain nombre de problèmes. Ce fait a engendré l’éla-boration d’autres systèmes logiques que l’on appelle généralement logiques non classiques. La logiquemodale fait partie d’une longue tradition philosophique qui ne cesse d’attirer l’attention des philosophes.Cependant, son domaine déborde maintenant très largement l’étude traditionnelle de la possibilité et de

10

Page 17: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

2.1. Introduction

la nécessité pour rejoindre celle d’opérateurs logiques qui apparaissent par exemple dans l’étude desfondements de la géométrie, de ceux de l’arithmétique ou encore de ceux de l’informatique théorique.

Le premier fut sûrementAristote, ses ecrits les plus cités dans le domaine de la logique modale sontceux du livre De l’Interprétation, ch. 12 et 13, et certains paragraphes des Premiers Analytiques consa-crés aux syllogismes modaux[Ari59]. Dans De l’Interprétation, Aristote entame une discussion assezformelle des liens logiques entre :

– il est possible que (δυνατν ξστι)– il est impossible que (αδυνατν ξστι)– il est nécessaire que (αναγκαιν ξστι)– il n’est pas nécessaire que (µη αναγκαιν ξστι)

La discussion s’articule sur la négation de ces expressions et on y reconnaît très clairement les pairescontradictoires. Les travaux deC. I. Lewisau début de ce siècle proposent dans le style axiomatique desPrincipia Mathematica[Lew70] des calculs logiques censés représenter la déductibilité logique. Il fautattendre les travaux deS. Kripke(1963) pour voir apparaître une sémantique suffisamment générale. Lesméthodes axiomatiques et sémantiques font jaillir une grande diversité de systèmes et de significationsqui se rattachent à l’idée de nécessité. Une bonne partie de ce paragraphe s’appuie sur les écrits de[Luc85] et [LSS77].

2.1.2 Vocabulaire de la logique modale

C’est donc dans cette optique, que l’on a défini diverses logiques, sur-ensembles de la logique clas-sique, par adjonction de nouveaux opérateurs unaires, dit modalités :

Définition (Syntaxe de la logique modale) :

– � ou L, marquant lanécessité.– ♦ ou M, marquant lapossibilité.– Tous les éléments du vocabulaire de la logique propositionnelle sont aussides éléments du vocabulaire

de la logique modale.

Ici, nous parlons de la logique modale classique (ou aristotélicien, ou aléthique), qui est la plus com-mune, nous expliquerons dans la suite de ce chapitre les différentes logiques modales, celle ci étant laplus primitive. On a alors ce tableau de correspondance significative suivante avec P étant une formulede la logique modale :

Formule Signification�P P est nécessaire♦P P est possible¬♦P P est impossible¬�P P est contingent

FIGURE 2.1 – Signification lexicale de Box et Diamond dans la logique modale classique.

11

Page 18: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. Les logiques modales

On peut affecter chacun de ces opérateurs d’une infinité de significations suivant les différentes lo-giques modales, nous en etudierons certaines dans la suite de ce manuscrit:

Lectures pour�A Lectures pour♦B Logique modale associéIl est nécessaire que A Il est possible que A Classique

Il sera toujours vrai que A Il sera parfois vrai que A EpistémiqueIl est su que A L’inverse de A n’est pas su Epistémique

Il est connu que A L’inverse de A n’est pas connu EpistémiqueIl est équitable que A Il est juste que A Déontique

Il est obligatoire que A Il est permis que A DéontiqueIl faut que A Il est permis que A Déontique

On a tout le temps A un jour on a A TemporelToute exécution du programmeIl y a une exécution du programme Dynamique

Produit le résultat A Qui produit le résultat A DynamiqueIl est cru en A Ne pas croire en A Doxastique

FIGURE 2.2 – Lectures pour les opérateurs modaux.

La figure2.3est ce qu’on appelle un carré modal d’aprèsAfgars(2007), dans les rectangles, P repre-sente une formule de la logique modale.

FIGURE 2.3 – Carré de la logique modale.

Comme nous l’avons déjà vu, le language de la logique modale utilise deux symboles supplémen-taires,� et♦, qui sont respectivement appelés opérateur modal universel et opérateur modal existentiel.

Définition (Formules bien formées de la logique modale) :

– Toutes formules bien formées de la logique propositionnelle sont aussi des formules bien formées dela logique modale.

– Si P est une formule, alors�P et♦P sont des formules.

12

Page 19: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

2.2. La sémantique de Kripke

2.2 La sémantique de Kripke

Nous allons maintenant définir les notions de mondes possibles, de cadre deKripke et de modèlede Kripke défini parSaul Kripke, il en fait référence dans ses premiers textes dans [Kri59] en 1959à19 ans. Ce sont ces notions qui donneront une sémantique à la logique modale. Un modèle de Kripkeest fondé sur un univers de mondes possibles, c’est-à-dire que ce modèle qui réalise la logique n’estpas constitué d’un seul ensemble, mais il se subdivise en "mondes" entre lesquels il existe une relationd’accessibilité.Dans certains ouvrages, ces mondes possibles sont appelés "points".

2.2.1 Notions

Définition (Mondes possibles) :

Soit un ensemble infini demondes possiblesnotéWn ,Wn interprète les propositions atomiques par lastipulation aux mondes possibles où elles sont vraies et, par omission, à ceuxoù elles sont fausses.

De plus, une formule est vraie dans un monde possibleα si et seulement siα ∈ Wn, c’est-à-dire quece monde doit être présent dans l’ensemble des mondes possibles deWn.Cela nous mène à une définitionprécise d’un cadre et modèle :

Définition (Cadre de Kripke) :

Un cadre (ou structure) de Kripke est un couple (W, R), où W est un ensemble de mondesWn appeléparfois univers et où R est une relation binaire sur ces mondes. R est appelée la « relation d’accessibilité» du cadre. Un cadre de Kripke définit donc quels mondes sont accessibles depuis chacun des mondesdu cadre. Un cadre de Kripke est habituellement représenté sous la forme d’un graphe orienté dont lesmondes sont les sommets et dont la relation d’accessibilité définit les arcs.

FIGURE 2.4 – Cadre (ou structure) de Kripke.

Ainsi,dans la figure2.4, lesWn représentent ces mondes possibles définis précédemment, tandisque les flèches représentent la relation d’accessibilité. On peut remarquer comme la définition le precisequ’un monde peut-être accessible depuis lui-même. Nous allons à présent définir un modèle de Kripke.

13

Page 20: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. Les logiques modales

Définition (Modèle de Kripke) :

Un modèle de Kripke est un triplet (W, R, h) où W est un ensemble de mondes dit univers, Rune relation binaire dite d’accessibilité et h une fonction de valuation sur les atomes d’un languagepropositionnel. Pour chaque proposition p, h(p) est l’ensemble des mondes de W où p est vraie.

h : Atome(L)→ ℘(W) où℘(W) est l’ensemble des parties de W.

Les propriétés de la relation d’accessibilité qui définissent un cadre de Kripke sont intimement liéesaux axiomes de la modalité qui doit y trouver sa sémantique : n’importe quel cadre de Kripke ne peut passymboliser n’importe quelle logique modale. De plus, un cadre de Kripke ne peut pas définir seul unelogique modale : Il faut ajouter certaines règles. Un modèle de Kripke est donc un cadre de Kripke oùpour chaque monde on connait la valeur des propositions atomiques d’un language modal comme nousmontre la figure2.5. Un cadre de Kripke peut donc être commun à plusieurs modèles de Kripke distincts(disposant chacun d’une fonction de valuation h spécifique).

FIGURE 2.5 – Modèle de Kripke.

14

Page 21: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

2.2. La sémantique de Kripke

2.2.2 Sémantique de la logique modale normale minimale : Le système K

Pour définir sémantiquement une logique modale, nous avons donc besoin de spécifier un modèle deKripke et d’ajouter certaines règles : il y a d’ailleurs une correspondance relationnelle entre ces règles etdes modèles de Kripke que nous définirions dans la suite de ce manuscrit.

Définition (Règles sémantiques de la logique modale normale minimale : le systemes K) :

Une logique modale normale obéit au moins à ces quatre règles, ce sont les règles dusysteme Kquereprésente la figure2.6.

Type Nom Expressions ExplicationAxiome K �(A⇒B)⇔(�A⇒ �B) Distribution de Kripke.

Théoreme PL Logique propositionnelle Admet tout les théorèmes de la logique propositionnelle.Règle d’inférence RN A

�ADe A on déduit�A.

Règle d’inférence MP A⇒B,AB

De A et de A⇒B, on déduit B.

FIGURE 2.6 – Règles sémantiques d’une logique modale normale minimale : Le systemes K

On peut noter que la formule de Kripke, ou formule de distribution est valide dans tout cadre deKripke, quelle que soit sa relation d’accessibilité. PL, désigne simplement le fait que tous les théorèmesde la logique propositionnelle sont admis comme théorèmes pour le sytème K, c’est-à-dire, toute tautolo-gie de la logique propositionnelle. Un petit rappel sur les notions d’axiomes et de règles d’inférences estqu’un axiome doit être vu comme un théorème, par contre, une règle d’inférence doit être vue comme unefonction qui prend plusieurs formules (numérateur de la "division") et rend une formule (dénominateurde la "division"). Ces paramètres sont nommés "prémisses", sa valeur deretour est nommée "conclu-sion". De ce fait, si l’ensemble des prémisses est vide, alors la conclusionest appelée un théorème ouaxiome.Ici, RN (Rule Necessitation) et MP désignent respectivement la règle de nécessitation et le Mo-dus Ponens (règle du détachement ou de déduction)

En plus de ces règles, il convient aussi de définir la sémantique dans un cadre de Kripke précé-demment expliqué, plus particulièrement dans un modèle de Kripke. C’est ainsi que nous définisons leN-modèle, comme étant le modèle de Kripke de la logique modale K, le N-modèle est donc un triplet(W,R,h). Ainsi,|=K

α A est equivalent à dire que A est vrai dans le mondeα pour le N-modèle. Un modèleainsi spécifié est parfois appelé univers, nous énonçons donc les conditions de vérité du N-modèle :

15

Page 22: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. Les logiques modales

Définition (Sémantique du modèle de Kripke des logiques modales normales (N-modèle)) :

– (1) |=Kα P si h(w,P) =⊤ et P est une variable propositionnelle ou atome.

– (2) |=Kα ⊤.

– (3) 2Kα ⊥.

– (4) |=Kα ¬A si et seulement si,2K

α A.– (5) |=K

α A∧B si et seulement si,|=Kα A et |=K

α B.– (6) |=K

α A∨B si et seulement si,|=Kα A ou |=K

α B.– (7) |=K

α A⇒B si et seulement si, si|=Kα A alors|=K

α B.– (8) |=K

α A⇔B si et seulement si,|=Kα A si et seulement si|=K

α B.– (9) |=K

α �A si et seulement si, pour tout mondeβ de l’univers K tel queαRβ et |=Kβ A.

– (10)|=Kα ♦A si et seulement si, pour certain(s) monde(s)β de l’univers K tel queαRβ et |=K

β A.

Nous avons numéroté ces règles pour pouvoir les appeler dans les prochaines sections de ce chapitre.En réalité, ce N-modèle est un modèle valable pour toutes les logiques modales normales, c’est pourquoinous l’avons appelé ainsi. Il en convient alors que le syteme K fait partie des logiques modales normales,que nous allons définir ci-après.

2.3 Classification des systèmes de logique modale

2.3.1 Notions

Les systèmes des logiques modales sont organisés en fonction des règlesd’inférence et des axiomesqui les caractérisent.

Définition (Logique modale classique) :

Une logique modale classiqueest une logique modale contenant comme axiome ou théorème la dualitéde l’opérateur modal♦, c’est-à-dire, contenant la règle♦A ⇔ ¬�¬B et l’inférence :

A⇔B�A⇔�B

Le plus faible système classique est parfois appelé E et est non-normal.

Définition (Logique modale régulière) :

Une logique modale régulière (ou ordinaire) est une logique modale contenant comme axiome ou théo-rème la dualité de l’opérateur modal♦, c’est-à-dire, contenant la règle♦A ⇔ ¬�¬B et l’inférence :

(A∧B)⇒C

(�A∧�B)⇒�C

16

Page 23: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

2.3. Classification des systèmes de logique modale

Définition (Logique modale normale) :Une logique modale normale est une logique modale contenant comme axiome ou théorème la dualitéde l’opérateur modal♦, c’est-à-dire, contenant la règle♦A ⇔ ¬�¬B et l’inférence :

(A1∧...∧An)⇒B

(�A1∧...∧�An)⇒�B

Une définition équivalente et plus courante du système normale est de le définir avec les règles du systèmeK qui est le plus faible des systèmes normaux que nous rappelons :

Type Nom Expressions ExplicationAxiome K �(A⇒B)⇔(�A⇒ �B) Distribution de Kripke.

Théoreme PL Logique propositionnelle Admet tous les théorèmes de la logique propositionnelle.Règle d’inférence RN A

�ADe A on déduit�A.

Règle d’inférence MP A⇒B,AB

De A et de A⇒B, on déduit B.

2.3.2 Relations dans la classification des systèmes

On peut s’apercevoir, que toutes ces classes de logique modale sont intimement liées par une règled’inférence qui se tranforme de classe en classe pour se complexifier et ainsi séparer les sortes de logiquesmodales, la figure2.7en montre le sens.

FIGURE 2.7 – Classification des systèmes de logique modale

Pour conclure, chaque logique modale normale est donc régulière et classique. Nous allons mainte-nant étudier plus en détail la relation d’accessibilité à l’intérieur du modèle de Kripke.

17

Page 24: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. Les logiques modales

2.4 Correspondance, complétude et exemples

2.4.1 Correspondance et complétude

Comme nous l’avons vu dans les pages précédentes, une logique modale doit trouver sa sémantiquedans un modèle de Kripke et dans des règles données. Or, n’importe quel modèle de cadre de Kripke nepeut pas symboliser n’importe quelle règle. On peut faire correspondrecertaines formules de la logiquemodale à une priorité de la relation d’accessibilité.Henry Sahlqvisten1973dans [Sah73] a donné unecorrespondance précise entre certains types de formules et l’expression en logique du premier ordre depropriétés sur la relation d’accessibilité liée à un modèle :

Nom Formule Relation en logique du1e ordre Nom de la relationD �A ⇒ ♦A ∀w ∈ W, ∃w′ ∈ W,wRw′ SerialT �A ⇒ A ∀w ∈ W,wRw RéflexiveB A ⇒ �♦A ∀w,w′ ∈ W,wRw′ ⇒ w′Rw Symétrique4 �A ⇒ ��A ∀w,w′, w′′ ∈ W,wRw′etw′Rw′′ ⇒ wRw′′ Transitive5 ♦A ⇒ �♦A ∀w,w′, w′′ ∈ W,wRw′etwRw′′ ⇒ w′Rw′′ Euclidien

FIGURE 2.8 – Principales formules de Sahlqvist

Le théorème de Sahlqvist dit que tout système de logique modale normale, construit avec l’axiomede Kripke et un ensemble d’axiomes choisis parmi les formules de Sahlqvist, est fortement complet pourles cadres de Kripke caractérisés par les propriétés du premier ordre associées aux formules choisies.Ce n’est pas ici le sujet d’étudier ce théorème, nous rajoutons juste que ce n’est pas la seule façon derépondre à une complétude, et qu’on peut le faire pour chaque logiquemodale normale, une par une.

18

Page 25: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

2.4. Correspondance, complétude et exemples

2.4.2 Exemples et réflexion

Nous améliorons notre carré de la logique modale, en montrant dans des diagrammes, la significa-tion dans des mondes possibles,Pn représente alors les relations d’accessibilités de la représentationsyntaxique de P dans le rectangle avec un ensemble de mondes W et de ce fait, la couleur orange repré-sente lesPn accessible a W, qui contient l’ensemblePn.

FIGURE 2.9 – Carré de la logique modale améliorée.

Nous reprenons ici l’exemple de la figure2.5 de la page14 représentant à présent notre N-modèledéfini précédemment avec sa sémantique compléte :

FIGURE 2.10 – Modèle de Kripke.

19

Page 26: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. Les logiques modales

Nous pouvons en déduire quelques formules valides dans les mondes possibles correspondants, onparle bien ici de formule valide pour un monde donné, ce n’est pas la même chose qu’une formule validepour une logique modale que nous définirons dans la prochaine section, lorsque je fais appel à certainesrègles, il s’agit de celles de la sémantique de notre N-modèle de la définition (Sémantique du modèle deKripke des logiques modales normales (N-modèle)) de la page16 :

|=KW1

¬α

Parceque¬α est contenue dansW1 (règle 1)

|=KW1

��α

En effet, le seul monde accesible deW1 estW2, d’après la (règle 9), on a donc :|=K

W1��α ⇔ |=K

W2�α

Pour conclure|=KW2

�α est vraie car dans tous les mondes accesiblesdeW2 (W3, W4 etW5), on a|=K

W3α, |=K

W4α

et |=KW5

α, c’est encore la (règle 9) finalisée par la (règle 1).

|=KW5

�α

Car tous les mondes accessibles depuisW5 contiennentα (règle 9).

|=KW5

♦α

CarW5 a accès a un certain mondeW5 (lui-même) qui contientα (règle 10).

Nous avons donc là, une explication à la compréhension d’une logique modalepar le biais d’unexemple simpliste. Nous allons maintenant nous étendre sur une logique modale bien précise : le systémeS5.

20

Page 27: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 3

La logique modale S5

Sommaire

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.1.1 Sémantique de S5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.1.2 Représentation de la sémantique. . . . . . . . . . . . . . . . . . . . . . 22

3.2 Démonstration de théorèmes et d’inférences de S5. . . . . . . . . . . . . . . 22

3.2.1 Validité d’une expression dans S5. . . . . . . . . . . . . . . . . . . . . 22

3.2.2 Théorèmes utiles de S5. . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.3 Exemples de démonstrations utiles. . . . . . . . . . . . . . . . . . . . . 24

3.1 Introduction

3.1.1 Sémantique de S5

Nous allons examiner la nécessité et la possibilité dans S5 d’un point de vue axiomatique. Pour cela,nous admettons comme axiomes (ou théorèmes de base) et règles d’inférence toutes les expressions dela forme suivante :

Nom Expressions ExplicationK �(A ⇒ B) ⇒ (�A ⇒ �B) Distribution de Kripke.T �A ⇒ A La nécessité implique le fait.5 ♦A ⇒ �♦A La possibilité implique la nécessité de la possibilité.

Def♦ ♦A ⇔ ¬�¬A Définition de♦ avec�.PL Logique propositionnelle Admet tout les théorèmes de la logique propositionnelle.RN A

�ARègle d’inférence de la nécessitation.

MP A⇒BetAB

Règle d’inférence de la déduction.

FIGURE 3.1 – Règles sémantiques de la logique modale S5

21

Page 28: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 3. La logique modale S5

3.1.2 Représentation de la sémantique

Dans le système S5, nous avons besoin que la sémantique des règles énoncées précédemment coïn-cident avec la relation d’accessibilité comme nous l’avons analysé dans le chapitre 2 (Correspondance,complétude et exemples) avec les formules de Sahlqvist de la figure2.4.1: il s’agit donc d’une séman-tique à caractère euclidien : réflexivité, transitivité, symétrie. En logique dupremier ordre, cela revient àdire, que nous sommes en présence d’une relation d’équivalence qui peut se définir comme une relationbinaire réflexive et circulaire. c’est grâce à cela, que notre logique modale S5 est plus facile a manier : il ya moins de contraintes dans l’accessibilité entre les mondes. Nous pouvons donc schématiser le systèmeS5 dans un modèle de Kripke où nous pouvons distinguer la différence avec le systeme K et percevoir lecaractère euclidien comme suit :

FIGURE 3.2 – Modèle de Kripke d’un système S5

3.2 Démonstration de théorèmes et d’inférences de S5

3.2.1 Validité d’une expression dans S5

Définition (Expression valide dans S5) :

Une expression A est valide si et seulement si A est vraie dans tous les mondes possibles de tous lesmodèles de la logique S5, noté|=A, ou plus précisément|=S5

α A.

Par exemple,�A ⇒ A est valide maisA ⇒ �A ne l’est pas. Comme l’exemple dans la fin duchapitre 2, lorsque je fais appel à certaines règles, il s’agit de celles dela sémantique de notre N-modèlede la définition (Sémantique du modèle de Kripke des logiques modales normales (N-modèle)) de lapage16qui est valable pour la logique modale S5.

Axiome T :�A ⇒ A : La nécessité implique le fait. Il faut donc montrer que|=S5

α �A ⇒ A dans tous les mondes possiblesα et tous les modèles de S5.Supposons un modèle M de S5.

Montrons|=Mα �A ⇒ A Par la (règle 7).

Si |=Mα �A alors|=M

α A Supposons|=Mα �A et par la (règle 9).

|=Mβ A dans tous les mondes possiblesβ de M En particulier pour unα ∈ β de M.|=M

α A : On a donc bien|=Mα �A ⇒ A .

22

Page 29: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

3.2. Démonstration de théorèmes et d’inférences de S5

3.2.2 Théorèmes utiles de S5

Nom Expressions ExplicationK �(A ⇒ B) ⇒ (�A ⇒ �B) Distribution de Kripke.D �A ⇒ ♦A Ce qui est nécessaire est possible.T �A ⇒ A La nécessité implique le fait.B A ⇒ �♦A Le fait implique le nécessairement possible.4 �A ⇒ ��A Ce qui est nécessaire est nécessairement nécessaire.5 ♦A ⇒ �♦A La possibilité implique la nécessité de la possibilité.

T♦ A ⇒ ♦A Le fait implique la possibilité.B♦ ♦�A ⇒ A Ce qui est possiblement nécessaire implique le fait.4♦ ♦♦A ⇒ ♦A Ce qui est possiblement possible est possible.5♦ ♦�A ⇒ �A Ce qui est possiblement nécessaire est nécessaire.

Def♦ ♦A ⇔ ¬�¬A Définition de♦ avec�.Def� �A ⇔ ¬♦¬A Définition de� avec♦.

FIGURE 3.3 – Axiomes ou théorèmes utiles de S5

Nom ExpressionsRN A

�A

MP A⇒BetAB

RM A⇒B�A⇒�B

RE A⇔B�A⇔�B

FIGURE 3.4 – Règles d’inférences utiles de S5

23

Page 30: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 3. La logique modale S5

3.2.3 Exemples de démonstrations utiles

Chaque théorème ou règle d’inférence utile peut-être prouvés à partir des axiomes de base ou d’autresthéorèmes et règles d’inférence déjà démontrées :

Preuve de RM : A⇒B�A⇒�B

1 :On aA ⇒ B Hypothèse.2 :�(A ⇒ B) RN sur 1.

3 :�(A ⇒ B) ⇒ (�A ⇒ �B) K.4 :�A ⇒ �B MP sur 2 et 3.

Il est ensuite trivial de prouver RE :A⇔B�A⇔�B

grâce a RM.

Preuve de T♦ : A ⇒ ♦A

1 :�¬A ⇒ ¬A T en prenant¬A.2 :A ⇒ ¬�¬A PL sur 1.

3 :♦A ⇔ ¬�¬A Def♦.4 :A ⇒ ♦A PL sur 2 et 3.

Preuve de D :�A ⇒ ♦A

1 :�A ⇒ A T.2 :A ⇒ ♦A T♦.

3 :�A ⇒ ♦A PL sur 1 et 2.

Preuve de B :A ⇒ �♦A

1 :♦A ⇒ �♦A 5.2 :A ⇒ ♦A T♦.

3 :A ⇒ �♦A PL sur 1 et 2.

Preuve de 5♦ : ♦�A ⇒ �A

1 :�A ⇔ ¬♦¬A Def�.2 :¬�A ⇔ ♦¬A PL sur 1.

3 :�¬�A ⇔ �♦¬A RE sur 2.4 :¬�¬�A ⇔ ¬�♦¬A PL sur 3.

5 :♦¬A ⇒ �♦¬A 5 en prenant¬A.6 :¬�♦¬A ⇒ ¬♦¬A PL sur 5.

7 :¬�♦¬A ⇒ �A Def� sur 6.8 :♦�A ⇔ ¬�¬�A Def♦ en prenant�A.9 :♦�A ⇔ ¬�♦¬A PL sur 4 et 8.

10 :♦�A ⇒ �A PL sur 9 et 7.

Preuve de 4 :�A ⇒ ��A

1 :♦�A ⇒ �A 5♦.2 :�♦�A ⇒ ��A RM sur 1.3 :�A ⇒ �♦�A B en prenant�A.4 :�A ⇒ ��A PL sur 2 et 3.

24

Page 31: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

3.2. Démonstration de théorèmes et d’inférences de S5

Preuve de 4♦ : ♦♦A ⇒ ♦A

1 :�¬A ⇒ ��¬A 4 en prenant¬A.2 :¬��¬A ⇒ ¬�¬A PL sur 2.3 :♦♦A ⇔ ¬�¬♦A Def♦ en prenant♦A.

4 :♦♦A ⇔ ¬�¬¬�¬A Def♦ sur 3.5 :♦♦A ⇔ ¬��¬A PL sur 4.6 :♦♦A ⇒ ¬�¬A PL sur 2 et 5.

7 :♦♦A ⇒ ♦A Def♦ sur 6.

25

Page 32: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 3. La logique modale S5

26

Page 33: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Deuxième partie

L’application

27

Page 34: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 1

Présentation du programme MLSAT

Sommaire

1.1 Présentation globale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281.1.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281.1.2 Fonctionnalité. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

1.2 Structure du programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301.2.1 Présentation de la structure. . . . . . . . . . . . . . . . . . . . . . . . . 301.2.2 Explication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321.2.3 La configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Le programme MLSAT pour "Modal Logic SAT" est l’application qui a été créée pendant toute ladurée du stage TER (du 2 avril au 11 juin 2012) dans le but d’implémenter une traduction de la logique S5en un problème de satisfiabilité (SAT). Nous decrirons, tout d’abord, dans ce chapitre les fonctionnalitésdu programme puis sa structure.

1.1 Présentation globale

Dans un premier temps, nous allons présenter ce logiciel puis ses fonctionnalités.

1.1.1 Introduction

Le programme MLSAT contient une série d’algorithmes qui se suivent, pour transformer une logiquemodale S5 en un problème de satisfiabilité (SAT). La logique modale S5 est la logique modale étudiéedans ce but, que nous avons présenté dans la premiere partie de ce rapport : l’état de l’art (chapitre3) à la page21 tandis qu’un problème de satisfiabilité (SAT) est juste une formule CNF de la logiquepropositionnelle étudiée dans cette même partie (chapitre1) à la page4. Plus précisément, l’objectifde ce programme prend en entrée une formule modale du système S5, et renden sortie une CNF de lalogique propositionnelle. Pour cela, le programme exécute plusieurs étapespour chaque formule passéeen paramètre, suivant le schéma1.1 ci-dessous, nous préciserons et analyserons chaque étape dans leprochain chapitre :

28

Page 35: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

1.1. Présentation globale

Transformation de la Boxen variables propositionnelles

Distribution manquantespéciale

Renommage des variables

Algorithme de Tseitin

Simplifications et

distributions

Construction de l'arbre

Lecture de la formule

CNF

S5

FIGURE 1.1 – Transformation de S5 à CNF d’une formule dans MLSAT

29

Page 36: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 1. Présentation du programme MLSAT

1.1.2 Fonctionnalité

Le programme MLSAT a été programmé dans le language C, pour obtenir grande une rapidité d’exé-cution, et ainsi pouvoir rivaliser avec d’autres logiciels. Le programme est capable de prendre plusieursfichiers texte en paramètre, et aussi de prendre des fichiers contenant plusieurs formules (Le séparateurd’une formule à une autre est le caractère de saut de ligne, autrement dit’\n’). Il peut aussi prendre desformules en utilisant l’entrée standard. Il s’occupe donc des fonctionnalités suivantes :

– Choix de la syntaxe d’une logique modale S5.– Vérification de la syntaxe d’une formule S5 (Formule bien formée) : un parser.– Configuration des axiomes(ou théorèmes) servant à la traduction.– Traduction d’une formule S5 en logique propositionnelle.– Traduction d’une formule en logique propositionnelle dans sa forme CNF.– Affichage de la formule en question à n’importe quel moment de la traduction.– Réecrire le résultat dans un fichier texte.

1.2 Structure du programme

Le programme se compose de 5 fichiers source et de 9 fichiers d’en-tête structurés comme le montrela figure1.2et la figure1.3.

1.2.1 Présentation de la structure

all.h*.c

FIGURE 1.2 – Structure et dépendance du programme (partie 1)

30

Page 37: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

1.2. Structure du programme

main.c

otherotherotherother

main main main main

_tree_display.h

_tree.h_io.h_unicode.h

_unicode.h _io.h _tree.h _tree_display.h

unicode.c io.c tree.c _display.ctree

FIGURE 1.3 – Structure et dépendance du programme (partie 2)

31

Page 38: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 1. Présentation du programme MLSAT

1.2.2 Explication

Les figures1.2 et 1.3 montrent les dépendances entre les fichiers source et les fichiers d’en-tête.Dans ces deux figures, les rectangles rouges et oranges représentent respectivement les fichiers sourceet les fichiers d’en-tête. De plus, les flèches bleues et vertes représentent les dépendances entre un fi-chier source et un fichier d’en-tête, ainsi, chaque flèche bleue représente une "utilisation" d’un fichierd’en-tête visé, dans le fichier source où la flèche démarre, tandis que chaque flèche verte représente une"implémentation" du fichier d’en-tête visé, dans le fichier source de départde la flèche. La figure1.2montre simplement le fait que tous les fichiers source "utilisent" le ficher d’en-tête "all.h", comme sonnom l’indique. Le fichier "all.h" contient notamment des directives du préprocesseur "♯define" et uneseule variable globale "debug".

Comme nous pouvons le remarquer, la division du code en de multiples fichiersest utilisée ici pourmieux séparer chaque tâche du programme, dans l’optique de diviser pour mieux régner. Le fichier"main.c" fait donc appel aux autres fichiers "unicode.c", "io.c" et "tree.c" pour exécuter differentes tâchesdu programme, que nous décrivons ainsi :

– "unicode.c" est utilisé pour charger en mémoire la syntaxe de la logique modale S5 qu’il va re-trouver dans le dossier "config\syntax\".

– "io.c" est utilisé pour lire un fichier ou l’entrée standard, elle traduit le fichier en une série de"token", qui representent alors les opérateurs ou les atomes.

– "tree.c" est le fichier principal du programme, il s’occupe de créer lesarbres et de faire la traductionà l’interieur de ces arbres.

– "display_tree.c" est utilisé pour afficher un arbre correctement à l’ecran, on peut noter qu’il n’estpas "utilisé" par "main.c" mais par "tree.c".

1.2.3 La configuration

Comme nous l’avons vu précèdemment, nous pouvons configurer le programme à volonté : imagi-nons qu’un logiciel tiers utilise une autre syntaxe que nous appelons pourcet exemple "new_syntax", et,de plus, nous devons faire collaborer notre travail avec ce logiciel. Il suffit alors de créer les nouveauxfichiers de configuration dans le dossier "\config", de les nommer pareillement ("new_syntax.txt") danschaque dossier de "\config", et de mettre les informations nécessaires dans chaque fichier comme expli-qué ci-dessous :

– Le fichier nouvellement créé "config\syntax\new_syntax.txt" contiendra les informations néces-saires à la syntaxe, pour exemple, de la forme VRAI=true ... EQUI=⇔.

– Les fichiers nouvellement crées "config\transform\new_syntax.txt" et"config\transform_box\new_syntax.txt" contiendra les informations nécessaires à la traduction dela logique modale S5 a PL.

On comprend maintenant pourquoi je parle de configuration à volonté, carles dossiers "transform" et"tranform_box" contiennent les axiomes et théorèmes qui feront la traduction, c’est-à-dire que l’on peutaussi les modifier, pour essayer d’autres façons de traduire, que celle que nous etudierons plus tard dansce rapport. Pour ainsi dire, le programme MLSAT, est scientifiquement adaptable à d’autres logiquesmodales normales grâce à ces fichiers de configuration.

32

Page 39: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2

La traduction

Sommaire

2.1 Les simplifications et premieres distributions . . . . . . . . . . . . . . . . . . 342.1.1 Pourquoi ce choix ?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342.1.2 Démonstration dans le système S5. . . . . . . . . . . . . . . . . . . . . 352.1.3 Le renommage des variables. . . . . . . . . . . . . . . . . . . . . . . . 36

2.2 La distribution "spéciale" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362.3 La tranformation des "Boxs" en variables propositionnelles . . . . . . . . . . 38

2.3.1 Le nombre de mondes possibles. . . . . . . . . . . . . . . . . . . . . . 382.3.2 La dernière étape pour arriver à PL. . . . . . . . . . . . . . . . . . . . . 392.3.3 Algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

2.4 La tranformation de Tseitin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402.4.1 Idée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402.4.2 Algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

La traduction d’une formule de la logique modale S5 en logique propositionnellese fait en plusieursétapes que nous décrirons précisément dans ce chapitre comme nous le montre la figure1.1du chapitre1. Nous allons maintenant présenter la premiere étape.

33

Page 40: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. La traduction

2.1 Les simplifications et premieres distributions

Une particularité de la logique modale S5 est d’être euclidienne, comme nous l’avons étudié dansl’état de l’art. De ce fait, le systéme S5 comporte plusieurs théorèmes qui facilitent sa traduction en lo-gique propositionnelle que nous énonçons ci-dessous :

Théorèmes Nom♦♦A ⇔ ♦A T1��A ⇔ �A T2♦�A ⇔ �A T3�♦A ⇔ ♦A T4

(�(P1 ∧ P2)) ⇔ (�P1 ∧�P2) Distribution du�(♦(P1 ∨ P2)) ⇔ (♦P1 ∨ ♦P2) Distribution du♦

♦A ⇔ ¬�¬A Def♦¬¬A ⇔ A Logique propositionnelle

(¬(P1 ∧ P2)) ⇔ (¬P1 ∨ ¬P2) Logique propositionnelle

FIGURE 2.1 – Théorème de S5 utiles à la traduction

Les théorèmes de la figure2.1 où A représente une formule de la logique modale quelconque sontdonc utilisés pour simplifier et faire des distributions de la première étape. L’algorithme consiste doncà parcourir l’arbre linéairement, puis pour chaque noeud de l’arbre, parcourir linéairement chaque théo-rème pour verifier s’il est inclu dans l’arbre. Si c’est le cas, il remplace simplement la partie gauche duthéorème trouvé par sa partie droite puis revient au noeud précédent. L’ordre à ici une importance, parexemple, pour distribuer le losange avant de le ramplacer par sa définition.Sa complexité est donc qua-dratique pour cette étape. Les deux distributions sont prouvées dans le livre [Che80] de Chellas, Def♦est un axiome de S5, nous prouverons T1 à T4 dans une prochaine sous-section.

2.1.1 Pourquoi ce choix ?

L’idée principale de traduction de la logique modale S5 est de se retrouver avec une formule dont les� sont toutes à côté des variables atomiques. Il s’agit ici de réfléchir au cas par cas. Ainsi, les quatrespremiers théorèmes (T1 à T4) servent tout d’abord à éliminer toute suite d’opérateurs modaux(� et♦).Puis les distributions vont permettre de mettre plus en profondeur les opérateurs modaux, et cela, encascade grâce au retour en arrière de l’algorithme lors d’une trouvaille.Nous remarquons tout de suitequ’il manque deux distributions pour pouvoir arriver à nos fins :�(P1∨P2) et♦(P1∧P2). A la fin del’étape 1, le cas♦(P1∧P2) devient donc :♦(P1∧P2) ⇔ ¬�¬(P1∧P2) ⇔ ¬�(¬P1∨¬P2). Nouspouvons en conclure que ce cas revient au cas�(P1 ∨ P2) qui devient donc le seul cas problèmatique,on appelera désormais ce cas, la distribution "spéciale".

34

Page 41: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

2.1. Les simplifications et premieres distributions

2.1.2 Démonstration dans le système S5

Preuve de T1 :♦♦A ⇔ ♦A

Preuve de♦♦A ⇒ ♦A

C’est le théorème 4♦ prouvé dans l’état de l’artPreuve de♦A ⇒ ♦♦A

1 :♦A ⇒ �♦A 5.2 :�♦A ⇒ ♦♦A D en prenant♦A.3 :♦A ⇒ ♦♦A PL sur 1 et 2.

Preuve de T2 :��A ⇔ �A

Preuve de�A ⇒ ��A

C’est le théorème 4 prouvé dans l’état de l’art.Preuve de��A ⇒ �A

1 :♦�A ⇒ �A 5♦2 :��A ⇒ ♦�A D en prenant�A.3 :��A ⇒ �A PL sur 1 et 2.

Preuve de T3 :♦�A ⇔ �A

Preuve de♦�A ⇒ �A

C’est le théorème 5♦ prouvé dans l’état de l’art.Preuve de�A ⇒ ♦�A

1 :�A ⇒ ��A 42 :��A ⇒ ♦�A D en prenant�A.3 :�A ⇒ ♦�A PL sur 1 et 2.

Preuve de T4 :�♦A ⇔ ♦A

Preuve de♦A ⇒ �♦A

C’est le théorème 5 prouvé dans l’état de l’art.Preuve de�♦A ⇒ ♦A

1 :♦A ⇒ ♦♦A 4♦2 :�♦A ⇒ ♦♦A D en prenant♦A.3 :�♦A ⇒ ♦A PL sur 1 et 2.

35

Page 42: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. La traduction

2.1.3 Le renommage des variables

Dans la suite de la traduction, nous allons ajouter des variables atomiques pour éliminer les�, enfaisant cela, nous allons renommer les variables à côté des�. Le problème est qu’une variable n’étant pasà côté d’une� ne sera pas renommeée et aura pour conséquence de ne plus être associée à ces variablesde même nom. Pour palier à ce problème, nous allons déjà renommer toutes les variables et leurs associerle premier monde possible, qui représentera le monde réel. Par exemple, la variable nommée "A" seradésormais appelée "A_1". Nous expliquerons ces mondes dans la suite dece chapitre, ceci nous permetde nous introduire sur le cas de la distribution "spéciale".

2.2 La distribution "spéciale"

Rappelons le problème : nous avons besoin de mettre les� sur les "feuilles", plus précisément, à côtédes atomes. Or, il nous manque le cas�(P1 ∨ P2) où là,� reste "bloquée". La figure2.2nous montreune formule de la logique modale S5 associant ce problème, X et Y représentent alors des sous-arbresou sous-formules quelconques tandis que A et B sont des variables atomiques.

A B

Y

X

FIGURE 2.2 – La distributions spéciale : exemple (partie 1)

L’idée de mes encadrants, pour résoudre ce problème qu’applique le programme MLSAT, est derajouter une variable atomique représentant(A ∨B), représentée formellement parN ⇔ (A ∨B), puisd’ajouter cette information dans la formule. Dans la figure2.2, nous créeons ainsi une nouvelle variablenommée N représentant(A ∨ B). On remplace(A ∨ B) par N, puis on ajoute à la racine de la formuled’origine l’informationN ⇔ (A ∨B).

36

Page 43: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

2.2. La distribution "spéciale"

∨∧

A BY

X

N

N

FIGURE 2.3 – La distributions spéciale : exemple (partie 2)

Imaginons que cette formule contienne i mondes possibles. Nous pouvons désormais enlever la�suivant cette régle :�A ⇔ (A1 ∧ ... ∧ Ai), par contre, nous devons donc ajouter l’informationAi ⇔(A ∨ B) pour tout i. La figure2.2 nous montre la décomposition de la� en plusieurs variables suivantnotre exemple des figures2.2et2.2. Pour cette distribution, il est utile de "décomposer" la� à ce momentprécis car il faut ajouter l’information à chaque fois : c’est pour cela qu’il lui faut cette algorithme précis.

37

Page 44: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. La traduction

∨∧

A BY

X

N_1

N_2 N_i

A B

⇔∨

A B

N_1

N_2

N_i

FIGURE 2.4 – La distributions spéciale : exemple (partie 3)

Tous les cas ayant été étudiés, nous pouvons désormais tranformer le reste des� car toutes les� setrouvent désormais soit déjà "décomposées" ou bien dans une "feuille".

2.3 La tranformation des "Boxs" en variables propositionnelles

Avant de pouvoir transformer une� en logique propositionnelle, nous avons besoin de connaitre lenombre de mondes possibles que contient la formule que nous traduisons. En effet, comme nous l’avonsvu dans l’état de l’art (chapitre3) à la page21, la logique modale S5 correspond à un modéle de Kripkebien précis, c’est d’ailleurs, grâce à celà, que nous pouvons diminuerle nombre de mondes possibles.

2.3.1 Le nombre de mondes possibles

Tout d’abord, situons nous dans le cas d’une logique modale normale, onpeut dire que le nombre demondes possibles est de2n avec n étant le nombre de variables : par exemple, si nous avons 2 variablesdans une formule quelconque de la logique modale nommée A et B, alors nous avons22 = 4 mondespossibles : ils sont donc dans cet exemple : [()(A)(B)(A,B)].

Ensuite, pour une logique modale normale S5, il est possible de diminuer ce nombre de mondescomme nous montre la proposition 6.2 de l’article [HM92] où la démonstration qui suit propose deprendre un modèle de Kripke avec exactement "Nombres de� + 1" mondes possibles. Ceci est dû à lasémantique à caractère euclidien de S5 : réflexivité, transitivité, symétrie.

38

Page 45: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

2.3. La tranformation des "Boxs" en variables propositionnelles

2.3.2 La dernière étape pour arriver à PL

En effet, arrivée à ce stade, il nous reste plus qu’à éliminer les� sur les "feuilles" de l’arbre quereprésentent notre formule pour atteindre une formule totalement propositionnelle. Nous ponvons dis-tinguer quatres cas précis, une feuille ne peut être composée que d’unedes manières suivantes, où Areprésente ici une variable atomique :

¬�¬A

¬�A

�¬A

�A

2.3.3 Algorithme

L’idée venant de mes encadrants, est que la� associée à une variable atomique représente uneconjonction de la valeur de sa variable dans ces mondes possibles notés icii, on a alors :�A ⇔(A1 ∧ ... ∧ Ai). On peut donc représenter la� en plusieurs variables propositionnelles suivant nosquatre cas :

¬�¬A ⇔ (A1 ∨ ... ∨Ai) R4¬�A ⇔ (¬A1 ∨ ... ∨ ¬Ai) R3�¬A ⇔ (¬A1 ∧ ... ∧ ¬Ai) R2�A ⇔ (A1 ∧ ... ∧Ai) R1

FIGURE 2.5 – Règles de transformation de la "Box"

En effet, on peut facilement démontrer ces règles à partir de R1 et des règles de la logique propo-sitionnelle : R2 est obtenue en prenant R1 avec¬A. ¬�A ⇔ ¬(A1 ∧ ... ∧ Ai) ⇔ (¬A1 ∨ ... ∨ ¬Ai),ce qui démontre R3. Enfin, par R2 nous avons�¬A ⇔ (¬A1 ∧ ... ∧ ¬Ai), puis par une série de règlesde la logique propositionnelle :¬�¬A ⇔ ¬(¬A1 ∧ ... ∧ ¬Ai), ¬�¬A ⇔ (¬¬A1 ∨ ... ∨ ¬¬Ai), et¬�¬A ⇔ (A1 ∨ ... ∨Ai), démontre R4.

L’agorithme consiste donc à reparcourir l’arbre pour changer les� en ces variables qui représententalors les mondes possibles. Le résultat final nous donne une formule de lalogique propositionnelle, oùles mondes de la sémantique de Kripke, sont anotés par des numéros sur lesvariables atomiques.

39

Page 46: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Chapitre 2. La traduction

2.4 La tranformation de Tseitin

Nous pouvons passer de notre logique propositionnelle en une forme CNFgrâce à la trasformationdeTseitinqui est en temps et espace linéaire (1968).

2.4.1 Idée

L’idée donnée parTseitinest d’iintroduire une nouvelle variable propositionnelle pour chaque sous-formule afin de représenter sa valeur de vérité. Puis d’axiomatiser la relation entre la satisfaction d’une(sous-)formule et la satisfaction de sa sous-formule immédiate, via des clauses CNF.

2.4.2 Algorithme

Étant donné une formule propositionnelleα, il faut générer une CNFη comme suit :– Pour chaque sous-formuleβ deα, prendre une nouvelle variable propositionnelle [β].– traduire l’opérateur principal de chaque sous-formuleβ suivant :

– Siβ = β1 ∨ β2, traduire par(¬[β] ∨ [β1] ∨ [β2]) ∧ ([β] ∨ ¬[β1]) ∧ ([β] ∨ ¬[β2]).– Siβ = β1 ∧ β2, traduire par(¬[β] ∨ [β1]) ∧ (¬[β] ∨ [β2]) ∧ ([β] ∨ ¬[β1] ∨ ¬[β2]).– Siβ = ¬β1, traduire par(¬[β] ∨ [β1]) ∧ ([β] ∨ [β1]).– Siβ est une variable propositionnelleν, traduire par(¬[β] ∨ ν) ∧ ([β] ∨ ¬ν).

– rassembler tous les fragments CNF ainsi obtenus, les lier par∧.

40

Page 47: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Conclusion

L’objectif principal de ce stage a été réalisé : ce stage demandait énormément de travail, dont j’aipu en faire une bonne partie, surtout au niveau de la programmation : le programme MLSAT répondlargement aux critères demandés, et on peut, grâce à lui, étudier différentes heuristiques pour le test desatisfiabilité en logique modale. Ici, nous avons étudié une seule manière de traduire avec MLSAT, maisil est désormais possible d’étendre MLSAT dans le but d’en étudier d’autres.

Il est sur, qu’il reste enormément de travail a réaliser dans les objectifsde ce stage : les logiquesmodales normales autres que S5 puis les tests afin de vérifier si notre approche est meilleure que celle(s)existante(s) sont un commencement. Cela n’empêche pas que je suis satisfaitdu travail fourni et du tempsque j’y ai consacré : parceque une approche heuristique avec mes encadrants a été étudiée et que ce stagepermet le commencement d’une étude plus approfondie du sujet, avec des bases, un programme, et pourtoutes les connaisances que ce stage m’a apporté notament en logique.

Le sujet de ce stage : Méthodes efficaces de raisonnement en logique modale est un sujet qui m’aparticuliérement intéressé. En effet, pour moi, les logiques modales peuvent être le coeur de l’intelligenceartificielle.

41

Page 48: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Bibliographie

[Ari59] A RISTOTE. De l’interprétation. Bibliothèque des textes philosophiques. Librairie Philoso-phique J. Vrin, 1959.2.1.1

[Boo54] G. BOOLE. An Investigation of the Laws of Thought : On which are Founded the MathematicalTheories of Logic and Probabilities. George Boole’s collected logical works. Walton andMaberly, 1854.1.1.2

[Che80] B.F. CHELLAS. Modal Logic : An Introduction. Cambridge University Press, 1980.(document), 2.1

[FK09] L. FRÉCON et O. KAZAR. Manuel d’intelligence artificielle. METIS LyonTech. Pressespolytechniques et universitaires romandes, 2009.(document)

[GHR98] D.M. GABBAY , C.J. HOGGER, et J.A. ROBINSON. Handbook of Logic in Artificial Intelli-gence and Logic Programming : Logic Programming. Handbook of Logic in Artificial Intel-ligence and Logic Programming. Clarendon Press, 1998.(document)

[Gré90] E. GRÉGOIRE. Logiques non monotones et intelligence artificielle. Langue, Raisonnement,Calcul. Hermès, 1990.(document)

[HM92] Joseph Y. HALPERN et Yoram MOSES. « A guide to completeness and complexity for modallogics of knowledge and belief ».Artif. Intell., 54(3) :319–379, avril 1992.(document), 2.3.1

[Jab08] Said JABBOUR. « De la satisfiabilité propositionnelle aux formules booléennes quantifiées».PhD thesis, CRIL, Lens, France, 2008.(document)

[KR00] B.W. KERNIGHAN et D.M. RITCHIE. Le Langage C : Norme ANSI. Informatiques. SérieLangages. Dunod, 2000.

[Kri59] Saul Aaron KRIPKE. "Semantical Analysis of Modal Logic" (abstract). The Journal of Sym-bolic Logic, 24 (1959), pp.323-324, 1959.2.2

[Lag11] Jean-Marie LAGNIEZ. « Satisfiabilité propositionnelle et raisonnement par contraintes : mo-dèles et algorithme». PhD thesis, CRIL, Lens, France, dec 2011.(document)

[Lew70] C.I. LEWIS. Collected Papers. Stanford University Press, 1970.2.1.1

[LSS77] E.J. LEMMON, D.S. SCOTT, et K. SEGERBERG. An introduction to modal logic : the Lemmonnotes. American philosophical quarterly monograph series. B. Blackwell, 1977. 2.1.1

[Luc85] Thierry LUCAS. Revue Philosophique de Louvain, Volume 83, Numéro 60, p585. 1985.2.1.1

[Maz95] Bertrand MAZURE. « Expérimentations, analyse et améliorations des méthodes de résolutiondu problème SAT », jul 1995.

[Maz99] Bertrand MAZURE. « De la satisfaisabilité à la compilation de bases de connaissances pro-positionnelles». PhD thesis, CRIL, Lens, France, jan 1999.(document)

[Sah73] H. SAHLQVIST. Completeness and Correspondence in the First and Second Order Semanticsfor Modal Logic. Universitetet i Oslo, 1973.2.4.1

42

Page 49: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

[Tha89] A. THAYSE. « Approche Logique de l’Intelligence Artificielle», volume 2. Dunod, Paris,France, 1989. dirigé par A. Thayse.1.1.1

43

Page 50: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Bibliographie

44

Page 51: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

Résumé

Les applications de la logique modale sont nombreuses : elles sont liées aux raisonnements sur lesprogrammes, à la sécurité dans leurs résolutions, aux logiques non monotones, aux problèmes de logiqueépistémique, déontique, temporelle, doxastique et dynamique. En d’autres termes, à un grand nombrede problèmes associés à la formalisation du raisonnement en intelligence artificielle. Ce rapport de stageporte sur les méthodes efficaces de raisonnement en logique modale. Le but a été principalement de trans-former une logique modale normale S5 en logique propositionnelle puis en un problème de satisfiabilité(SAT).

Mots-clés:SAT, Logique modale

45

Page 52: M´ethodes efficaces de raisonnement en logique … › ~szczepanski › res › Methodes...M´ethodes efficaces de raisonnement en logique modale RAPPORT DE STAGE pr´esent´e le

46