Rigorous Software Development von José Bacelar Almeida | An Introduction to Program Verification | ISBN 9781447175575

Rigorous Software Development

An Introduction to Program Verification

von José Bacelar Almeida, Maria João Frade, Jorge Sousa Pinto und Simão Melo de Sousa
Mitwirkende
Autor / AutorinJosé Bacelar Almeida
Autor / AutorinMaria João Frade
Autor / AutorinJorge Sousa Pinto
Autor / AutorinSimão Melo de Sousa
Buchcover Rigorous Software Development | José Bacelar Almeida | EAN 9781447175575 | ISBN 1-4471-7557-3 | ISBN 978-1-4471-7557-5

Rigorous Software Development

An Introduction to Program Verification

von José Bacelar Almeida, Maria João Frade, Jorge Sousa Pinto und Simão Melo de Sousa
Mitwirkende
Autor / AutorinJosé Bacelar Almeida
Autor / AutorinMaria João Frade
Autor / AutorinJorge Sousa Pinto
Autor / AutorinSimão Melo de Sousa

Software errors can lead to catastrophic consequences, from financial losses to threats to human safety. As a result, rigorous methods for software development and validation have become increasingly critical. Program verification, a key area of formal methods, provides mathematical tools and techniques to ensure that software behaves as intended. 

This book provides a comprehensive introduction to program verification, combining theoretical foundations with practical applications using real-world tools. It offers a self-contained overview of propositional logic and first-order reasoning with theories, followed by a study of Hoare-style program logic with annotations and the generation of verification conditions. The use of Frama-C’s WP plug-in for verifying C programs annotated with the ACSL specification language, including safety properties, is also covered. This revised and expanded second edition incorporates recent advances in formal methods and program verification, integrating new techniques, tools, and exercises to equip readers with the skills necessary for rigorous software development.

Rigorous Software Development is ideal for computer science students, researchers in formal methods, and software engineers seeking a deeper understanding of program verification techniques and tools. It equips readers with the knowledge needed to apply rigorous methods in practice while providing a solid foundation for the evolving landscape of modern software engineering.