Il existe une très forte tradition de logique en informatique. Les problèmes que nous étudions et l'esthétique de la communauté de la logique computationnelle ne sont pas identiques à ceux de la communauté de la logique mathématique. Vous avez tout à fait raison de dire que les développements importants de la théorie des modèles, de la méta-théorie de la logique du premier ordre et de la théorie des ensembles ne sont pas couramment utilisés en logique de calcul. On peut avec succès rechercher des logiques de calcul sans voir ou utiliser des ultrafiltres, une analyse non standard, le forçage, le théorème de Paris-Harrington et une foule d'autres concepts fascinants qui sont considérés comme importants dans la logique classique.
Tout comme on applique des idées mathématiques pour étudier la logique ainsi que des idées logiques pour étudier les mathématiques, nous appliquons la logique pour étudier l'informatique et appliquer des perspectives de calcul pour étudier la logique. Cette focalisation différente a des conséquences assez dramatiques sur les types de résultats qui sont importants pour nous.
Voici une citation de John Baez sur la logique et l'informatique. Je ne partage pas exactement le même point de vue car je ne connais pas très bien la logique mathématique avancée.
Quand j'étais étudiant, j'étais très intéressé par la logique et les fondements des mathématiques --- je cherchais toujours les concepts les plus hallucinants que je pouvais saisir, et le théorème de Goedel, le théorème de Loewenheim-Skolem, etc. là-bas avec la mécanique quantique et la relativité générale en ce qui me concerne. [...] Je me souviens avoir ressenti à l'époque que la logique était devenue moins révolutionnaire qu'elle ne l'était au début du siècle. Il me semblait que la logique était devenue une branche des mathématiques comme les autres, étudiant les propriétés obscures des modèles des axiomes de Zermelo-Fraenkel, plutôt que de remettre en question les présomptions de base implicites dans ces axiomes et oser poursuivre de nouvelles approches différentes. [...]
Quoi qu'il en soit, il est maintenant assez clair pour moi que je n'avais tout simplement pas lu les bonnes choses. Je pense que Rota a dit que le travail vraiment intéressant sur la logique s'appelle désormais "informatique", [...] - Semaine 40, Find of This Week, John Baez
La logique informatique est un domaine vaste et en plein développement. Je trouve que chaque perspective de la logique classique peut être modifiée pour dériver une certaine perspective sur la logique de calcul. L'entrée de Wikipedia sur la logique mathématique divise le domaine en théorie des ensembles, théorie des modèles, théorie des preuves et théorie de la récursivité. Vous pouvez essentiellement prendre ces zones et leur ajouter une saveur de calcul et obtenir un sous-champ de logique de calcul.
Théorie des modèles Nous aimons étudier la théorie des modèles de la logique non classique et les modèles non classiques de la logique classique. J'entends par là que nous étudions les logiques modales, temporelles et sous-structurelles, et que nous étudions les logiques sur les arbres, les mots et les modèles finis, par opposition aux modèles classiques comme les algèbres. Les deux problèmes fondamentaux sont la satisfiabilité et la vérification des modèles. Les deux ont une immense signification pratique et théorique. En revanche, ces problèmes sont moins centraux dans la logique classique.
Théorie de la preuve Nous étudions la complexité et l'efficacité avec lesquelles nous pouvons générer des preuves dans les systèmes de preuve classiques, ainsi que le développement de nouveaux systèmes de preuve non classiques qui sont sensibles aux considérations de complexité et d'efficacité. La déduction automatisée étudie la génération d'épreuves assistée par machine, de manière générale. Le processus peut impliquer une interaction humaine ou être complètement automatique. Il y a beaucoup de travail sur le développement de procédures de décision pour les théories logiques. La complexité des preuves se concentre sur la taille des preuves et la complexité de calcul de la génération des preuves. Il existe une ligne de travail fascinante reliant les programmes aux preuves, qui se combine avec un travail descendant de la logique linéaire pour développer des systèmes de preuve, et par conséquent des langages de programmation, qui sont sensibles aux ressources.
Théorie de la récursivité Notre théorie de la récursivité est la théorie de la complexité. Plutôt que d'étudier ce qui est calculable, nous étudions l'efficacité avec laquelle nous pouvons calculer. Il existe de nombreux analogues de la théorie de la récursivité dans la théorie de la complexité, mais les résultats et les séparations de la théorie de la récursivité ne valent pas toujours pour leurs analogues théoriques de la complexité. Au lieu d'ensembles calculables et d'une hiérarchie arithmétique, nous avons le temps polynomial, la hiérarchie temporelle polynomiale et l'espace polynomial entourant la hiérarchie. Au lieu de la quantification bornée dans la hiérarchie arithmétique, nous avons la satisfiabilité et les formules booléennes quantifiées et la quantification bornée des formules booléennes.
L'article de l'enquête
Sur l'efficacité inhabituelle de la logique en informatique
est un bon point de départ pour obtenir une vue de très haut niveau de la logique de calcul. Je vais énumérer plusieurs domaines de l'informatique à orientation logique. J'espère que d'autres éditeront cette réponse et ajouteront à cette liste ici, et éventuellement ajouteront un lien vers une réponse sur cette page.
- Théorie des modèles finis
- Complexité des preuves
- Déduction algorithmique (procédures de décision pour les théories logiques)
- Logique des programmes
- Logique dynamique
- Logique temporelle linéaire et ses variantes
- Logic d'arbre de calcul et ses variantes
- Logique épistémique
- Théorie des bases de données
- Théorie des types
- Automates sur des mots infinis
- Logique catégorique
- Théorie de la concurrence et algèbre de processus
- Théorie des domaines
- Logique linéaire
- Complexité descriptive
- Vérification du modèle
- Calculs à points fixes et logiques de fermeture transitive