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
Read or Download The Foundations of Program Verification PDF
Best programming languages books
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 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.
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.
-- 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
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.
Categories: Programming Languages