Raisonnement naturel et logique formelle

publicité
Raisonnement naturel et logique formelle
Eléments d'histoire
L'homme possède, entre autres facultés, le pouvoir de raisonner. Tous les hommes sont
capables de raisonnement et sous des formes qui semblent varier relativement peu d'une
époque à l'autre, d'une culture à l'autre1. Depuis longtemps des personnes se sont intéressées
à cette faculté particulière et ont tenté d'en codifier le fonctionnement. Cette activité de
codification constitue la logique formelle dont on attribue la création à Aristote (384-322 av.
J.-C.). D'autres penseurs grecs se sont également consacrés à cette étude; leur préoccupation
étant principalement liée à l'art de convaincre, que ce soit en politique ou en mathématique.
On peut caractériser la science logique de cette époque comme l'identification des cas de
figures utilisés dans l'argumentation qui paraissent "logiques" au sens intuitif du terme.
Aristote étudie principalement le syllogisme dont l'exemple le plus fameux affirme la mortalité
de Socrate:
Tous les hommes sont mortels, or Socrate est un homme, donc Socrate est mortel.
Cette théorie va rester inchangée pendant près de 17 siècles. Les continuateurs reprennent les
formes d'Aristote en les utilisant même parfois de façon exagérée. Ainsi l'oeuvre des sophistes
(école de logiciens du 5e siècle) garde une connotation péjorative.
Leibniz (1646-1716) marque un renouveau fondamental en proposant d'introduire des idées
algébriques en logique. Il proposait de constituer un alphabet des pensées humaines et en
combinant de façon mécanique ces symboles entre eux d'obtenir toutes les propositions
vraies.
Toutefois c'est Boole (1815-1864) et l'école de logiciens anglais qui sont considérés comme les
inventeurs de la logique symbolique moderne.
Il est intéressant de noter que de nombreuses méthodes adoptées dans les sciences et
techniques (Carrol, Karnaugh, etc.) relèvent de conceptions pré-booléennes.
Les recherches actuelles portent sur les logiques à plus de deux valeurs (logiques modales), les
logiques avec incertitude, logique floue, etc. Un grand nombre de ces recherches sont liées au
développement des systèmes experts, systèmes informatiques qui simulent une forme de
raisonnement humain.
Une première distinction
Considérons la proposition: si les élèves sont agités, la neige est proche
Comment l'interpréter ?
Cas 1) Il peut s'agir d'un énoncé purement hypothétique auquel aucune valeur de vérité n'est
attribuée. Dans la même veine on peut énoncé d'autres propositions de ce type:
si les poules ont des dents, les semaines ont 4 jeudis
si les carottes sont cuites, alors les trolleybus volent bas
Cas 2) On peut aussi ne s'intéresser qu'aux propositions vraies. On considère alors cette
phrase comme une règle; on a constaté que chaque fois que les étudiants sont agités, la neige se
1
Cette affirmation mériterait d’être nuancée.
met à tomber peu après.
Symbolisation
cas 1) Ici on a simplement construit une nouvelle proposition. A partir de:
p = "les élèves sont agités" et
q = "la neige est sur le point de tomber"
on fabrique la proposition:
i = "si les élèves sont agités alors la neige est sur le point de tomber"
Cette proposition i, symbolisée par p ⊃ q (ou aussi p → q ), est équivalente (en partie par
intuition, en partie par convention) à p'∨q : "les élèves ne sont pas agités ou la neige est sur
le point de tomber".
cas 2) C'est d'une règle qu'il s'agit (une implication). On s'intéresse ici à la valeur de vérité des
propositions en jeu. q est€vrai chaque fois €
que p est vrai. Cette situation se formalise par P ⇒
€ logiquement Q (la majuscule représente une expression logique
Q ce qui se lit P implique
formée à partir de proposition et de connecteurs). Cette relation signifie que Q est vraie
chaque fois que P est vraie.
On démontre facilement que pour les expressions logiques P et Q, P ⇒ Q revient à dire que τ
(P → Q) (P → Q est une tautologie). Cette équivalence pose quelques problèmes notamment
celui de l’implication matérielle.
Exemple :
€
( p ∧ ( p → q)) ⇒ q puisque
( p ∧ ( p'∨q)) → q =
(( p ∧ p') ∨ ( p ∧ q)) → q =
( p ∧ q) → q =
.
( p ∧ q)'∨q =
p'∨q'∨q = vrai
Cette implication a le schéma du modus ponens qui est une règle de déduction formelle.
Démontrer
€
En mathématique (mais aussi en médecine, en droit, et dans la vie de tous les jours) on
s'occupe à rassembler des propositions vraies: "8 est un nombre pair", "Il existe une infinité
de nombres premiers", "Paris est la capitale de la France", "le carré d'un nombre impair est
impair", etc. Chaque nouvelle proposition (théorème, lemme, diagnostic) doit être démontrée,
c'est-à-dire qu'un certain nombre d'arguments doivent conduire à elle selon un schéma
susceptible de convaincre un interlocuteur hypothétique, ou soi-même, de leur validité2.
Comment nous y prenons-nous dans notre façon, en partie conventionnelle, de mener une
déduction qui conduit d’une ensemble de propositions (les hypothèses) à la conclusion. Voici,
à travers des exemples, quelques-uns des principes que l'on peut étudier3:
2
3
Mais le raisonnement déductif ne doit pas être confondu avec l’argumentation
De fait, si la « logique » établit des bases communes, la situation est plus complexe dans la pratique où
cas 3) 8 est un nombre pair
On hésite au caractère de cette proposition qui découle d’une définition. Le passage par la
constitution d’ensemble permet de sortir de l’aspect purement verbal de la proposition.
l’affirmation « 8 est nombre pair » est un raccourci d’une expression bien formée en théorie
des ensemble : 8 ∈ {n ∈ N | ∃n'∈ N : n = 2 * n'} . La vérification de la proposition
« collectivisante » pour 8 (8=2*4) en fait élément de l’ensemble. De façon plus « naïve » on
a:
a) « n est€multiple de 2 → n pair » est une tautologie définition
b) 8 = 2*4
calcul
c) 8 est pair
par définition d'un nombre pair
Chaque ligne a été justifiée. C'est chaque fois une proposition vraie. Une règle de
remplacement a été utilisée de façon implicite.
Les justifications des différentes étapes dépendent du domaine considéré. Elles peuvent être
de type: juridique, statistique, réglementation, autoritaire, etc. Ici on a des arguments
mathématiques et des "principes" de logique.
cas 4) théorème de mathématique : si n est pair alors n*n est pair
Un théorème en logique4 est une tautologie ce qui nous induirait à écrire ce théorème de
mathématique sous forme tautologique : τ (n pair → n2 pair).
Les mathématiciens préférant travailler avec des propositions vraies5 préféreront certainement
l’implication équivalente : n pair ⇒ n2 pair.
Pour établir la validité de cette proposition, on s’intéresse donc simplement au cas où n est
pair et, dans ce cas, on vérifie que n2 est aussi pair.
a) n est pair
b) n = 2*n'
c) n*n = (2*n')*(2*n') = 4*n'*n'
d) n*n = 2*n''
e) n*n est pair
hypothèse
définition de la parité d'un nombre
lois algébriques
lois algébriques
définition de la parité d'un nombre
Remarques :
1) Si l'on voulait tenir compte que n n'est pas seulement un entier particulier (une constante !)
mais une variable, cette proposition devrait s'écrire: ∀ n τ (n pair → n2 pair)
2) On établit de la même manière : n impair ⇒ n2 impair (en utilisant n = 2n’+1) (cas 4’)
cas 5) théorème: si n*n est pair alors n est également pair
a) n*n est pair
b) n impair → n*n est impair
hypothèse
cas 4’)
chaque communauté de pratique forge ces propres références en ce qui concernent l’établissement des « lois »
qui régissent sa science.
4
Un théorème en logique est une déduction à partir d’une hypothèse vide alors qu’en mathématique une
hypothèse est souvent présente.
5
ou plausible, c’est-à-dire construite selon un schéma formel lié aux propriétés mathématiques des objets (voir
la logique sémantique de Tarski). Les propositions « tombées du ciel » : si les trolleybus volent bas, alors les
poules ont des dents », sont évitées.
c) n est pair
principe de logique (M T)
Remarque : On établit de la même manière : n2 impair ⇒ n impair (cas 5’)
cas 6) théorème: √ 2 n'est pas rationnel (i.e. √ 2 ≠ n/m avec n et m entiers)
a) √ 2 = n/m (n et m premiers entre eux)
b) 2 = n2/m2
c) 2m2 = n2
d) n2 est pair
e) n est pair
f) n = 2n'
g) 2m2 = 4n'2
h) m2 = 2n'2
i) m2 est pair
j) m est pair
k) n et m ne sont pas premiers entre eux
l) l'hypothèse absurde a) est erronée
hypothèse "absurde"
règle de calcul
règle de calcul
définition
théorème du cas 5)
définition
calcul
calcul
définition
théorème du cas 5)
définition
principe de logique (H)
Déduction
Lors des démonstrations, chaque ligne est une proposition vraie : un théorème, un axiome, une
définition, une transformation liée au domaine, etc. Pour passer d'une ligne à l'autre nous
utilisons différents principes
Quelques règles de déduction utilisées
H. Technique de l'hypothèse: de P et de Q on déduit P→Q
M P. M odus Ponens:
de P et de (P→Q) on déduit Q
M T. M odus Tollens:
de (P→Q) et de ¬Q on déduit ¬P
La règle MP a été utilisée dans le cas 3); la règle MT dans le cas 5).
Ces règles peuvent être formalisées à un niveau supérieur. Par exemple : MP :
P ∧ (P → Q) ⇒ Q. Ce qui permet d’imaginer et justifier de nombreuses autres règles, par
exemple :
Règle de la conjonction : de H ⇒ P et H ⇒ Q on déduit H ⇒ (P ^ Q)
€
Principe de résolution : (P ∨ E) ∧ (¬P ∨ F) ⇒ E ∨ F
Ce principe est à la base du fonctionnement du langage Prolog :
Dans le cas 6), une autre technique a été utilisée dite "raisonnement par l'absurde" dont le
schéma est le €
suivant:
a) Soit à démontrer H.
b) On suppose ¬H vraie.
c) On en déduit une proposition P par ailleurs connue comme fausse.
d) H est admise vraie.
Langage et métalangage
On trouve l'idée du "si ... alors ..." à quatre reprises et trois niveaux:
- comme opérateur dans la logique des propositions par exemple : n pair → n2 pair
- l’implication : n pair ⇒ n2 pair
- dans les règles de déduction: Si P et (P→Q) alors Q
- dans le langage "de tous les jours" avec lequel on argumente le choix des règles utilisées. C'est
aussi de cette manière que l'on peut justifier les règles de déduction.
C'est l'existence simultanée de ces trois niveaux qui sont à la source de nombreuses
confusions.
Quelques théorèmes en logique
Règle H:
P^Q ⇒ P→Q
Démonstration:
a) P^Q vraie signifie P vraie et Q vraie
b) donc la valeur de vérité de P→Q est vraie
Règle M P:
P ^ (P→Q) ⇒ Q
Démonstration:
a) P ^ (P→Q) vraie signifie P vraie et P→Q vraie
b) donc Q ne peut pas être faux selon la table de vérité de →
Les énoncés suivants sont équivalents:
1)
2)
3)
4)
F⇒E
F → E est une tautologie
¬F v E est une tautologie
EvF=E
Mais attention à rester dans un système formel défini, sinon gare aux paradoxes (implication
matérielle)
L'équivalence entre 2) et 3) provient de la définition même de →.
L'équivalence entre 1) et 2) est laissée à titre d'exercice
L'équivalence entre 3) et 4) provient de:
si 3) alors 4):
E v F = (E v F) ^ t =(par 3) (E v F)^(¬F v E) = E^¬F v E^E v F^¬F v F^E =
E^(F v ¬F) v E^E v O = E + E = E
si 4) alors 3):
¬F v E = (par 4) ¬F v E v F = E v F v ¬F = E v t = t
Logique et systèmes experts
Il y a diverses manières d'utiliser les théories logiques dans les systèmes experts. Une façon
simple et courante est la suivante. Toutes les propositions vraies (les faits) sont contenues
dans une mémoire de travail appelée base de faits. Une proposition est en principe
(momentanément) fausse si elle ne fait pas partie de cette base (hypothèse du monde clos).
Par ailleurs un système expert possède une base de connaissance, c'est-à-dire une famille de
propositions du type P ⇒ Q appelées règles (d’inférence). Un programme informatique
combine faits et règles selon des principes de déduction (MP ou MT par exemple) pour
obtenir de nouveaux faits.
L.-O. Pochon / version janvier 07
logique.doc
Téléchargement