Rigorous Software Development: An Introduction to Program Verification / Edition 1

Rigorous Software Development: An Introduction to Program Verification / Edition 1

ISBN-10:
0857290177
ISBN-13:
9780857290175
Pub. Date:
01/11/2011
Publisher:
Springer London
ISBN-10:
0857290177
ISBN-13:
9780857290175
Pub. Date:
01/11/2011
Publisher:
Springer London
Rigorous Software Development: An Introduction to Program Verification / Edition 1

Rigorous Software Development: An Introduction to Program Verification / Edition 1

$39.95
Current price is , Original price is $39.95. You
$39.95 
  • SHIP THIS ITEM
    Qualifies for Free Shipping
  • PICK UP IN STORE
    Check Availability at Nearby Stores
  • SHIP THIS ITEM

    Temporarily Out of Stock Online

    Please check back later for updated availability.


Overview

The use of mathematical methods in the development of software is essential when reliable systems are sought; in particular they are now strongly recommended by the official norms adopted in the production of critical software. Program Verification is the area of computer science that studies mathematical methods for checking that a program conforms to its specification. This text is a self-contained introduction to program verification using logic-based methods, presented in the broader context of formal methods for software engineering. The idea of specifying the behaviour of individual software components by attaching contracts to them is now a widely followed approach in program development, which has given rise notably to the development of a number of behavioural interface specification languages and program verification tools. A foundation for the static verification of programs based on contract-annotated routines is laid out in the book. These can be independently verified, which provides a modular approach to the verification of software. The text assumes only basic knowledge of standard mathematical concepts that should be familiar to any computer science student. It includes a self-contained introduction to propositional logic and first-order reasoning with theories, followed by a study of program verification that combines theoretical and practical aspects - from a program logic (a variant of Hoare logic for programs containing user-provided annotations) to the use of a realistic tool for the verification of C programs (annotated using the ACSL specification language), through the generation of verification conditions and the static verification of runtime errors.

Product Details

ISBN-13: 9780857290175
Publisher: Springer London
Publication date: 01/11/2011
Series: Undergraduate Topics in Computer Science
Edition description: 2011
Pages: 307
Product dimensions: 6.00(w) x 9.20(h) x 0.60(d)

About the Author

José Bacelar Almeida is a lecturer at the University of Minho, Portugal. He graduated in Electrical and Computer Engineering and received his PhD in Computer Science from the University of Minho. His areas of interest include semantics of programming languages, proof assistants, and security. Maria João Frade obtained her PhD in Computer Science from the University of Minho, Portugal, and is currently a lecturer at this institution. Her research interests include type theory, structural proof theory, semantics of programming languages and program logics. Jorge Sousa Pinto obtained his PhD in Computer Science from École Polytechnique, France, and is currently a lecturer at the University of Minho, Portugal. His interests include program verification and the use of formal methods in software engineering. Simão Melo de Sousa is a lecturer at the University of Beira Interior, Portugal. He graduated in Computer Science from the University of Orléans, France, and received his PhD in Computer Science from the University of Nice-Sophia Antipolis / INRIA. His interests include formal methods, reliability and security of computer systems, and computer-aided reasoning.

Table of Contents

List of Figures.- 1. Introduction.- 2. An Overview of Formal Methods Tools and Techniques.- 3. Propositional Logic.- 4. First-Order Logic.- 5. Hoare Logic.- 6. Generating Verification Conditions.- 7. Safety Properties.- 8. Procedures and Contracts.- 9. Specifying C Programs.- 10. Verifying C Programs.- Bibliography.- Index.
From the B&N Reads Blog

Customer Reviews