Symbolic execution and program testing
Communications of the ACM
Fixpoint approach to the theory of computation
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
Recursive functions of symbolic expressions and their computation by machine, Part I
Communications of the ACM
Theory of Program Structures: Schemes, Semantics, Verification
Theory of Program Structures: Schemes, Semantics, Verification
Complementary Definitions of Programming Language Semantics
Complementary Definitions of Programming Language Semantics
Introduction to Mathematical Theory of Computation
Introduction to Mathematical Theory of Computation
A Discipline of Programming
A new incompleteness result for Hoare's system
STOC '76 Proceedings of the eighth annual ACM symposium on Theory of computing
From algebras to programming languages
STOC '73 Proceedings of the fifth annual ACM symposium on Theory of computing
An interpretation oriented theorem prover over integers
STOC '70 Proceedings of the second annual ACM symposium on Theory of computing
Implementation and applications of Scott's logic for computable functions
Proceedings of ACM conference on Proving assertions about programs
An Elementary Formal Semantics for the Programming Language PL/CS
An Elementary Formal Semantics for the Programming Language PL/CS
Language Features that Support Program Verification (illustrated in PL/C)
Language Features that Support Program Verification (illustrated in PL/C)
Completeness and incompleteness theorems for hoare-like axiom systems.
Completeness and incompleteness theorems for hoare-like axiom systems.
Constructive Methods in Program Verification
IEEE Transactions on Software Engineering
Side effects and aliasing can have simple axiomatic descriptions
ACM Transactions on Programming Languages and Systems (TOPLAS)
A logic for expressions with side-effects
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A practical decision method for propositional dynamic logic (Preliminary Report)
STOC '78 Proceedings of the tenth annual ACM symposium on Theory of computing
Dynamic algebras and the nature of induction
STOC '80 Proceedings of the twelfth annual ACM symposium on Theory of computing
25 Years of Model Checking
From Philosophical to Industrial Logics
ICLA '09 Proceedings of the 3rd Indian Conference on Logic and Its Applications
Pillars of computer science
Hi-index | 0.00 |
A new logic for reasoning about programs is proposed here, and its metamathematics is investigated. No new primitive notions are needed for the logic beyond those used in elementary programming and mathematics, yet the combination of these notions is remarkably powerful. The logic includes a programming language, designed with Michael O'Donnell, for program verification. It forms the core of the PL/CV verifier at Cornell. This study belongs to the discipline of Algorithmic Logic as conceived by Engeler. The logic is related to Park's mu-calculus based on functions instead of relations. The monadic quantifier free subset is developed in the style of the system in J.W. deBakker's Recursive Procedures. But this logic is substantially different from either of these. It is intended to be a practical programming logic in the spirit of E. Dijkstra's calculus. This paper proves the completeness and decidability of the monadic (iterative) programming logic. It discusses the polyadic logic and the programming language briefly, and considers general models for the iterative programming logic. The polyadic logic is shown to be incomplete with respect to standard models, but complete with respect to general models.