Aller au contenu
Topos Uranos

Résumé

Cette leçon ouvre la première unité du cours, consacrée au langage de la logique propositionnelle. Elle présente ses quatre leçons et le fil qui les relie, de la distinction entre la validité et la vérité jusqu’à la formalisation de raisonnements du français ; elle situe l’unité sur le chemin complet du cours, qui va du langage à la déduction, à la sémantique et à la métathéorie, et explique pourquoi la syntaxe doit précéder les trois autres ; elle justifie le choix d’une langue de deux symboles seulement, le cercle et le disque, avec une unique règle de formation ; elle précise le peu qui est tenu pour acquis, à savoir lire avec attention et l’arithmétique élémentaire ; elle formule le problème que l’unité résout, celui d’écrire de sorte que chaque expression ait une seule lecture et de le démontrer pour une infinité de formules, et donne des conseils pour l’étudier.

Objectifs d’apprentissage

  1. Décrire la suite des contenus de l’unité et expliquer ce que chaque leçon apporte à la suivante.
  2. Situer l’unité dans le parcours du cours (langage, déduction, sémantique et métathéorie) et expliquer pourquoi la syntaxe est étudiée avant les trois autres parties.
  3. Expliquer, à l’aide d’un exemple, pourquoi une notation qui place le connecteur entre ses arguments et n’a pas de parenthèses est ambiguë, et pourquoi la langue des cercles et des disques ne l’est pas.
  4. Reconnaître le peu que l’unité suppose et organiser son étude, avec l’autoévaluation d’entrée comme point de départ.

Évaluation d’entrée

Avant de parcourir l’unité, il convient de mesurer le point de départ. Cette évaluation est une autoévaluation : elle n’est pas notée, et son seul but est d’orienter l’étude. Ses onze questions portent, dans l’ordre, sur les quatre leçons de l’unité : trois sur la première, trois sur la deuxième, deux sur la troisième et trois sur la quatrième. Qui n’a jamais étudié la logique ne doit pas s’attendre à toutes les réussir, et cela n’a pas d’importance : chaque réponse, juste ou non, explique le point et nomme la leçon qui le traite. Les mêmes compétences sont mesurées de nouveau à la fin, dans la leçon de synthèse ; comme il s’agit de la première unité d’un cours sans prérequis, il n’y a pas de questions sur des unités antérieures.

Évaluation d’entrée

Avant de commencer l’unité, mesurez votre point de départ. C’est une autoévaluation brève : elle n’est pas notée et son résultat n’est conservé que dans votre navigateur.

  1. Question 1Un raisonnement est valide, et sa conclusion est fausse. Que peut-on affirmer de ses prémisses ?

  2. Question 2De quoi parle la phrase « “Rome” a quatre lettres », et est-elle vraie ?

  3. Question 3À propos de la liste des nombres 44, 66, 77, on affirme : « tous les nombres de la liste ne sont pas premiers ». Que peut-on dire de cette phrase ?

  4. Question 4Combien de chaînes distinctes de longueur 44 peut-on écrire avec les deux symboles ∘\sigO et ∙\sigI ?

  5. Question 5Si u=∘∙u = \sigO\sigI et w=∙w = \sigI, quelle chaîne est la concaténation uw\cadena{uw}, qui consiste à écrire ww à la suite de uu ?

  6. Question 6Dans la langue du cours, les variables sont les chaînes ∘∙\sigO\sigI, ∘∘∙\sigO\sigO\sigI, ∘∘∘∙\sigO\sigO\sigO\sigI, et ainsi de suite, et l’unique règle dit que, si φ\varphi et ψ\psi sont des formules, ∙φψ\sigI\varphi\psi en est une aussi. Laquelle des chaînes suivantes est une formule ?

  7. Question 7Quelqu’un démontre que, pour tout entier naturel kk, si 3k3^{k} est pair, alors 3k+13^{k + 1} est pair. Que peut-on en conclure ?

  8. Question 8Pour démontrer que toutes les formules de la langue des cercles et des disques ont une certaine propriété, que suffit-il de démontrer ?

  9. Question 9Avec le dictionnaire pp, « il pleut », et qq, « le match est annulé », comment se formalise « le match est annulé seulement s’il pleut » ?

  10. Question 10Avec le dictionnaire pp, « il pleut », et qq, « il fait froid », quelle formule suit littéralement la construction « il ne pleut ni ne fait froid » ?

  11. Question 11Dans quels cas l’implication (p→q)(p \rightarrow q) du cours, appelée implication matérielle, est-elle fausse ?

