Certified proofs in programs involving exceptions - Archive ouverte HAL
Communication Dans Un Congrès Année : 2014

Certified proofs in programs involving exceptions

Résumé

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.
Fichier principal
Vignette du fichier
ProofExceptions.pdf (205.3 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00867237 , version 1 (08-10-2013)
hal-00867237 , version 2 (11-10-2013)
hal-00867237 , version 3 (13-03-2014)

Identifiants

Citer

Jean-Guillaume Dumas, Dominique Duval, Burak Ekici, Jean-Claude Reynaud. Certified proofs in programs involving exceptions. Conference on Intelligent Computer Mathematics Work in Progress (CICM 2014), Jul 2014, Coimbra, Portugal. pp.16. ⟨hal-00867237v3⟩
497 Consultations
347 Téléchargements

Altmetric

Partager

More