Certified proofs in programs involving exceptions

Abstract : Exception handling is provided by most modern programming languages. It allows to deal with anomalous or exceptional events which require special processing. In computer algebra, exception handling is an efficient way to implement the dynamic evaluation paradigm: for instance, in linear algebra, dynamic evaluation can be used for applying programs which have been written for matrices with coefficients in a field to matrices with coefficients in a ring. Thus, a proof system for computer algebra should include a treatement of exceptions, which must rely on a careful description of a semantics of exceptions. The categorical notion of monad can be used for formalizing the raising of exceptions: this has been proposed by Moggi and implemented in Haskell. In this paper, we provide a proof system for exceptions which involves both raising and handling, by extending Moggi's approach. Moreover, the core part of this proof system is dual to a proof system for side effects in imperative languages, which relies on the categorical notion of comonad. Both proof systems are implemented in the Coq proof assistant.
Type de document :
Communication dans un congrès
Conference on Intelligent Computer Mathematics Work in Progress, Jul 2014, Coimbra, Portugal. pp.16, 2014
Liste complète des métadonnées


https://hal.archives-ouvertes.fr/hal-00867237
Contributeur : Jean-Guillaume Dumas <>
Soumis le : jeudi 13 mars 2014 - 13:47:44
Dernière modification le : mardi 28 octobre 2014 - 18:34:22
Document(s) archivé(s) le : vendredi 13 juin 2014 - 11:20:47

Fichiers

ProofExceptions.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : hal-00867237, version 3
  • ARXIV : 1310.2338

Collections

Citation

Jean-Guillaume Dumas, Dominique Duval, Burak Ekici, Jean-Claude Reynaud. Certified proofs in programs involving exceptions. Conference on Intelligent Computer Mathematics Work in Progress, Jul 2014, Coimbra, Portugal. pp.16, 2014. <hal-00867237v3>

Partager

Métriques

Consultations de
la notice

510

Téléchargements du document

220