Les contenus de l’unité

Cette unité sert, avant tout, le premier des objectifs du cours, distinguer le langage objet du métalangage et décider à l’aide des règles de formation si une chaîne est une formule ; elle sert aussi le deuxième, formaliser des énoncés et des raisonnements du langage naturel, et elle prépare le quatrième, démontrer des métathéorèmes par induction, qui accompagnera le cours jusqu’à sa dernière unité. Son but est qu’au terme de l’unité on sache ce qu’étudie la logique, que l’on dispose d’un langage formel construit en toute rigueur, que l’on sache démontrer des propriétés de toutes ses formules et que l’on puisse y traduire des énoncés et des raisonnements du français, en sachant ce que la traduction conserve et ce qu’elle perd. Ses quatre leçons forment une chaîne dans laquelle chacune s’appuie sur les précédentes.

  1. Qu’est-ce que la logique mathématique. Elle délimite l’objet de la discipline : non la vérité des énoncés particuliers, mais la validité, la relation entre prémisses et conclusion qui garantit que la vérité des premières passe à la seconde. Elle distingue la validité de la vérité, montre pourquoi le langage naturel, ambigu et capable de parler de lui-même, ne suffit pas pour l’étudier, et établit la distinction entre langage objet et métalangage. Elle analyse, en explicitant leurs hypothèses, les paradoxes du menteur, de Berry, du barbier et de Russell, et se termine par la carte du cours.
  2. Le langage de la logique propositionnelle. Elle enseigne l’indispensable sur les ensembles et sur les chaînes de symboles, dénombre les chaînes que l’on peut écrire avec deux symboles et construit la langue de base : une infinité de variables écrites avec des cercles et des disques, une seule règle de formation et une clause de clôture, dont on déduit un principe pour démontrer des propriétés de toutes les formules. Elle donne une procédure pour décider si une chaîne est une formule et construit, sur la langue de base, le métalangage avec lequel on travaillera désormais : les métavariables, la négation conjointe écrite avec des parenthèses et les abréviations officielles des autres connecteurs.
  3. La récurrence sur les entiers et l’induction sur les formules. Elle enseigne la récurrence sur les entiers naturels, simple et forte, et la transpose aux formules sous la forme de l’induction structurelle. Avec elle, elle démontre le lemme du poids et, à partir de lui, le théorème de lecture unique, que la leçon précédente avait énoncé : chaque formule composée se décompose d’une seule façon. La lecture unique légitime enfin les définitions par récurrence sur les formules (longueur, sous-formules, profondeur) et la substitution d’une sous-formule par une autre.
  4. La formalisation du langage naturel. Elle jette le pont entre le français et le langage formel : le dictionnaire d’une formalisation, la lecture de chaque connecteur déduite de celle du connecteur primitif, les subtilités de « mais », « seulement si » et « à moins que », la portée des connecteurs, l’implication matérielle et ce que la logique propositionnelle ne peut pas exprimer. Elle se termine en formalisant des raisonnements complets comme un ensemble de prémisses et une conclusion, que les unités suivantes soumettront à la déduction et à la sémantique.

L’unité se termine par la leçon de synthèse et défis, qui rassemble l’acquis en une chaîne déductive, reprend dans son évaluation de sortie les compétences de l’évaluation d’entrée et propose des défis qui combinent plusieurs leçons.

La place de l’unité dans le cours

