Next Contents

1  Introduction et motivation

Les logiques modales, dont les logiques temporelles sont des cas particuliers, ont été proposées au début du vingtième siècle par Clarence Lewis [Lew18]. Lewis n'était pas satisfait de l'implication matérielle de la logique classique, et a exploré une autre variété de logiques, où un nouvel opérateur (``box'') est utilisé. Au départ, F signifiait ``il est nécessaire que F'', et ¬¬F, aussi noté àF, signifiait ``il est possible que F''. Lewis a ensuite proposé plusieurs ensembles de règles pour les nouveaux connecteurs, et a discuté leurs significations intuitives possibles.

Certaines de ces interprétations relèvent de réflexions philosophiques sur la notion de conséquence et d'implication. Considérer par exemple la formule (F)Þ F. Si nous interprétons F comme ``A sait que F est vraie'', alors F Þ F signifie ``Si A sait que F est vraie, alors F est vraie''; si ceci est le cas pour tout F, cette formule affirme que A ne fait pas d'erreur. La logique qui en résulte est appelée une logique de la connaissance. Ces logiques peuvent aussi modéliser le raisonnement temporel : si F signifie ``dans tous les futurs possibles, F'' (ou ``à partir de maintenant, F''), alors (F)Þ F dit que chaque fois que F est vraie à partir d'un certain instant, alors elle est vraie à cet instant précis aussi.

Dans ces interprétations, la formule FÞF n'est pas vraie en général. Par exemple, dans l'interprétation temporelle, FÞF signifie que si F est vraie à un instant, alors elle restera toujours vraie après coup.

D'un autre côté, si nous avons prouvé F dans un système modal, nous pourrons en déduire F. Intuitivement, si F est prouvée, alors elle est toujours vraie. (C'est la raison pour laquelle se lit ``nécessairement''.) Autrement dit, si F est prouvée, alors elle est vraie à tout instant, donc dans tous les futurs de tous les instants. Le fait surprenant que l'on puisse déduire F de F, mais que FÞF ne soit pas valide veut dire que l'implication Þ et la conséquence |- ne coïncideront pas dans les logiques modales; autrement dit, le théorème de la déduction ne sera pas vérifié.

Pourquoi nous intéressons-nous à de telles logiques ? Laissant de côté les considérations philosophiques, les logiques modales et en particulier les logiques temporelles ont fait leurs preuves en tant que langages suffisamment expressifs, tout en restant décidables, pour exprimer des spécifications de modèles de calcul séquentiels et parallèles, et grâce auxquels la vérification d'une réalisation informatique par rapport à une spécification est décidable par des techniques simples à base d'automates. D'un point de vue logique, il est aussi intéressant d'explorer les rapports entre les logiques modales et non modales (comme la logique intuitionniste), pour mieux comprendre ce qui les rapproche. Finalement, les logiques modales ont été utilisées dans la formalisation des logiques non monotones, dont le but est de modéliser des affirmations comme ``en général, F est vraie'' qui puissent survivre à la découverte de cas particuliers où F ne serait pas vraie.

Nous étudions maintenant ces aspects des logiques modales. Nous étudions d'abord la logique modale S4 en section 2, et illustrons sur cet exemple la formalisation des logiques non monotones. Nous choisissons S4 parce qu'elle est une des logiques modales les plus simples et les plus intéressantes, et aussi parce que c'est une logique temporelle. Ceci nous mènera naturellement à l'étude de logiques temporelles servant à la spécification de propriétés de systèmes de transitions en section 3, et de méthodes de vérification qu'un système de transitions satisfait une spécification dans ces logiques, la vérification de modèle (en anglais, ``model-checking'').

Le lecteur qui s'intéresse aux aspects logiques des logiques modales est prié de consulter [Che80] ou [HC68, HC84]. [Eme90, KT90] sont des textes sur les logiques temporelles et la vérification de modèle.




Next Contents