Title :
Interactive Verification of Safety-Critical Software
Author :
Da Cruz, Daniela ; Rangel Henriques, Pedro ; Sousa Pinto, Joaquim
Author_Institution :
CCTC, Univ. do Minho, Braga, Portugal
Abstract :
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-à-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.
Keywords :
inference mechanisms; program verification; safety-critical software; theorem proving; CFG; VC; VG; automated theorem provers; backward reasoning; control flow graph; forward reasoning; interactive verification; mutually-recursive procedures; program verification; proof obligations; realistic programs; safety-critical software; software engineer; verification graphs; visual technique; Backpropagation; Cognition; Color; Computer languages; Contracts; Flow graphs; Software; interactive verification; labeled control flow graphs; strongest postconditions; weakest preconditions;
Conference_Titel :
Computer Software and Applications Conference (COMPSAC), 2013 IEEE 37th Annual
Conference_Location :
Kyoto
DOI :
10.1109/COMPSAC.2013.86