Dafny
swMATH ID: | 183 |
Software Authors: | Leino, Rustan |
Description: | Dafny is an imperative object-based language with built-in specification constructs. The Dafny static program verifier can be used to verify the functional correctness of programs.The Dafny programming language is designed to support the static verification of programs. It is imperative, sequential, supports generic classes, dynamic allocation, and inductive datatypes, and builds in specification constructs. The specifications include pre- and postconditions, frame specifications (read and write sets), and termination metrics. To further support specifications, the language also offers updatable ghost variables, recursive functions, and types like sets and sequences. Specifications and ghost constructs are used only during verification; the compiler omits them from the executable code.The Dafny verifier is run as part of the compiler. As such, a programmer interacts with it much in the same way as with the static type checker—when the tool produces errors, the programmer responds by changing the program’s type declarations, specifications, and statements. |
Homepage: | http://research.microsoft.com/en-us/projects/dafny/ |
Programming Languages: | .Net |
Operating Systems: | Windows |
Dependencies: | Boogie |
Keywords: | keywords |
Related Software: | z3; Boogie; Isabelle/HOL; Why3; Coq; VeriFast; VCC; Spec#; CVC4; JML; WhyML; SIMPLIFY; Viper; Frama-C; VerCors; Eiffel; SMT-LIB; GitHub; ESC/Java; Rodin |
Cited in: | 113 Documents |
Standard Articles
2 Publications describing the Software, including 2 Publications in zbMATH | Year |
---|---|
Automating induction with an SMT solver. Zbl 1326.68262 Leino, K. Rustan M. |
2012
|
Dafny: an automatic program verifier for functional correctness. Zbl 1253.68095 Leino, K. Rustan M. |
2010
|
all
top 5
Cited by 280 Authors
all
top 5
Cited in 11 Serials
all
top 5