Boogie: A Modular Reusable Verifier for Object-Oriented Programs - Barnett, Mike; Chang, Bor-Yuh Evan; DeLIne, Robert; Jacobs, Bart; Leino, Rustan (FMCO 2005, 2005)
A program verifier is a complex system that uses compiler technology, program semantics, property inference, verification-condition generation, automatic decision procedures, and a user interface. This paper describes the architecture of a state-of-the-art program verifier for object-oriented programs.