The logic of programming
Formal development programs and proofs
Formal development programs and proofs
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
The Science of Programming
Introduction to Mathematical Theory of Computation
Introduction to Mathematical Theory of Computation
A Discipline of Programming
What Computing is all About
Rewriting of imperative programs into logical equations
Science of Computer Programming
Hi-index | 0.00 |
By giving a declarative meaning to an imperative program, the verification of the imperative program is switched from the imperative paradigm to the declarative or logic paradigm where one can take advantage of, for example, referential transparency. Rather than 'compiling' an imperative program to a 'lower level' we 'inverse compile' the imperative program to the 'higher' declarative level. The declarative view of an imperative program is a predicate associated with the imperative program such that if this predicate satisfies the specification of the program then the imperative program is correct relative to the specification. In one sense the associated predicate gives a declarative meaning to the imperative program.