Le cours parcourt, pour le langage le plus simple de la logique, le chemin complet d’une théorie logique, et il le fait en quatre parties, qui sont ses quatre unités de contenu. La première, celle-ci, fixe le langage. La deuxième, la déduction, définit ce que signifie qu’une formule φ\varphi s’obtienne d’un ensemble de formules Γ\Gamma au moyen d’axiomes et de règles d’inférence, ce qui s’écrira Γ⊢φ\Gamma \vdash \varphi ; c’est la face syntaxique de la validité, où l’on manipule des symboles sans égard à leur signification. La troisième, la sémantique, attribue à chaque formule une valeur de vérité dans chaque valuation et définit ce que signifie que φ\varphi soit conséquence de Γ\Gamma, ce qui s’écrira Γ⊨φ\Gamma \models \varphi ; c’est la face sémantique de la validité. La quatrième, la métathéorie, démontre que les deux faces coïncident : la correction dit que tout ce qui est déductible est conséquence, et la complétude, que toute conséquence est déductible.

S’il en est ainsi, la syntaxe n’est pas un préambule que l’on puisse abréger, mais la condition des trois autres parties. Une déduction est une suite de formules, et pour décider si une suite en est une il faut savoir, sans hésitation, quelles chaînes sont des formules et comment elles se décomposent ; une valuation s’étend des variables à toutes les formules par récurrence, et la définition par récurrence ne donne une valeur à chaque formule que si chaque formule se lit d’une seule manière ; les théorèmes de la métathéorie se démontrent par induction sur la complexité des formules ou par récurrence sur la longueur des déductions. Il s’ensuit l’ordre de l’unité : d’abord, ce que l’on veut étudier et pourquoi il faut un langage formel ; ensuite, le langage ; puis l’instrument pour démontrer quelque chose de toutes ses formules, avec lequel on prouve la lecture unique ; et, enfin, le pont vers les raisonnements du français, qui sont la raison d’être de tout ce qui précède.

Pourquoi une langue de cercles et de disques

Le langage du cours a un alphabet de deux symboles seulement, le cercle ∘\sigO et le disque ∙\sigI, et une seule règle de formation : si φ\varphi et ψ\psi sont des formules, ∙φψ\sigI\varphi\psi en est une aussi. La nn-ième variable est la chaîne de nn cercles suivis d’un disque, vn=∘n∙v_{n} = \sigO^{n}\sigI. À première vue, le choix est étrange, car les formules ainsi écrites sont difficiles à lire. Il a pourtant quatre raisons précises.

La première est que deux symboles suffisent pour écrire une infinité de variables sans sortir d’un alphabet fini, de sorte que toute formule est, littéralement, une chaîne finie de symboles d’un ensemble à deux éléments, et que les questions sur le langage sont des questions sur des chaînes, que l’on peut dénombrer et comparer. La deuxième est qu’une seule règle laisse un seul cas dans chaque démonstration par induction : ce qui est prouvé pour les variables et pour ∙φψ\sigI\varphi\psi est prouvé pour toutes les formules, sans un cas par connecteur. La troisième est que la règle place le connecteur devant ses deux arguments, comme dans la notation que Jan Łukasiewicz proposa dans les années 1920, et c’est pourquoi elle n’a pas besoin de parenthèses : la lecture unique se démontre par un argument d’une page, qui attribue à chaque variable le poids +1+1 et à chaque disque connecteur le poids −1-1. La quatrième est que l’unique connecteur, la négation conjointe, « ni φ\varphi ni ψ\psi », suffit pour exprimer tous les autres, comme l’observa Charles Sanders Peirce vers 1880 et comme le publia Henry Sheffer en 1913, et comme le démontrera l’unité de sémantique ; de sorte que l’économie du langage ne sacrifie rien de ce que la logique propositionnelle peut dire.

Or le prix de cette économie est la lisibilité, et l’unité le paie dans le métalangage : personne n’écrira au quotidien des chaînes de cercles et de disques, mais leurs noms, (φ↓ψ)(\varphi \downarrow \psi), ¬φ\neg\varphi, (φ→ψ)(\varphi \rightarrow \psi), définis une seule fois et dépliables, à tout moment, jusqu’à la chaîne qu’ils désignent. Par conséquent, le cours travaille à deux niveaux à la fois : une langue de base minimale, sur laquelle on démontre, et une notation commode, avec laquelle on écrit ; et la distinction entre langage objet et métalangage, que la première leçon introduit, est celle qui permet de ne pas les confondre.

