introduction à la logique
Transcription
introduction à la logique
Logique Il est apparu dès l'antiquité la nécessité de développer la logique, et sa formalisation commence avec Artistote qui la develope pour contrer les sophistes et l'utilisation qu'ils font du langage. L'un des premiers exemples est le suivant : Socrate est un homme et Tous les hommes sont mortels donc Socrate est mortel. Toutefois, on se rend vite compte qu'il faut un formalisme très précis pour éviter des dérives : Tous ce qui est rare est cher et un cheval bon marché, c'est rare donc un cheval bon marché est cher. Le problème vient ici du fait que les termes sont mal dénit. 1. Table de vérité On nommera assertion un énoncé qui ne fait pas intervenir de variables et qui peut prendre les valeures VRAI ou FAUX. Par exemple i ∈ Z (FAUX), tous Par contre, x ∈ R n'est pas variable x. (VRAI), 2∈R (VRAI), i∈C les hommes sont mortels (VRAI), ... une assertion, car l'énoncé x ∈ R dépend de la On peut alors se demander si une assertion est vrai ou fausse. Donnons nous deux assertions assertions : nonA , A et B, A A ou B . On peut alors leurs associer de nouvelles B , A ⇒ B (implique) , A ⇔ B (équivaut à). et 1.1. L'opérateur non : négation logique. On prend simplement le contraire A nonA V RAI F AU X F AU X V RAI 1.2. L'opérateur ou. Pour que l'assertion soit vraie, il faut que l'une ou l'autre des assertions soit vrai, mais pas forcément les deux. 1 Exemple : Être ou ne pas être, les deux n'étant pas incompatible . A B A⇒B V RAI V RAI V RAI V RAI F AU X V RAI F AU X V RAI V RAI F AU X F AU X F AU X Par exemple (1 ≥ 0)ou(0 ≥ 1) est vrai. Mais 1. cf. toutefois le chat de Schrödinger 1 (0 ≥ 1)ou(1 ≥ 2) est faux. 1.3. L'opérateur et. Pour que l'assertion soit vraie, il faut que les deux soient vraies : une glace à la vanille et au citron. Exemple : Du pain et des jeux : c'est ce dont le public romain avait besoin selon Juvénal, il faut les deux. A B V RAI V RAI V RAI F AU X F AU X V RAI F AU X F AU X Par exemple (1 ≥ 0)et(0 ≥ 1) A⇒B V RAI F AU X F AU X F AU X est faux (car au moins l'un est faux). non(AetB) = (nonA)ou(nonB). (AetB) = non((nonA)ou(nonB)). On montre, à l'aide de table de vérité, que en déduit alors que 1.4. L'opérateur ⇒. Par dénition, on a On (A ⇒ B) = non(Aet nonB). Exemple : Je pense donc je suis (ce n'est pas une équivalence en général). A B A ⇒ B (nonA)ouB V RAI V RAI V RAI V RAI V RAI F AU X F AU X F AU X F AU X V RAI V RAI V RAI F AU X F AU X V RAI V RAI Le fait que le vrai implique le vrai est vrai (2 première ligne) est ce qui nous importe le plus. Par contre, le fait que le faux implique n'importe quoi (3ème et 4ème lignes) est vrai peut être déroutant. Toutefois, on peut s'en convaincre en regardant l'exemple de Russel suivant : si 2+2=5 alors je suis l'archevêque de Canterbury (trouver la preuve !). Regardons le principe de contraposition qui dit que si seulement si A ⇒ B est vrai si et non(B ⇒ nonA) est vrai (c'est une conséquence formelle de la table de vérité). ⇔. C'est la conjonction de A ⇒ B (A ⇔ B) = ((A ⇒ B)et(B ⇒ A)). 1.5. L'opérateur tion on a donc et de B ⇒ A. On a donc la table de vérité suivante A B V RAI V RAI V RAI F AU X F AU X V RAI F AU X F AU X A et B A ou B A ⇒ B A ⇔ B V RAI V RAI V RAI V RAI F AU X V RAI F AU X F AU X F AU X V RAI V RAI F AU X F AU X F AU X V RAI V RAI Par déni- En regardant toutes les dénitions des opérateurs introduits ci-dessus, on voit que tout les connecteurs peuvent se ramener à non et à ou. Ceci est très important en électronique. On peut démontrer énormément de règles diérentes. Nous allons en donner quelques unes. i) ii) (AouB)ouC = Aou(BouC) Aet(BetC) = (AetB)etC iii) (Aou(BetC)) = (AouB)et(AouC) iv) (Aet(BouC)) = (AetB)ou(AetC). v) non(AouB) = (nonA)et(nonB). 1.6. Des assertions qui sont toujours vraies. On peut construire des assertions qui sont toujours vraies, par exemple : i) Aou(nonA), c'est le principe du tiers exclus : une chose ou son contraire est forcément vraie ; ii) non(Aet(nonA)), principe de non-contradiction : une chose ne peut pas être fausse en même temps que son contraire) iii) ((A ⇒ B)et(B ⇒ B)) ⇒ (A ⇒ B), transitivité de l'implication, Socrate est un homme et tous les hommes sont mortels donc Socrate est mortel. Quantificateur 2. Nous passons maintenant aux prédicats qui sont des énoncés qui dépendent d'une ou plusieurs variables. Par exemple, On dispose de deux qanticateurs x est un entier pair, (x ∈ C). ∀ et ∃ qui permettent de remplacer les variables par des valeurs prisent dans des ensembles. Par exemple, si A(x) est une assertion dépendant de la variable x, on peut écrire ∀x ∈ E A(x) qui signie : pour tout élément x pris dans E, l'assertion A(x) est vraie. Ainsi, on pourrait considérer les exemples suivants ∀x ∈ Z, x est un entier pair (cette assertion est fausse) ∀x ∈ R, x ∈ C (vraie). Revenant à un prédicat abstrait A(x), on peut aussi écrire ∃x ∈ E A(x) qui signie : il existe un élément de l'ensemble vraie. Exemples : ∃x ∈ Z, x est un entier pair (vraie) E tel que la relation A(x) soit ∃x ∈ C, x ∈ Z (vraie). Utilisant des quanticateurs sur des prédicats, on obtient ainsi des assertions, qu'on peut connecter : non(∀x ∈ Zxest un entier pair), (vraie). On montre alors les équivalences suivantes : i) non(∀x, A(x)) équivaut à ∃x, nonA(x) (appliqué à la situation précédente, on voit que cela veux dire qu'il existe des entiers qui ne sont pas pair). ii) iii) non(∃x, A(x)) et ∀x, nonA(x). non(∀x(P (x) ⇒ Q(x))) 3. équivaut à est impair ⇒ n2 (très utile ! !). Type de démonstration 3.1. Démonstration directe. n ∃x(P (x)et non(Q(x))) A ⇒ B. est impair. 3.2. Démonstration par contraposée. nonB ⇒ nonA. cf. l'exemple de Russel : comme je ne suis pas l'archevêque de Canterbury, alors 2 + 2 6= 5. S'il pleut, le sol est mouillé ! Donc si le sol n'est pas mouillé, il ne pleut pas. n2 est pair ⇒n est pair. 3.3. Démonstration par l'absurde. On suppose que que essaie d'aboutir à nonA. On a alors A et nonA B est vraie et on qui est toujours faux, ce qui contredit le principe de non-contradiction. √ 2 est irrationel, qui fut l'un des premiers exemples de démonstration par l'ab- √ surde et qui date de l'antiquité grecque. On suppose que 2 2 = p/q avec p et premiers entre eux (par de diviseurs communs), ... , on nit par montrer que et q q p ont forcément un facteur commun, ce qui est absurde. 3.4. Disjonction des cas. Dans un énoncé dépendant de paramètres, on regarde les diérentes valeurs des paramètres et on conclut selon les cas. Si on veut résoudre le système, pour m∈R mx + y = 1 x + my = m2 qui équivaut à Si Si y = 1 − mx 2 x(1 − m ) = m(m − 1) m 6∈ {−1, 1} alors x = m(m−1) donc y = ... 1−m2 m = −1 alors x.0 = 2 donc il n'y a pas de solution. 2. remplissez ! Si m=1 alors la dernière `équation équivaut à quelconque et 0=0 donc on peut prendre x y = 1 − x. P (n) si P (0) 3.5. Démonstration par récurrence. On a une hypothèse qui dépend d'un entier et on souhaite la montrer pour tous les entiers : est vraie et que pour tout n ≥ 0 on a P (n) ⇒ P (n + 1) alors P (n) est vraie pour tout n ≥ 0. Il faut faire bien attention aux étapes, et on compare ce procédé à la montée d'un échelle. Pour pouvoir monter tout en haut, il sut de savoir monter sur le premier barreau (qui possède un statut particulier) puis, étant sur un certain barreau, de savoir passer au suivant. P (n) 1 + 3 + 5 + 7 + · · · + (2n + 1) = (n + 1)2 . 3.5.1. Premier exemple. Considérons la propriété entier n on a Cette propriété est vraie pour rang n. Alors au rang n+1 n = 0! armant que pour tout Supposons maintenant qu'elle est vraie au on a H.R. 3 1 + 2 + 3 + · · · + (2n + 1) + (2n + 3) = (n + 1)2 + 2n + 3 = n2 + 4n + 4 = (n + 2)2 . 3.5.2. Un contre-exemple. Considérons l'hypothèse Par récurrence, supposons le résultat vrai au rang n+1 P (n) armant que n = n+1. n et démontrons le au rang : H.R. n + 2 = (n + 1) + 1 = n + 1. Donc la propriété serait vraie... si on avait initialisé la récurrence ! 3.5.3. La suite de Fibonacci. Suite de Fibonacci : on considère la suite par u0 = 0, u1 = 1 et pour tout n≥1 un dénie on a un+1 = un−1 + un . On souhaite montrer que 1 un = √ 5 c'est un calcul direct car √ !n 1+ 5 − 2 √ √ 1+ 5 3+ 5 1+ = = 2 2 √ !n ! 1− 5 2 √ !2 1+ 5 . 2 On voit que le seul problème est en fait de trouver la formule de récurrence !