The SeaHorn Verification Framework

被引:229
作者
Gurfinkel, Arie [1 ]
Kahsai, Temesghen [2 ]
Komuravelli, Anvesh [3 ]
Navas, Jorge A. [4 ]
机构
[1] Carnegie Mellon Univ, Inst Software Engn, Pittsburgh, PA 15213 USA
[2] Carnegie Mellon Univ, NASA Ames, Pittsburgh, PA 15213 USA
[3] Carnegie Mellon Univ, Dept Comp Sci, Pittsburgh, PA 15213 USA
[4] NASA Ames, SGT, Pittsburgh, PA USA
来源
COMPUTER AIDED VERIFICATION, PT I | 2015年 / 9206卷
关键词
PREDICATE; PROGRAMS; SYSTEM;
D O I
10.1007/978-3-319-21690-4_20
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In this paper, we present SeaHorn, a software verification framework. The key distinguishing feature of SeaHorn is its modular design that separates the concerns of the syntax of the programming language, its operational semantics, and the verification semantics. SeaHorn encompasses several novelties: it (a) encodes verification conditions using an efficient yet precise inter-procedural technique, (b) provides flexibility in the verification semantics to allow different levels of precision, (c) leverages the state-of-the-art in software model checking and abstract interpretation for verification, and (d) uses Horn-clauses as an intermediate language to represent verification conditions which simplifies interfacing with multiple verification tools based on Horn-clauses. SeaHorn provides users with a powerful verification tool and researchers with an extensible and customizable framework for experimenting with new software verification techniques. The effectiveness and scalability of SeaHorn are demonstrated by an extensive experimental evaluation using benchmarks from SV-COMP 2015 and real avionics code.
引用
收藏
页码:343 / 361
页数:19
相关论文
共 52 条
[1]  
Albarghouthi Aws, 2012, Computer Aided Verification. Proceedings 24th International Conference, CAV 2012, P672, DOI 10.1007/978-3-642-31424-7_48
[2]  
Albarghouthi A, 2013, LECT NOTES COMPUT SC, V7795, P637, DOI 10.1007/978-3-642-36742-7_52
[3]  
Albarghouthi A, 2012, LECT NOTES COMPUT SC, V7460, P300, DOI 10.1007/978-3-642-33125-1_21
[4]  
Albarghouthi A, 2012, LECT NOTES COMPUT SC, V7148, P39, DOI 10.1007/978-3-642-27940-9_4
[5]  
Amato G, 2013, LECT NOTES COMPUT SC, V7935, P25, DOI 10.1007/978-3-642-38856-9_4
[6]  
[Anonymous], 2013, Tech. Rep. MSR-TR-2013-6
[7]  
[Anonymous], 2015, TOOLS ALGORITHMS CON
[8]  
Arlt S, 2014, LECT NOTES COMPUT SC, V8430, P313, DOI 10.1007/978-3-319-06200-6_27
[9]  
Beyer Dirk, 2011, Computer Aided Verification. Proceedings 23rd International Conference, CAV 2011, P184, DOI 10.1007/978-3-642-22110-1_16
[10]   The software model checker BlastApplications to software engineering [J].
Dirk Beyer ;
Thomas A. Henzinger ;
Ranjit Jhala ;
Rupak Majumdar .
International Journal on Software Tools for Technology Transfer, 2007, 9 (5-6) :505-525