19 01-2016

publicité
TP : autre salle que d’habitude ? ?
Dispos....
MAT1500
1 of 35
Rappel.
Soit P et Q deux formules logiques qui dépendent de propositions
logiques p, q, r , . . ..
On dit que P et Q sont logiquement équivalentes si P et Q ont
toujours la même valeur de vérité, n’importe les valeurs de vérité
des composantes p, q, r , . . .. On écrit
P⇔Q
Avec les équivalences on a le droit de manipuler algébriquement
des formules logiques.
MAT1500
2 of 35
Aussi :
Il faut adopter les notations du cours ! Exemples :
Il faut utiliser ¬p (et pas p).
Et Vraie (ou V) et Fausse (ou F) (et pas 1 et 0).
Et ⇔ (et pas ≡).
Et pas confondre ⇔ et ↔.
Et pas confondre ∨ et ∪, ou ∧ et ∩.
Et ⇒ n’est pas défini encore, donc éviter d’utiliser.
MAT1500
3 of 35
A propos des ( et ).
Nous avons montré l’associativité :
p ∨ (q ∨ r ) ⇔ (p ∨ q) ∨ r .
Logiquement il n’y a pas de confusion possible : on a le droit
d’écrire p ∨ q ∨ r .
Aussi p ∧ q ∧ r est sans ambiguité.
MAT1500
4 of 35
Mais p ∨ q ∧ r est ambigue !
Parce que
(p ∨ q) ∧ r
ou
p ∨ (q ∧ r )
sont deux choses logiquement différentes (non-équivalentes).
Nous ne posons pas de convention de priorité entre ∨ et ∧ !
Il faut continuer d’utiliser les (, ) dans ce cours !
MAT1500
5 of 35
Seulement :
par convention ¬ aura plus haute priorité que les autres opérations
logiques.
Par exemple :
¬p → q veut dire (¬p) → q et non ¬(p → q).
Ce sont les seules convention de ce cours a propos de priorité
d’opérations logiques. Pour le reste il faut utliser les (, ).
MAT1500
6 of 35
Une équivalence utilisée souvent :
(P ↔ Q) ⇔ ((P → Q) ∧ (Q → P)) .
En mots : P ↔ Q est vraie si et seulement si P → Q et sa
réciproque Q → P sont vraies.
Preuve par une vérification par tableau.
P
V
V
F
F
MAT1500
Q
V
F
V
F
P↔Q
V
F
F
V
P→Q
V
F
V
V
Q→P
V
V
F
V
((P → Q) ∧ (Q → P))
V
F
F
V
7 of 35
Deux autres exemples d’équivalence, très importante pour nous :
(P → Q) ⇔ (¬Q → ¬P)
(une implication est équivalente à sa contraposé)
et
(P → Q) ⇔ (¬P ∨ Q)
Preuve :
P
V
V
F
F
MAT1500
Q
V
F
V
F
P→Q
V
F
V
V
¬Q
F
V
F
V
¬P
F
F
V
V
(¬Q) → (¬P)
V
F
V
V
(¬P ∨ Q)
V
F
V
V
8 of 35
À la place d’utiliser un tableau pour vérifier une équivalence
logique, on peut aussi utiliser les petites (ou grandes) équivalences
déjà montrées, comme en algèbre.
Un exemple suffit pour comprendre, peut-être.
MAT1500
9 of 35
Disons P := ((¬q) ∧ (p ∨ r )) → p et Q := (p ∨ (q ∨ (¬r ))) sont
équivalentes :
P ⇔ (¬((¬q) ∧ (p ∨ r ))) ∨ p (Car (p → q) ⇔ ((¬p) ∨ q))
⇔ (¬(¬q) ∨ ¬(p ∨ r ))) ∨ p (Selon De Morgan)
⇔ (q ∨ ¬(p ∨ r ))) ∨ p (Double négation)
⇔ (q ∨ ((¬p) ∧ (¬r ))) ∨ p (Selon De Morgan)
⇔ q ∨ (((¬p) ∧ (¬r )) ∨ p) (Assoc. pour ∨)
⇔ q ∨ (p ∨ ((¬p) ∧ (¬r ))) (comm. pour ∨)
⇔ q ∨ ((p ∨ (¬p)) ∧ (p ∨ (¬r ))) (Distrib.)
⇔ q ∨ (V ∧ (p ∨ (¬r ))) (Selon (p ∨ (¬p)) ⇔ V )
⇔ q ∨ (p ∨ (¬r )) (Selon (V ∨ p) ⇔ p)
⇔ (q ∨ p) ∨ (¬r )(Assoc. de ∨)
⇔ (p ∨ q) ∨ (¬r ) (Commut. de ∨)
⇔ Q (Assoc. de ∨)
MAT1500
10 of 35
L’algèbre (de Boole) est utilisé en programmation...
Seulement les équivalences logiques simples sont utilisées dans les
preuves mathématiques.
Nous allons donner des exemple d’utilisation.
MAT1500
11 of 35
Soient P et Q deux proposition logiques en mathématiques.
Supposons on veut montrer :
Théorème
P→Q
C.-à-d., on veut montrer que cette proposition logique P → Q est
vraie.
À cause d’une équivalence, il suffit de montrer que l’implication
(¬Q → ¬P) est vraie (preuve indirecte), ou que la proposition
(¬P ∨ Q) est vraie.
Donc il y plusieurs façons de montrer le théorème.
MAT1500
12 of 35
Preuve directe typique :
Si P est fausse, l’implication P → Q est automatiquement vraie et
il y aura rien à faire (Cette phrase est souvent omise).
Supposons P est vraie. Puis (avec cette hypothèse et avec de l’aide
des théorèmes déjà montrés), on montre que Q serait en
conséquence aussi vraie.
Ainsi on aura montré que P → Q est vraie.
En math : si on écrit "On veut montrer P" ça veut dire "On veut
montrer que la proposition logique P est vraie."
MAT1500
13 of 35
Preuve indirecte typique :
Il suffit de montrer la contraposé (¬Q) → (¬P).
Si ¬Q est faux (c.-à-d., Q est vraie), l’implication est
automatiquement vraie. (Cette phrase est souvent omise).
Supposons Q est fausse. Puis (avec cette hypothèse et avec de
l’aide des théorèmes déjà montrés), on montre que P sera aussi
fausse.
On aura montré que P → Q est vraie.
Différence : avec une preuve directe on peut travailler avec
l’hypothèse que P est vraie pour montrer qu’alors Q est aussi vraie.
Avec une preuve indirecte on peut travailler avec l’hypothèse que
Q est faux pour montrer qu’alors P est aussi faux.
MAT1500
14 of 35
Fausse preuve typique :
Il suffit de montrer (¬P) → (¬Q) est vraie.
Si ¬P est faux (ou P est vraie), l’implication est automatiquement
vraie.
Supposons P est fausse. Puis (avec cette hypothèse et avec de
l’aide des théorèmes déjà montrés), on montre que Q sera aussi
fausse.
On aura montré que P → Q est vraie.
Une telle FAUSSE preuve est inacceptable (car P → Q n’est pas
équivalent à ¬P → ¬Q !).
Ca vaut 0 points dans un examen. On est averti !
(Ce qu’on montre en fait est la réciproque q → p).
MAT1500
15 of 35
Revisitons l’exemple suivant.
Proposition
Soit A, B deux ensembles finis et F : A → B une fonction donnée
par la notation "deux-lignes" (sans répétitions dans la première
ligne).
Cette fonction est injective si et seulement si chaque élément de B
se trouve au maximum une fois sur la 2-ième ligne.
MAT1500
16 of 35
Démonstration.
Montrons par une preuve directe que l’hypothèse que chaque
élément de B se trouve au maximum une fois sur la deuxième ligne
implique que la conclusion que F est injective.
Soient a et a0 des éléments de A tels que b = F (a) = F (a0 ). Ces
deux éléments a et a0 se trouvent sur la première ligne, c’est à dire
ils existent i et j tels que a = ai et a0 = aj et donc
F (a) = F (ai ) = fi , F (a0 ) = f (aj ) = fj . Nous avons que b = fi = fj .
Mais b se trouve au maximum une fois sur la 2-ième ligne. Ça veut
dire i = j et donc a = ai = aj = a0 . Alors nous avons montré que
F est injective (si chaque élément de B se trouve au maximum une
fois sur la deuxième ligne).
MAT1500
17 of 35
Démonstration.
Nous allons montrer par une preuve indirecte que si on suppose
que F est injective alors chaque élément de B se trouve au
maximum une fois sur la deuxième ligne.
Supposons b ∈ B se trouve au moins deux fois sur la 2-ième ligne,
disons à positions i et j (i 6= j). Donc b = fi = fj . Mais fi = F (ai )
et fj = F (aj ), alors F (ai ) = F (aj ) et ai 6= aj . Donc F n’est pas
injective. On conclut la preuve indirecte que si F est injective alors
chaque élément de B se trouve au maximum une fois sur la
deuxième ligne.
Ça finit la preuve de la proposition.
MAT1500
18 of 35
Analyse logique.
P :=" La fonction F est injective " et
Q :="Chaque élément de B se trouve au maximum une fois sur la
2-ième ligne".
Il faut montrer P ↔ Q est vraie.
Parce que (P ↔ Q) ⇔ ((P → Q) ∧ (Q → P)) il suffit de montrer
que P → Q et Q → P sont vraies.
On montre les deux implications. Q → P par une preuve directe et
P → Q par une preuve indirecte.
MAT1500
19 of 35
Pour la preuve Q → P :
On suppose que Q est vraie. Sous sette hypothèse on montre que
P n’est pas fausse, donc vraie. Donc sous l’hypothèse que Q est
vraie, on a montré que P serait nécessairement vraie aussi. Ainsi
Q → P est montré.
Pour la preuve P → Q :
On suppose que Q est fausse. Sous cette hypothèse que Q est
fausse on montre que P est fausse aussi. Ainsi P → Q est montré.
MAT1500
20 of 35
Il faut remarquer plus.
Dans la preuve Q → P on suppose Q vraie.
Puis on suppose P fausse. en utilisant ça on montre Q fausse.
Mais Q ne peut pas être simultanément vraie et fausse : absurde,
impossible ! Donc (sous l’hypothèse que Q vraie, ce n’est pas
possible que P est fausse. Donc P vraie.
Ceci est une preuve "par l’absurde" d’un sous-résultat (ou un
lemme si vous voulez).
MAT1500
21 of 35
Si en supposant qu’une proposition P soit fausse, on peut
argumenter qu’une autre proposition est simultanément vraie et
fausse (une contradiction). Dans ce cas P est nécessairement
vraie ! !
C’est une preuve par l’absurde, ou une preuve par contradiction.
MAT1500
22 of 35
Règles d’inférence
Si P et Q sont deux formules logiques telles que P → Q est une
tautologie, on dit que c’est une règle d’inférence et on écrit
P⇒Q
alors si P est vraie alors AUTOMATIQUEMENT aussi Q est vraie.
Mais si P est fausse, nous ne pouvons rien conclure a propos Q.
Par exemple, proposition logique :
(p ∧ (p → q)) ⇒ q
une règle d’inférence appelée classiquement modus ponens.
MAT1500
23 of 35
Règles d’inférence déjà utilisés correctement par vous tous les
jours :
p ⇒ (p ∨ q)
(p ∧ q) ⇒ p
(p ∨ q) ∧ (¬p) ⇒ q.
MAT1500
24 of 35
Un peu d’attention, mais bien "connues" aussi :
(p ∧ (p → q)) ⇒ q (modus ponens)
et
(¬q ∧ (p → q) ⇒ ¬p (modus tollens)
et
(p → q) ∧ (q → r ) ⇒ (p → r ) (syllogisme par hypothèse)
MAT1500
25 of 35
Pour montrer modus tollens, commençons avec modus ponens
(p ∧ (p → q)) ⇒ q
Faisons les substitutions p par ¬q et q par ¬p (on a le droit !) :
(¬q ∧ (¬q → ¬p)) ⇒ ¬p.
Puis utilisons l’équivalence logique
(¬q → ¬p) ⇔ (p → q)
nous obtenons modus tollens :
(¬q ∧ (p → q) ⇒ ¬p.
MAT1500
26 of 35
On peut combiner des règles d’inférence et les équivalences
logiques :
Si P ⇒ Q et Q ⇒ R alors aussi P ⇒ R.
Et
P ⇔ Q si et seulement si P ⇒ Q et Q ⇒ P.
Exemple :
[(p ∨ q) → r ] ⇔ (p → r ) ∧ (q → r )
implique la règle d’inférence
[(p → r ) ∧ (q → r )] ⇒ [(p ∨ q) → r ]
MAT1500
27 of 35
Preuve algébrique de l’équivalence logique
[(p ∨ q) → r ] ⇔ (p → r ) ∧ (q → r ).
[(p ∨ q) → r ] ⇔ ¬(p ∨ q) ∨ r ( Car p → q ⇔ ¬p ∨ q)
⇔ (¬p ∧ ¬q) ∨ r ( Par De Morgan)
⇔ (¬p ∨ r ) ∧ (¬q ∨ r ) ( Par distr.)
⇔ (p → r ) ∧ (q → r ) ( Car p → q ⇔ ¬p ∨ q)
MAT1500
28 of 35
Qu’est-ce que vous en pensez :
q → p est une sorte d’opposé de p → q (sa réciproque)
et
l’opposé de (q → p) est ¬(q → p)
et donc
p → q est la même chose que ¬(q → p).
Ou, dans la langue de la semaine passée, ça semble que
(p → q) ⇔ ¬(q → p).
Raisonable ? Logique ?
MAT1500
29 of 35
Vous avez des doutes ?
Vérifions :
p
V
V
F
F
q
V
F
V
F
p→q
V
F
V
V
q→p
V
V
F
V
¬(q → p)
F
F
V
F
(q → p) ↔ (¬(q → p))
F
V
V
F
NON, c’est une contre-vérité !
Il faut aiguiser le sens critique.
En effet : q → p n’est pas l’opposé de p → q.
MAT1500
30 of 35
Qu’est-ce que vous en pensez :
E : "...... on a déjà montré que p implique q.... alors q est vraie et
......"
P : "Non, on n’a pas le droit"
E : "Mais, en supposant que p est vraie j’ai montré que q est vraie,
n’est-ce pas ? Alors q est vraie, non ?"
P : "Non !"
MAT1500
31 of 35
On a p → q est vraie si p est fausse. Donc ça montre :
(”0 = 1”) → "Dieu existe".
Il suit que "Dieu existe" ? !
Non.
Il suit que "Dieu n’existe pas" ? !
Non.
MAT1500
32 of 35
Mais
" .....on a montré p et que ça implique q, donc q est vraie ...."
ou
"...... on a déjà montré que p implique q, et p est vraie.... alors q
est vrai et ......"
est une raisonnement logique, basée sur la tautologie :
(p ∧ (p → q)) → q
(c.-à-d, toujours vraie, n’importe p et q).
MAT1500
33 of 35
(p ∧ (p → q)) → q est une proposition logique toujours vraie,
n’importe les propositions p et q.
Preuve par tableau :
p q p → q p ∧ (p → q)
V V
V
V
V F
F
F
F V
V
F
F F
V
F
MAT1500
[p ∧ (p → q)] → q
V
V
V
V
34 of 35
Soit p(u) une fonction propositionnelle avec domaine de discours
U.
Rappelons : "∀u p(u)" est fausse si et seulement s’il existe au
moins un u tel que p(u) est fausse.
Traduction :
¬(∀u p(u)) ⇔ ∃u (¬p(u))
Et "∃u p(u)" est fausse si et seulement si pour chaque u on a que
p(u) est fausse.
Traduction :
¬(∃u p(u)) ⇔ ∀u (¬p(u))
MAT1500
35 of 35
Téléchargement