A Generic Intermediate Representation for Verification Condition Generation

被引:3
|
作者
Montenegro, Manuel [1 ]
Pena, Ricardo [1 ]
Sanchez-Hernandez, Jaime [1 ]
机构
[1] Univ Complutense Madrid, Madrid, Spain
关键词
Verification platforms; Intermediate representation; Verification conditions; Program transformation;
D O I
10.1007/978-3-319-27436-2_14
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
As part of a platform for computer-assisted verification, we present an intermediate representation of programs that is both language independent and appropriate for the generation of verification conditions. We show how many imperative and functional languages can be translated to this generic intermediate representation, and how the generated conditions reflect the axiomatic semantics of the original program. At this representation level, loop invariants and preconditions of recursive functions belonging to the original program are represented by assertions placed at certain edges of a directed graph. The paper defines the generic representation, sketches the transformation algorithms, and describes how the places where the invariants should be placed are computed. Assuming that, either manually or assisted by the platform, the invariants have been settled, it is shown how the verification conditions are generated. A running example illustrates the process.
引用
收藏
页码:227 / 243
页数:17
相关论文
共 50 条
  • [1] Verification Condition Generation for Hybrid Systems
    Li, Xian
    Schneider, Klaus
    2015 ACM/IEEE INTERNATIONAL CONFERENCE ON FORMAL METHODS AND MODELS FOR CODESIGN (MEMOCODE), 2015, : 238 - 247
  • [2] A Generalized Approach to Verification Condition Generation
    Lourenco, Claudio Belo
    Frade, Maria Joao
    Nakajima, Shin
    Pinto, Jorge Sousa
    2018 IEEE 42ND ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC), VOL 1, 2018, : 194 - 203
  • [3] An improved intermediate representation for datapath generation
    Kasprzyk, N
    Koch, A
    Golze, U
    Rock, M
    ERSA'03: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON ENGINEERING OF RECONFIGURABLE SYSTEMS AND ALGORITHMS, 2003, : 88 - 94
  • [4] Verification of PLC program using a generic intermediate language (IML)
    Thapa, Devinder
    Dangol, Suraj
    Park, Chang Mok
    Wang, Gi-Nam
    DYNAMICS OF CONTINUOUS DISCRETE AND IMPULSIVE SYSTEMS-SERIES B-APPLICATIONS & ALGORITHMS, 2006, 13E : 2956 - 2960
  • [5] Verification condition generation via theorem proving
    Matthews, John
    Moore, J. Strother
    Ray, Sandip
    Vroon, Daron
    LOGIC FOR PROGRAMMING, ARTIFICIAL INTELLIGENCE, AND REASONING, PROCEEDINGS, 2006, 4246 : 362 - 376
  • [6] Verification Condition Generation for Conditional Information Flow
    Amtoft, Torben
    Banerjee, Anindya
    FMSE'07: PROCEEDINGS OF THE 2007 ACM WORKSHOP ON FORMAL METHODS IN SECURITY ENGINEERING, 2007, : 2 - 11
  • [7] Generic Obstacle Detection for Mobile Devices Using a Dynamic Intermediate Representation
    Danescu, Radu
    Petrovai, Andra
    Itu, Razvan
    Nedevschi, Sergiu
    PROCEEDINGS OF THE SECOND INTERNATIONAL AFRO-EUROPEAN CONFERENCE FOR INDUSTRIAL ADVANCEMENT (AECIA 2015), 2016, 427 : 629 - 639
  • [8] THE GENERIC CONDITION IS GENERIC
    BEEM, JK
    HARRIS, SG
    GENERAL RELATIVITY AND GRAVITATION, 1993, 25 (09) : 939 - 962
  • [9] Comparing Verification Condition Generation with Symbolic Execution: An Experience Report
    Kassios, Ioannis T.
    Mueller, Peter
    Schwerhoff, Malte
    VERIFIED SOFTWARE: THEORIES, TOOLS, EXPERIMENTS, 2012, 7152 : 196 - 208
  • [10] Leveraging Compiler Intermediate Representation for Multi- and Cross-Language Verification
    Garzella, Jack J.
    Baranowski, Marek
    He, Shaobo
    Rakamaric, Zvonimir
    VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, VMCAI 2020, 2020, 11990 : 90 - 111