<p><span>This textbook overviews the whole spectrum of formal methods and techniques that are aimed at verifying correctness of software, and how they can be used in practice. It focuses on techniques whereby the user has some control over the properties that are being checked. More specifically, it
Concise Guide to Software Verification : From Model Checking to Annotation Checking
β Scribed by Marieke Huisman; Anton Wijs
- Publisher
- Springer International Publishing
- Year
- 2023
- Tongue
- English
- Leaves
- 251
- Series
- Texts in Computer Science
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
This textbook overviews the whole spectrum of formal methods and techniques that are aimed at verifying correctness of software, and how they can be used in practice. It focuses on techniques whereby the user has some control over the properties that are being checked. More specifically, it shows a wide range of techniques covering the whole spectrum: from abstract system design to implementation, from bug finding to full proofs, and from techniques that are push-button by design and give a yes/no answer to techniques that require the user to provide explicit guidance to steer the analysis process.
Formal methods employ a variety of theoretical computer science fundamentals, including logic calculi, formal languages, automata theory, control theory, program semantics, type systems, and type theory. This book gives an overview of a range of techniques, captured by this term formal methods, that are aimed at the analysis of software, and it describes how these techniques can be used to improve the reliability and robustness of software. Formal methods for the analysis of hardware are not in the scope of this book. When we refer to formal methods in this book, we implicitly rule out techniques aimed specifically at hardware analysis.
In this book, our aim is to give an overview of this whole spectrum of formal methods and techniques, and how they can be used in practice. We focus in particular on techniques where the user has some control over the properties that are being checked. We show how we have a wide range of techniques available that cover the whole spectrum from abstract system design to implementation, from bug finding to full proofs, and from techniques that are push-button and give a yes/no answer, to techniques that require the user to provide explicit guidance to steer the analysis process.
β¦ Table of Contents
Front Matter
1. Introduction
2. First-Order Logic and Set Theory
3. System Modelling
4. Functional System Properties in Temporal Logic
5. Model Checking Algorithms
6. Analysing Software
7. Design by Contract Specification Languages
8. Abstract Specifications
9. Runtime Annotation Checking
10. Static Annotation Checking
Back Matter
π SIMILAR VOLUMES
<p><span>This textbook overviews the whole spectrum of formal methods and techniques that are aimed at verifying correctness of software, and how they can be used in practice. It focuses on techniques whereby the user has some control over the properties that are being checked. More specifically, it
<p>This book constitutes the refereed proceedings of the 25th International Symposium on Model Checking Software, SPIN 2018, held in Malaga, Spain, in June 2018.<p>The 14 papers presented, 1 short paper, and 1 demo-tool paper, were carefully reviewed and selected from 28 submissions. Topics covered