The Foundations of Program Verification by Jacques Loeckx

By Jacques Loeckx

The principles of software Verification moment version Jacques Loeckx and Kurt Sieber Fachbereich informatik Universitat des Saariandes, Saarbrucken, Germany In collaboration with Ryan D. Stansifer division of laptop technological know-how Cornell collage, united states This revised version offers an exact mathematical history to numerous application verification strategies. It concentrates on these verification tools that experience now turn into vintage, akin to the inductive assertions approach to Floyd, the axiomatic approach to Hoare, and Scott's fixpoint induction. the purpose of the ebook is to give those various verification tools in an easy atmosphere and to provide an explanation for their mathematical history specifically the issues of correctness and completeness of different tools are mentioned in a few element and lots of priceless examples are integrated. Contents Authors' PrefacePart A: Preliminaries
* Mathematical Preliminaries
* Predicate Logic
half B: Semantics of Programming Languages
* 3 easy Programming Languages
* Fixpoints in whole Partial Orders
* Denotational Semantics
half C: software Verification Methods
* Correctness of Programs
* The Classical equipment of Floyd
* The Axiomatic approach to Hoare
* Verification equipment according to Denotational Semantics
* LCF A common sense for Computable Functions
half D: Prospects
* an outline of additional Developments

Bibliography Index assessment of the 1st version '. one of many higher books presently on hand which introduces software verification.' G. Bunting, collage university Cardiff college Computing

Show description

Read or Download The Foundations of Program Verification PDF

Best programming languages books

Programming Language Pragmatics (3rd Edition)

Programming Language Pragmatics is the main entire programming language textbook to be had this day. Taking the viewpoint that language layout and language implementation are tightly interconnected, and that neither should be totally understood in isolation, this significantly acclaimed and bestselling e-book has been completely up to date to hide the latest advancements in programming language layout.

The Foundations of Program Verification

The principles of software Verification moment variation Jacques Loeckx and Kurt Sieber Fachbereich informatik Universitat des Saariandes, Saarbrucken, Germany In collaboration with Ryan D. Stansifer division of computing device technology Cornell college, united states This revised version presents an actual mathematical history to a number of software verification ideas.

Graph-Based Proof Procedures for Horn Clauses

Preliminaries. - A Semantics for the Hornlog approach. - The Hornlog facts technique. - Soundness and Completeness effects I. - An Equational Extension. - The He � Refutation procedure. - Soundness and Completeness effects II. - Appendix: Implementation matters.

VHDL Design Representation and Synthesis

-- contains a really transparent creation to dependent layout innovations and layout instruments. -- grasp the ASlC layout procedure and key implementation applied sciences: PLDs, FPGAs, gate arrays, and conventional cells. -- New! CD-ROM comprises the book's VHDL versions, version try out benches, and homework options.

Additional resources for The Foundations of Program Verification

Sample text

4 the relation '=' does not depend on a particular program. The relation '=' is easily seen to be a (partial) function whose value for a configuration (S,O') is defined ifT S "# 8. A computation sequence (of a while-program S) for astate 0' (calIed input state) is a-possibly infinite-sequence of configurations such that SI sequence = S, 0' I = 0' and for every pair of consecutive configurations in the (Si'O'i) = (Si+l' O'i+l) (i ~ 1). A computation sequence which is either infinite or ends with a configuration (Sk' O'k) such that Sk = 8 is called a computation.

This is not in contradiction to the fact that Peano arithmetic is not axiomatizable, because the principle of induction cannot be expressed as a formula of the first-order predicate logic (as it involves a quantification over sets). By the way, one might think that the (first-order) axioms w~ /\ (Vx. (w:::J W~+l)):::J Vx. w for all formulas W E W F F B with only x free fully capture the induction principle over the natural numbers. This is not the case since these axioms express the induction principle only for properties which may be expressed by formulas W of the first-order predicate logic.

O"o(x n ) and not on the values of 0" 0 for other variables. This follows from the Coincidence Theorem of predicate logic. So, in a computation sequence it is sufficient to keep track of a state vector (O"j(x I ), . , O"j(x n » instead of the whole state O"j (as in the next example). This property might be used to define the meaning of a program S to 46 be-instead of a function from L" to L,,-a function from lY' to lY', that is, a function from an 'input vector' to an 'output vector'. This approach is not taken here, since the former approach simplifies combining programming languages and predicate logic.

Download PDF sample

Rated 4.47 of 5 – based on 25 votes

Categories: Programming Languages