Interactive Verification of Safety-Critical Software

被引:0
作者
da Cruz, Daniela [1 ,2 ]
Henriques, Pedro Rangel [1 ,2 ]
Pinto, Jorge Sousa [2 ,3 ]
机构
[1] CCTC, Braga, Portugal
[2] Univ Minho, P-4719 Braga, Portugal
[3] HASLab INESC TEC, P-4719 Braga, Portugal
来源
2013 IEEE 37TH ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC) | 2013年
关键词
D O I
10.1109/COMPSAC.2013.86
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
A central issue in program verification is the generation of verification conditions (VCs): proof obligations which, if successfully discharged, guarantee the correctness of a program vis-a-vis a given specification. While the basic theory of program verification has been around since the 1960s, the late 1990s saw the advent of practical tools for the verification of realistic programs, and research in this area has been very active since then. Automated theorem provers have contributed decisively to these developments. This paper establishes a basis for the generation of verification conditions combining forward and backward reasoning, for programs consisting of mutually-recursive procedures annotated with contracts and loop invariants. We introduce also a visual technique to verify a program, in an interactive way, using Verification Graphs (VG), where a VG is a Control Flow Graph (CFG) whose edges are labeled with contracts (pre- and postconditions). This technique intends to help a software engineer to find statements that are not valid with respect to the program's specification.
引用
收藏
页码:519 / 528
页数:10
相关论文
共 15 条
[1]  
[Anonymous], 1986, TREI12CO INT SOFTW E
[2]  
[Anonymous], 2003, High Integrity Software: The SPARK Approach to Safety and Security
[3]  
BARNETT M, 2004, LNCS, V3362, P49, DOI [DOI 10.1007/978-3-540-30569-9_3, 10.1007]
[4]  
Barros J. B., 2010, Proceedings of the 2010 8th IEEE International Conference on Software Engineering and Formal Methods (SEFM 2010), P93, DOI 10.1109/SEFM.2010.18
[5]  
Browne I. A., 1995, Foundations of Software Technology and Theoretical Computer Science. 15th Conference. Proceedings, P484
[6]   An overview of JML tools and applications [J].
Burdy L. ;
Cheon Y. ;
Cok D.R. ;
Ernst M.D. ;
Kiniry J.R. ;
Leavens G.T. ;
Leino K.R.M. ;
Poll E. .
International Journal on Software Tools for Technology Transfer, 2005, 7 (3) :212-232
[7]  
Conchon Sylvain., 2006, ERGO THEOREM PROVER
[8]  
daCruz D., 2010, P 10 WORKSH LANG DES, P3
[9]  
daCruz D., 2012, TRHASLAB012012 U MIN, V01, P2012
[10]   Z3: An efficient SMT solver [J].
de Moura, Leonardo ;
Bjorner, Nikolaj .
TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, 2008, 4963 :337-340