Explore l'isomorphisme de Kerry Howard, traduisant des propositions logiques en types et en termes, en mettant l'accent sur la preuve par induction et la préparation à l'examen.
S'intéresse à la vérification de type, à la reconstruction, aux équations, à l'unification, au système Hindley/Milner, au polymorphisme et aux principaux types.
Couvre la sémantique des langages de programmation, en se concentrant sur le langage Add et le rôle des règles de réécriture et des machines CK dans la compréhension du sens.
Couvre la sémantique opérationnelle et les stratégies d'évaluation dans le calcul lambda, y compris redex, les stratégies d'évaluation alternatives et les booléens de l'Église.
Explore les cartes, les opérateurs de type, l'équivalence, les types de première classe, System Fw, Coq, et les défis de la vérification de type dans les langages de programmation.
Explore linduction forte comme une méthode de preuve puissante avec des avantages sur linduction mathématique, démontrée par un théorème sur lexpression des entiers comme des sommes de puissances de deux.
Explore les langues d'Isar, de ML et de Scala, couvrant les systèmes de preuve, les règles de déduction naturelle, les définitions inductives et l'approche LCF.
Introduit des fonctions définies récursivement et démontre comment calculer des valeurs et prouver des propriétés en utilisant l'induction mathématique.