Litcius/Paper detail

Software Model Checking: 20 Years and Beyond

Dirk Beyer, Andreas Podelski

2022Lecture notes in computer science16 citationsDOIOpen Access PDF

Abstract

Abstract We give an overview of the development of software model checking, a general approach to algorithmic program verification that integrates static analysis, model checking, and deduction. We start with a look backwards and briefly cover some of the important steps in the past decades. The general approach has become a research topic on its own, with a wide range of tools that are based on the approach. Therefore, we discuss the maturity of the research area of software model checking in terms of looking at competitions, at citations, and most importantly, at the tools that were build in this area: we count 76 verification systems for software written in C or Java. We conclude that software model checking has quickly grown to a significant field of research with a high impact on current research directions and tools in software verification.

Topics & Concepts

Computer scienceModel checkingSoftware engineeringSoftware verificationSoftwareJavaVerification and validationProgramming languageSoftware developmentField (mathematics)Cover (algebra)Software constructionMechanical engineeringMathematicsEngineeringPure mathematicsStatisticsSoftware Testing and Debugging TechniquesFormal Methods in VerificationSoftware Reliability and Analysis Research