Genetic Synthesis of Concurrent Code Using Model Checking and Statistical Model Checking

被引:0
|
作者
Bu, Lei [1 ]
Peled, Doron [2 ]
Shen, Dachuan [1 ]
Zhuang, Yuan [1 ]
机构
[1] Nanjing Univ, State Key Lab Novel Software Technol, Nanjing, Jiangsu, Peoples R China
[2] Bar Ilan Univ, Dept Comp Sci, Ramat Gan, Israel
来源
基金
中国国家自然科学基金;
关键词
D O I
10.1007/978-3-319-94111-0_16
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Genetic programming (GP) is a heuristic method for automatically generating code. It applies probabilistic-based generation and mutation of code, combined with "natural selection" principles, using a fitness function. Often, the fitness is calculated based on a large test suite. Recently, GP was applied for synthesizing correct-by-design concurrent code from temporal specification, where model checking was used for calculating the fitness function. A deficiency of this approach is that it uses a limited number of fitness values, based on a small number of modes for each verified specification property (e.g., satisfies, does not satisfy a given property). Furthermore, the need to apply model checking on many candidate solutions using the genetic process makes using an off-the-shelf model checker such as Spin prohibitively expensive. The repeated invocation of such a tool, compiling the code for a new candidate solution and running it, can render the performance of this approach several orders of magnitude slower than using an internal model checking. To tackle this problem, we describe here the use of a combination of statistical model checking, and a light use of model checking, for calculating the fitness required by GP.
引用
收藏
页码:275 / 291
页数:17
相关论文
共 50 条
  • [1] Statistical Model Checking of LLVM Code
    Legay, Axel
    Nowotka, Dirk
    Poulsen, Danny Bogsted
    Tranouez, Louis-Marie
    FORMAL METHODS, 2018, 10951 : 542 - 549
  • [2] Unit checking: Symbolic model checking for a unit of code
    Gunter, E
    Peled, D
    VERIFICATION: THEORY AND PRACTICE: ESSAYS DEDICATED TO ZHOAR MANNA ON THE OCCASION OF HIS 64TH BIRTHDAY, 2003, 2772 : 548 - 567
  • [3] Model driven code checking
    Holzmann, Gerard J.
    Joshi, Rajeev
    Groce, Alex
    AUTOMATED SOFTWARE ENGINEERING, 2008, 15 (3-4) : 283 - 297
  • [4] Model driven code checking
    Gerard J. Holzmann
    Rajeev Joshi
    Alex Groce
    Automated Software Engineering, 2008, 15 : 283 - 297
  • [5] Synthesis of Parametric Programs using Genetic Programming and Model Checking
    Katz, Gal
    Peled, Doron
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2013, (140): : 70 - 84
  • [6] Using Statistical Model Checking for Measuring Systems
    Grosu, Radu
    Peled, Doron
    Ramakrishnan, C. R.
    Smolka, Scott A.
    Stoller, Scott D.
    Yang, Junxing
    LEVERAGING APPLICATIONS OF FORMAL METHODS, VERIFICATION AND VALIDATION: SPECIALIZED TECHNIQUES AND APPLICATIONS, PT II, 2014, 8803 : 223 - 238
  • [7] Statistical Model Checking Using Perfect Simulation
    El Rabih, Diana
    Pekergin, Nihal
    AUTOMATED TECHNOLOGY FOR VERIFICATION AND ANALYSIS, PROCEEDINGS, 2009, 5799 : 120 - 134
  • [8] Deep Statistical Model Checking
    Gros, Timo P.
    Hermanns, Holger
    Hoffmann, Joerg
    Klauck, Michaela
    Steinmetz, Marcel
    FORMAL TECHNIQUES FOR DISTRIBUTED OBJECTS, COMPONENTS, AND SYSTEMS, FORTE 2020, 2020, 12136 : 96 - 114
  • [9] A Survey of Statistical Model Checking
    Agha, Gul
    Palmskog, Karl
    ACM TRANSACTIONS ON MODELING AND COMPUTER SIMULATION, 2018, 28 (01):
  • [10] Statistical Model Checking for P
    Duran, Francisco
    Pozas, Nicolas
    Ramirez, Carlos
    Rocha, Camilo
    FORMAL METHODS FOR INDUSTRIAL CRITICAL SYSTEMS, FMICS 2023, 2023, 14290 : 40 - 56