Verification of Erlang programs using abstract interpretation and model checking

被引:18
|
作者
Huch, F [1 ]
机构
[1] Rhein Westfal TH Aachen, Lehrstuhl Informat 2, D-52056 Aachen, Germany
关键词
abstract interpretation; verification; model checking; Erlang; distributed system;
D O I
10.1145/317765.317908
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present an approach for the verification of Erlang programs using abstract interpretation and model checking. In general model checking for temporal logics like LTL and Erlang programs is undecidable. Therefore we define a framework for abstract interpretations for a core fragment of Erlang. In this framework it is guaranteed, that the abstract operational semantics preserves all paths of the standard operational semantics. We consider properties that have to hold on all paths of a system, like properties in LTL. If these properties can be proved for the abstract operational semantics, they also hold for the Erlang program. They can be proved with model checking if the abstract operational semantics is a finite transition system. Therefore we introduce a example abstract interpretation, which has this property. We have implemented this approach as a prototype and were able to prove properties like mutual exclusion or the absence of deadlocks and lifelocks for some Erlang programs.
引用
收藏
页码:261 / 272
页数:12
相关论文
共 50 条
  • [21] Abstract slicing: A new approach to program slicing based on abstract interpretation and model checking
    Hong, HS
    Lee, I
    Sokolsky, O
    FIFTH IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2005, : 25 - 34
  • [22] Abstract Interpretation of Programs for Model-Based Debugging
    Mayer, Wolfgang
    Stumptner, Markus
    20TH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE, 2007, : 471 - 476
  • [23] ebXML verification using model checking
    Di Sciascio, E
    Donini, FM
    Mongiello, M
    Piscitelli, G
    ITI 2004: PROCEEDINGS OF THE 26TH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY INTERFACES, 2004, : 455 - 460
  • [24] Efficient Verification of Industrial PLC-Programs using Model Checking and Static Analysis
    Biallas, Sebastian
    Kowalewski, Stefan
    Schlich, Bastian
    AUTOMATION 2011, 2011, 213 : 67 - 72
  • [25] Static Contract Checking with Abstract Interpretation
    Faehndrich, Manuel
    Logozzo, Francesco
    FORMAL VERIFICATION OF OBJECT-ORIENTED SOFTWARE, 2011, 6528 : 10 - 30
  • [26] Static Checking By Means of Abstract Interpretation
    Musumbu, Kaninda
    PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND INFORMATION TECHNOLOGY, 2008, : 107 - 112
  • [27] Verification of SPS programs in AWL with the aid of direct model checking
    Schlich, Bastian
    Kowalewski, Stefan
    Wernerus, Joerg
    AUTOMATION 2009, 2009, 2067 : 13 - 16
  • [28] Automated Verification of Go Programs via Bounded Model Checking
    Dilley, Nicolas
    Lange, Julien
    2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING ASE 2021, 2021, : 1016 - 1027
  • [29] Modular Verification of Concurrent Programs via Sequential Model Checking
    Rasin, Dan
    Grumberg, Orna
    Shoham, Sharon
    AUTOMATED TECHNOLOGY FOR VERIFICATION AND ANALYSIS (ATVA 2018), 2018, 11138 : 228 - 247
  • [30] Verification by Abstract Interpretation, Soundness and Abstract Induction
    Cousot, Patrick
    PROCEEDINGS OF THE 17TH INTERNATIONAL SYMPOSIUM ON PRINCIPLES AND PRACTICE OF DECLARATIVE PROGRAMMING (PPDP 2015), 2015, : 1 - 4