Ce qui est tenu pour acquis

L’unité part de presque rien. Elle ne suppose pas d’avoir étudié la logique, ni de connaître la théorie des ensembles, ni d’avoir jamais démontré un théorème : ce qu’elle utilise des ensembles, la deuxième leçon l’enseigne, et ce qu’elle utilise de la récurrence, la troisième. Elle suppose seulement deux choses. La première, lire avec attention : dans un langage formel, un symbole ajouté ou omis change la chaîne, et l’ordre des mots d’une définition importe autant que les mots eux-mêmes. La seconde, l’arithmétique élémentaire des entiers naturels, qui dans ce cours sont 1,2,3,…1, 2, 3, \ldots : additionner et multiplier, calculer des puissances de 22, distinguer les nombres pairs des impairs et reconnaître un nombre premier.

Qui souhaite un appui supplémentaire pour la récurrence peut consulter les leçons sur les axiomes de Peano et sur les sommes et la récurrence du cours Algèbre et géométrie I ; ce n’est pas nécessaire, car la troisième leçon de cette unité enseigne la récurrence à partir de son énoncé.

Le problème que l’unité résout

La logique étudie la validité, et la validité dépend de la forme des raisonnements. Mais, pour parler de la forme avec rigueur, il faut que chaque expression ait une seule forme, et le langage naturel ne le garantit pas : « le double de trois plus quatre » peut valoir 1010 ou 1414, selon le regroupement. Cela pose deux problèmes, qui sont ceux de l’unité. Le premier est de construire un langage dans lequel chaque expression se lise d’une seule façon. Le second est de le démontrer : les formules sont en nombre infini, et aucune vérification au cas par cas, si longue soit-elle, n’établit qu’elles se lisent toutes d’une seule façon. L’exemple suivant montre les deux problèmes dans une seule expression.

ExempleUne expression, deux chaînes

L’expression v1↓v2↓v3v_{1} \downarrow v_{2} \downarrow v_{3}, écrite avec le connecteur entre ses arguments et sans parenthèses, n’indique pas lequel des deux connecteurs est le principal. Dans la langue des cercles et des disques, en revanche, chaque regroupement est une chaîne différente, et la chaîne elle-même dit comment elle se regroupe.

Démonstration

  1. ((v1↓v2)↓v3)=∙∙v1v2v3((v_{1} \downarrow v_{2}) \downarrow v_{3}) = \resaltar{\sigI\sigI} v_{1} v_{2} v_{3}

    Première lecture : le premier connecteur relie v1v_{1} à v2v_{2}, et le second est le principal. Dans la langue de base, les deux disques vont devant.

  2. (v1↓(v2↓v3))=∙v1∙v2v3(v_{1} \downarrow (v_{2} \downarrow v_{3})) = \sigI v_{1} \resaltar{\sigI} v_{2} v_{3}

    Seconde lecture : le second connecteur relie v2v_{2} à v3v_{3}, et le premier est le principal. Le second disque va entre v1v_{1} et v2v_{2}.

  3. ∙∙∘∙∘∘∙∘∘∘∙≠∙∘∙∙∘∘∙∘∘∘∙\sigI\resaltar{\sigI}\sigO\sigI\sigO\sigO\sigI\sigO\sigO\sigO\sigI \neq \sigI\resaltar{\sigO}\sigI\sigI\sigO\sigO\sigI\sigO\sigO\sigO\sigI

    Écrites avec des cercles et des disques, les deux chaînes diffèrent dès leur deuxième symbole : ce sont des formules distinctes.

  4. ∙  ∙  v1  v2  v3:−1,0,+1\sigI \; \resaltar{\sigI \; v_{1} \; v_{2}} \; v_{3}: \quad -1, \quad 0, \quad +1

    Pour lire la première chaîne, il suffit de compter : après le disque initial, chaque disque connecteur retranche 11 et chaque variable ajoute 11, et la première composante se termine là où la somme atteint pour la première fois +1+1.

  5. ∙ (∙v1v2) v3\sigI \, \resaltar{(\sigI v_{1} v_{2})} \, \resaltar{v_{3}}

    D’où la première composante est ∙v1v2\sigI v_{1} v_{2} et la seconde, v3v_{3} : la chaîne se lit selon la première lecture, et d’aucune autre façon. Que ce décompte fonctionne pour toutes les formules, et pas seulement pour celle-ci, c’est le théorème de lecture unique, que la troisième leçon démontre par induction.

