My Account Log in

1 option

Guide to Software Verification with Frama-C : Core Components, Usages, and Applications / edited by Nikolai Kosmatov, Virgile Prevosto, Julien Signoles.

Springer Nature - Springer Computer Science eBooks 2024 English International Available online

View online
Format:
Book
Author/Creator:
Kosmatov, Nikolai.
Contributor:
Prevosto, Virgile.
Signoles, Julien.
Series:
Computer Science Foundations and Applied Logic, 2731-5762
Language:
English
Subjects (All):
Computer programs--Testing.
Computer programs.
Programming languages (Electronic computers).
Mathematics--Data processing.
Mathematics.
Coding theory.
Information theory.
Software Testing.
Programming Language.
Computational Mathematics and Numerical Analysis.
Coding and Information Theory.
Local Subjects:
Software Testing.
Programming Language.
Computational Mathematics and Numerical Analysis.
Coding and Information Theory.
Physical Description:
1 online resource (708 pages)
Edition:
1st ed. 2024.
Place of Publication:
Cham : Springer International Publishing : Imprint: Springer, 2024.
Summary:
Frama-C is a popular open-source toolset for analysis and verification of C programs, largely used for teaching, experimental research, and industrial applications. With the growing complexity and ubiquity of modern software, there is increasing interest in code analysis tools at various levels of formalization to ensure safety and security of software products. Acknowledging the fact that no single technique will ever be able to fit all software verification needs, the Frama-C platform features a wide set of plug-ins that can be used or combined for solving specific verification tasks. This guidebook presents a large panorama of basic usages, research results, and concrete applications of Frama-C since the very first open-source release of the platform in 2008. It covers the ACSL specification language, core verification plug-ins, advanced analyses and their combinations, key ingredients for developing new plug-ins, as well as successful industrial case studies in which Frama-C has helped engineers verify crucial safety or security properties. Topics and features: * Gentle, example-based introduction to software specification and verification * Wide panorama of state-of-the-art specification and analysis techniques * Step-by-step guide to develop your own, tailor-made analysis on top of the platform * Inspiring success stories of Frama-C deployment on industrial code * More than 15 years of R&D on analysis and verification of C code This book is firmly rooted on the practice of software analysis, with numerous examples, exercises and application guidelines. As such, it is particularly well suited for software verification practitioners wishing to deploy verification on their code, as well as for undergraduate students with little or no experience in code analysis techniques. More advanced sections on the theoretical underpinnings of the analyzers will be of interest for graduate students and researchers. Nikolai Kosmatov is a Senior Researcher at Thales Research & Technology, France. Virgile Prevosto is a Senior Researcher and Julien Signoles is a Research Director, both at Université Paris-Saclay, CEA, List, France.
Contents:
Foreword
Part I. Core Components
ACSL Specification Language
The Kernel and its Services
Abstract Interpretation with Eva
Deductive Verification with WP
Runtime Assertion Checking with E-ACSL
Test generation with PathCrawler
Development of new plug-ins
Part II. Advanced Usages and Combinations
Tools for Program Understanding
Combinations of Analyses
Numerical Accuracy Analysis
Analyses of Concurrent Programs
High-Level Properties
Part III. Applications and Emerging Domains
Applications in Transportation, Energy and Defence
Applications in Cybersecurity and Trusted AI
Artificial Intelligence for Improving Verification Techniques
Index
Bibliography.
Notes:
Description based on publisher supplied metadata and other sources.
ISBN:
3-031-55608-9
OCLC:
1446801037

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account