VSL 2014: VIENNA SUMMER OF LOGIC 2014

SMACK: Decoupling Source Language Details from Verifier Implementations

Authors: Zvonimir Rakamaric and Michael Emmi

PapersPapers with AbstractsPrefaceAuthor IndexKeyword Index

Paper Information

Title:SMACK: Decoupling Source Language Details from Verifier Implementations
Authors:Zvonimir Rakamaric and Michael Emmi
Proceedings:CAV 2014 LNCS Proceedings
Editors: Armin Biere, Swen Jacobs and Roderick Bloem
Keywords:software verification, intermediate verification language, compiler intermediate representation
Abstract:

ABSTRACT. A major obstacle to putting software verification research into practice is the high cost of developing the infrastructure enabling the application of verification algorithms to actual production code, in all of its complexity. Handling an entire programming language is a huge endeavor which few researchers are willing to undertake, and even fewer could invest the effort to implement their verification algorithms for many source languages. To decouple the implementations of verification algorithms from the details of source languages, and enable rapid prototyping on production code, we have developed SMACK. At its core, SMACK is a translator from the LLVM compiler's popular intermediate representation (IR) into the Boogie intermediate verification language (IVL). Sourcing LLVM IR exploits an increasing number of compiler frontends, optimizations, and analyses. Targeting Boogie exploits a canonical platform which simplifies the implementation of algorithms for verification, model checking, and abstract interpretation. Our initial experience verifying C language programs is encouraging: SMACK is competitive in SV-COMP benchmarks, is able to translate large programs (100 KLOC), and is used in several verification research prototypes.

Pages:8
Talk:Jul 19 12:45
Paper:
Disclaimer | Powered by EasyChair Smart Program