La réponse de l’unité à ces deux problèmes a donc deux parties. Pour le premier, une langue dont l’unique règle place le connecteur devant, de sorte que les parenthèses sont superflues, et un métalangage dont les abréviations désignent chacune une seule chaîne. Pour le second, un principe de démonstration, l’induction sur la complexité des formules, qui passe d’un nombre fini de vérifications (les variables et la règle) à toutes les formules, de même que la récurrence sur les entiers passe de 11 et du passage de kk à k+1k + 1 à tous les nombres. Avec ces deux parties, la forme d’un raisonnement devient un objet précis, et la question de sa validité peut être posée avec rigueur dans les unités suivantes.

Comment étudier l’unité

Il convient de commencer par cette évaluation d’entrée et de noter les questions manquées, qui signalent les leçons où il faut s’attarder. Les quatre leçons doivent être étudiées dans l’ordre, car chacune utilise ce qu’établissent les précédentes. Dans la deuxième et la troisième, l’étude exige papier et crayon : les chaînes de cercles et de disques se lisent mal à l’écran, et il convient de les recopier, de séparer leurs mots (chaque variable et chaque disque isolé) et de noter le poids de chacun, jusqu’à ce que le décompte de la lecture unique devienne une habitude. Les démonstrations sont publiées sous forme de lecteurs pas à pas, et chaque étape doit pouvoir être justifiée avant d’avancer. Dans la première et la quatrième, le travail est de lecture attentive : devant chaque phrase du français, se demander ce qu’elle affirme exactement, quelles lectures elle admet et quelle formule la représente. Enfin, l’indication et la réponse de chaque problème proposé ne s’ouvrent qu’après l’avoir sérieusement tenté.

Où elle mène

Au terme de l’unité, le langage sera fixé, et les unités suivantes bâtiront sur lui sans le remettre en discussion. Celle de déduction définira un système d’axiomes et deux règles d’inférence, le modus ponens et, une fois démontrée la double négation, le remplacement de la double négation, dont les déductions sont des suites de formules ; ses axiomes s’écrivent avec les abréviations officielles, que cette unité définit, et son théorème de déduction se démontre par récurrence sur la longueur des déductions, avec l’instrument qu’on apprend ici. Sa première leçon est celle des systèmes déductifs formels. Celle de sémantique attribuera des valeurs de vérité aux variables et les étendra à toutes les formules par récurrence, ce qui n’est possible que grâce à la lecture unique ; elle justifiera par des tables les lectures informelles des connecteurs qu’utilise la quatrième leçon, et démontrera, dans la leçon sur la complétude fonctionnelle, que la négation conjointe suffit pour exprimer n’importe quel connecteur. Celle de métathéorie, enfin, démontrera par induction la correction et la complétude, et les raisonnements que cette unité apprend à formaliser pourront, au bout du compte, être tranchés indifféremment par la déduction ou par la sémantique.

Hors de ce cours, la syntaxe d’un langage formel est celle de tout langage de programmation : un compilateur, comme ceux de Programmation en C++ I, commence par décider si un programme est bien formé et par le décomposer d’une seule façon. La distinction entre la validité et la vérité est aussi le point de départ de la Logique aristotélicienne, qui étudie la forme des syllogismes ; et la récurrence de la troisième leçon est la même qui démontre les propriétés des nombres en Algèbre et géométrie I. Dans tous ces domaines, comme dans la rédaction de règlements et de contrats, la leçon est la même : dire avec précision ce que l’on affirme exige un langage dans lequel chaque expression ait une seule lecture.