The art of computer programming, volume 1 (3rd ed.): fundamental algorithms
The art of computer programming, volume 1 (3rd ed.): fundamental algorithms
An axiomatic basis for computer programming
Communications of the ACM
Induction Principles for Context-Free Languages
Gesellschaft für Informatik e.V., 3. Jahrestagung
A program verifier
Automated proofs of object code for a widely used microprocessor
Journal of the ACM (JACM)
Communications of the ACM
Proving the correctness of a flight-director program for an airborne minicomputer
SIGMINI '76 Proceedings of the ACM SIGMINI/SIGPLAN interface meeting on Programming systems in the small processor environment
Strum: Structured Microprogram Development System for Correct Firmware
IEEE Transactions on Computers
Hi-index | 0.02 |
A machine-language program, or a microprogram implemented in writable control store, may modify itself. In order to prove the correctness of such a program, we must take this into account. Even if the program does not modify itself, we must prove this. Sometimes this may be done by looking at the individual instructions of the program; sometimes it must be tied in with the proof of correctness of the program. We state here, and illustrate by examples, certain principles for proving the correctness of programs and microprograms under these conditions. The principles are extensions to the standard inductive assertion method.