On the strength of "sometimes" and "always" in program verification
Information and Control
Ten Years of Hoare's Logic: A Survey—Part I
ACM Transactions on Programming Languages and Systems (TOPLAS)
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
A Characterization of Floyd-Provable Programs
Proceedings on Mathematical Foundations of Computer Science
Making Dynamic Logic First-Order
Proceedings on Mathematical Foundations of Computer Science
First Order Dynamic Logic with Decidable Proofs and Workable Model Theory
FCT '81 Proceedings of the 1981 International FCT-Conference on Fundamentals of Computation Theory
Nonstandard model in propositional dynamic logic
Logic of Programs and Their Applications, Proceedings
Nonstandard runs of Floyd-provable programs
Logic of Programs and Their Applications, Proceedings
Sharpening the characterization of the power of Floyd method
Logic of Programs and Their Applications, Proceedings
Logic of Programs, Workshop
Non-Standard Fixed Points in First Order Logic
Proceedings of the Carnegie Mellon Workshop on Logic of Programs
Computability and completeness in logics of programs (Preliminary Report)
STOC '77 Proceedings of the ninth annual ACM symposium on Theory of computing
A completeness technique for d-axiomatizable semantics
STOC '79 Proceedings of the eleventh annual ACM symposium on Theory of computing
Semantical consideration on floyo-hoare logic
SFCS '76 Proceedings of the 17th Annual Symposium on Foundations of Computer Science
The temporal logic of programs
SFCS '77 Proceedings of the 18th Annual Symposium on Foundations of Computer Science
Hi-index | 0.00 |
The present author as well as Andreka's group has experienced, while writing program- verifying programs, the following dilemma. We have to decide which program verification method (i.e. logic of programs) to choose as a framework for our software system. It is not obvious that the strongest method is also the best because it might overload the theorem prover subprogram. So we have to optimise. But for this we need as much information and insight as possible into the natures of available methods. Non-standard algorithmic logic of dynamic logic (NDL from now on) is a complete first order logic with a decidable proof concept for reasoning about programs, developed in 1978 by H. Andreka et al. NDL unifies existing approaches to program verification and turns incompleteness results into completeness results. Still, it is far from being popular and this is because non-standard models of computation are unpopular. It is the aim of the present paper to show that these models play for dynamic logic the same role which, say, complex numbers, play for physics. They are merely a tool for proving very realistic, standard properties of programs (e.g. non-provability by a given standard method) or for reasoning about (existing) program verification methods. The paper also provides two essential proofs, which are missing in their complete or proper form from the publications.