À propos du service
TraduitJe développe et vérifie des programmes en Agda — un langage fonctionnel à types dépendants qui est simultanément un assistant de preuve. Si vous avez besoin d'un programme dont la correction est vérifiée par le compilateur plutôt que d'espérer que les tests le détectent, je peux vous aider. Je prends en charge tout, des petites structures de données vérifiées aux développements formels complets où chaque invariant est prouvé au niveau du type. J'encode la spécification comme un type, puis laisse le vérificateur de type forcer l'implémentation à correspondre, de sorte que des classes entières de bogues ne se compilent tout simplement pas. Sorties typiques : algorithmes vérifiés avec preuves de terminaison et de correction, formalisation de structures mathématiques, analyseurs et interprètes à types dépendants, modèles vérifiés par machine de protocoles et de règles commerciales. Je travaille couramment avec des types de données indexés, des types sigma et pi, l'égalité propositionnelle, la récursion bien fondée et la bibliothèque standard. Je traduis le raisonnement informel sur papier en modules Agda entièrement vérifiés. Au-delà de l'écriture de code, j'enseigne la théorie des types : des sessions individuelles sur la correspondance Curry-Howard, les familles inductives, le matching de motifs dépendants et la pensée en preuves plutôt qu'en tests. Chaque projet est accompagné d'une source propre commentée qui passe la vérification de type dès le départ, d'une brève note sur les lemmes clés et d'un appel à votre équipe. J'explique honnêtement les compromis, y compris lorsque qu'une approche plus légère dans un autre outil vous convient mieux.