Passer à la navigation principale Passer à la recherche Passer au contenu principal

Why3 - Where programs meet provers

  • INRIA Saclay, Laboratoire de Recherche en Informatique (LRI), Université Paris Sud
  • INRIA

Résultats de recherche: Le chapitre dans un livre, un rapport, une anthologie ou une collectionContribution à une conférenceRevue par des pairs

437 Citations (Scopus)

Résumé

We present Why3, a tool for deductive program verification, and WhyML, its programming and specification language. WhyML is a first-order language with polymorphic types, pattern matching, and inductive predicates. Programs can make use of record types with mutable fields, type invariants, and ghost code. Verification conditions are discharged by Why3 with the help of various existing automated and interactive theorem provers. To keep verification conditions tractable and comprehensible, WhyML imposes a static control of aliases that obviates the use of a memory model. A user can write WhyML programs directly and get correct-by-construction OCaml programs via an automated extraction mechanism. WhyML is also used as an intermediate language for the verification of C, Java, or Ada programs. We demonstrate the benefits of Why3 and WhyML on non-trivial examples of program verification.

langue originaleAnglais
titreProgramming Languages and Systems - 22nd European Symposium on Programming, ESOP 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Proceedings
Pages125-128
Nombre de pages4
Les DOIs
étatPublié - 5 mars 2013
Modification externeOui
Evénement22nd European Symposium on Programming, ESOP 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013 - Rome, Italie
Durée: 16 mars 201324 mars 2013

Série de publications

NomLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume7792 LNCS
ISSN (imprimé)0302-9743
ISSN (Electronique)1611-3349

Une conférence

Une conférence22nd European Symposium on Programming, ESOP 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013
Pays/TerritoireItalie
La villeRome
période16/03/1324/03/13

Empreinte digitale

Examiner les sujets de recherche de « Why3 - Where programs meet provers ». Ensemble, ils forment une empreinte digitale unique.

Contient cette citation