L'expression "logique du premier ordre" a deux significations:
C'est un chapitre de la logique mathématique dans lequel nous étudions certains types de systèmes formels et tout ce qui s'y rapporte.
Il s'agit d'un type particulier de théorie du premier ordre, à savoir celle générée par une signature vide et un ensemble vide d'axiomes.
Votre question se réfère au deuxième sens, mais pour comprendre cela, nous devons construire les choses:
Il existe un certain langage formel appelé langage de la logique du premier ordre . Parlant de manière informelle, c'est ce que vous pouvez construire à partir de variables, d'égalité, , , , , et . Ce truc est connu sous le nom de formules de premier ordre .∧∨¬⇒∀∃
Il existe un certain système formel appelé logique du premier ordre qui nous dit ce que cela signifie que nous prouvons une formule du premier ordre. Le système est donné comme un ensemble de règles d'inférence.
Une théorie du premier ordreT est donnée par:
- une signatureΣT qui consiste en un ensemble de constantes, symboles de fonction et symboles de relation. Considérez-les comme des extensions du langage de base de la logique du premier ordre. Nous l'appelons le langage deT .
- un ensemble déductivement fermé de formules de premier ordre écrites dans la langue étendue par la signature.
Un ensemble de formules est dit être fermé par déduction le cas échéant l' application de règles d'inférence de la logique du premier ordre à des formules dans donne les formules qui sont à nouveau dans . En d'autres termes, contient toutes ses conséquences logiques. Une façon courante de créer un tel ensemble est de commencer par un ensemble choisi de formules et d'y ajouter toutes ses conséquences logiques et les conséquences de ces conséquences, etc. On appelle cela la fermeture déductive de . Nous appelons souvent les formules axiomes .SSSSSAAA
Une théorie peut être complète ou non. Il n'est pas important de savoir ce que signifie "complet" ici, mais il est important de savoir que ce qui suit peut se produire: nous pouvons avoir deux ensembles de formules et , telles que , la fermeture déductive de est un théorie complète, et la fermeture déductive de n'est pas une théorie complète.ABA⊆BAB
Nous sommes maintenant prêts à répondre à votre question. Soit la théorie dont la signature est vide et dont l'ensemble de formules est la fermeture déductive de l'ensemble vide. Soit la théorie dont la signature est celle de l'arithmétique de Peano (constante , opération unaire , opérations binaires et ) et les formules sont la fermeture déductive des axiomes de Peano. C'est un fait queTP0S+×
- T est contenu dans (en fait est contenu dans toute théorie),PT
- T est complet,
- P n'est pas complet.
La théorie est communément appelée "logique du premier ordre", mais il s'agit vraiment d'un terme impropre. Certaines personnes sont un peu plus précises et l'appellent "la théorie pure de la logique du premier ordre".T
En résumé, votre question a révélé ce qui suit:
- Vous ne saviez pas que la "logique du premier ordre" peut faire référence à la théorie avec une signature vide générée par les axiomes vides.
- Une théorie complète peut devenir incomplète lorsque nous l'étendons.
- Vous avez utilisé la mauvaise définition de l'exhaustivité. La définition correcte est: une théorie est complète si, chaque phrase ou sa négation est un théorème de la théorie.
NB: une phrase est une formule fermée (celle qui ne contient aucune variable libre).
Enfin, permettez-moi de répondre à votre question sur la validité:
- une formule est prouvable s'il y en a une preuve
- une formule est valide si elle est vraie dans tous les modèles
Un méta-théorème de base sur la logique du premier ordre est que chaque formule prouvable est valide. L'inverse est également valable et est connu sous le nom de théorème de complétude de Gödel .
Cependant, il arrive souvent que dans une situation particulière, on fasse exprès un décalage entre la validité et la prouvabilité pour une bonne raison. Par exemple, si nous limitons l'attention aux modèles finis , il peut facilement arriver qu'il y ait des déclarations valides sans preuve. Pourquoi ferait-on ça? En informatique, cela peut être pour des raisons algorithmiques ou parce que l'on s'intéresse uniquement à une classe particulière de modèles.
Vous dites que "la seule façon de savoir qu'une peine est valable est de la prouver". Cela peut être le cas à un certain niveau informel (je pense que Dieu ne serait pas d'accord avec vous), mais notez qu'une telle preuve de validité se produit en dehors de la théorie, au niveau méta. En effet, puisque l'établissement de la validité nécessite de parler de tous les modèles, ce n'est certainement pas quelque chose que nous nous attendrions à effectuer à l'intérieur de la théorie.