Predicate Calculus and Program Semantics
Springer Science & Business Media, Dec 6, 2012 - Computers - 220 pages
This booklet presents a reasonably self-contained theory of predicate trans former semantics. Predicate transformers were introduced by one of us (EWD) as a means for defining programming language semantics in a way that would directly support the systematic development of programs from their formal specifications. They met their original goal, but as time went on and program derivation became a more and more formal activity, their informal introduction and the fact that many of their properties had never been proved became more and more unsatisfactory. And so did the original exclusion of unbounded nondeterminacy. In 1982 we started to remedy these shortcomings. This little monograph is a result of that work. A possible -and even likely- criticism is that anyone sufficiently versed in lattice theory can easily derive all of our results himself. That criticism would be correct but somewhat beside the point. The first remark is that the average book on lattice theory is several times fatter (and probably less self contained) than this booklet. The second remark is that the predicate transformer semantics provided only one of the reasons for going through the pains of publication.
What people are saying - Write a review
We haven't found any reviews in the usual places.
On functions and equality
The calculus of boolean structures
Some properties of predicate transformers
Semantics of straightline programs
Equations in predicates and their extreme solutions
Semantics of repetitions
The strongest postcondition
Other editions - View all
and-continuous binding power boolean scalar boolean structures calc chapter class finally computation under control consequence def of f defined definition denote denumerably disjunction distributes dummy End of Proof End of Remark equation equivalence everywhere existential quantification f is conjunctive f is monotonic f".false false finitely conjunctive fix.y formal formulae function application functional composition functional iteration g and h g.true global variable Hence hint holds in precisely idempotent identity element identity function integer introduce Leibniz Leibniz's Rule manipulation mathematical induction natural numbers negation non-empty notation one-point rule or-continuous postcondition postulate precisely those initial predicate calculus predicate transformer Proof We observe range reader requirement R0 sequence space strongest solution subexpression substitution symmetric Theorem theory Tr.x v transformer f true universal quantification universally conjunctive universally junctive weakest solution well-founded sets well-foundedness wip.IF wlp.DO.X wlp.S wp.S X A Y