Cet ouvrage débute par une introduction à la logique des prédicats du premier ordre (syntaxe, sémantique et preuves formelles), avant de guider le lecteur vers quelques-uns de ses aspects plus avancés. Il présente ensuite les méthodes algorithmiques de démonstration automatique ainsi que des applications plus directes des concepts logiques au domaine informatique.
Sa lecture ne réclame aucun prérequis en la matière. L'exposé des notions de base de logique sont accompagnées de nombreux exercices corrigés.
Cet ouvrage explore les constructions syntaxiques des langages de programmation les plus courants, avec un éclairage mathématique sur leurs sémantiques et une présentation précise des aspects matériels qui interfèrent avec le codage.
Ce volume est dédié aux traits fonctionnels et impératifs. Il étudie formellement les sémantiques de typage et d'exécution, facilitant leur acquisition par leur implantation en OCaml et Python et par des exercices corrigés. La représentation des données est traitée en détail : types construits, filtrage, boutisme, pointeurs, gestion de la mémoire, etc., avec des exemples en OCaml, C et C++.
Concepts et sémantique des langages de programmation 1 s'adresse aux étudiants et enseignants des cursus informatiques ainsi qu'aux programmeurs chevronnés, qui y trouveront un guide de lecture des manuels de référence ainsi que les fondements de la vérification de programmes.
Cet ouvrage explore les constructions syntaxiques des langages de programmation les plus courants, avec un éclairage mathématique sur leurs sémantiques et une présentation précise des aspects matériels qui interfèrent avec le codage.
Ce deuxième volume présente un modèle sémantique original commun aux constructions et opérations des modules et des classes : visibilité, importation, exportation, définitions différées, paramétrisation par types et valeurs, extensions. Ce modèle fonde l'étude des modules d'Ada, OCaml et des fichiers d'en-tête de C. Il est décliné pour modéliser les traits objet puis utilisé pour traiter les classes de C++, Java, Python et OCaml.
Concepts et sémantique des langages de programmation 2 s'adresse aux étudiants et enseignants des cursus informatiques ainsi qu'aux programmeurs chevronnés, qui y trouveront un guide de lecture des manuels de référence ainsi que les fondements de la vérification de programmes.