DeepAI AI Chat
Log In Sign Up

Applying Model Checking to Highly-Configurable Safety Critical Software: The SPS-PPS PLC Program

by   Borja Fernandez Adiego, et al.

An important aspect of many particle accelerators is the constant evolution and frequent configuration changes that are needed to perform the experiments they are designed for. This often leads to the design of configurable software that can absorb these changes and perform the required control and protection actions. This design strategy minimizes the engineering and maintenance costs, but it makes the software verification activities more challenging since safety properties must be guaranteed for any of the possible configurations. Software model checking is a popular automated verification technique in many industries. This verification method explores all possible combinations of the system model to guarantee its compliance with certain properties or specification. This is a very appropriate technique for highly configurable software, since there is usually an enormous amount of combinations to be checked. This paper presents how PLCverif, a CERN model checking platform, has been applied to a highly configurable Programmable Logic Controller (PLC) program, the SPS Personnel Protection System (PPS). The benefits and challenges of this verification approach are also discussed.


page 1

page 2

page 3

page 4


Higher-Order Program Verification via HFL Model Checking

There are two kinds of higher-order extensions of model checking: HORS m...

Interpolation and SAT-Based Model Checking Revisited: Adoption to Software Verification

Interpolation-based model checking (McMillan, 2003) is a formal-verifica...

An Overview of the HFL Model Checking Project

In this article, we give an overview of our project on higher-order prog...

Bounded Invariant Checking for Stateflow

Stateflow models are complex software models, often used as part of indu...

Automated Verification of Stand-alone Solar Photovoltaic Systems

With declining costs and increasing performance, the deployment of renew...

ct-fuzz: Fuzzing for Timing Leaks

Testing-based methodologies like fuzzing are able to analyze complex sof...

PLCverif: Status of a Formal Verification Tool for Programmable Logic Controller

Programmable Logic Controllers (PLC) are widely used for industrial auto...