Dafny is a programming 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.
![Dafny: A Language and Program Verifier for Functional Correctness - Microsoft Research](https://cdn-ak-scissors.b.st-hatena.com/image/square/96105ac74ae77a34ac756af710ee940d0a22ad81/height=288;version=1;width=512/https%3A%2F%2Fwww.microsoft.com%2Fen-us%2Fresearch%2Fuploads%2Fprod%2F2008%2F12%2Fdafny-logo_sm-300x249.jpg)