Verification of Array, Record, and Pointer Operations in Pascal
ACM Transactions on Programming Languages and Systems (TOPLAS)
Ada exception handling: an axiomatic approach
ACM Transactions on Programming Languages and Systems (TOPLAS)
An axiomatic basis for computer programming
Communications of the ACM
Preliminary Ada reference manual
ACM SIGPLAN Notices - Preliminary Ada reference manual
SIMULA 67 common base language, (Norwegian Computing Center. Publication)
SIMULA 67 common base language, (Norwegian Computing Center. Publication)
ANNA: towards a language for annotating Ada programs
SIGPLAN '80 Proceedings of the ACM-SIGPLAN symposium on Ada programming language
Ada packages and the user's conceptual model
ACM SIGAda Ada Letters
Program verification at Stanford
ACM SIGSOFT Software Engineering Notes
Hi-index | 0.00 |
We present a method of formal specification of Ada programs containing packages. The method suggests concepts and guidelines useful for giving adequate informal documentation of packages by means of comments.The method depends on (1) the standard inductive assertion technique for subprograms, (2) the use of history sequences in assertions specifying the declaration and use of packages, and (3) the addition of three categories of specifications to Ada package declarations: (a) visible specifications, (b) boundary specifications, (c) internal specifications.Axioms and proof rules for the Ada package constructs (declaration, instantiation, and function and procedure call) are given in terms of history sequences and package specifications. These enable us to construct formal proofs of the correctness of Ada programs with packages. The axioms and proof rules are easy to implement in automated program checking systems. The use of history sequences in both in formal documentation and formal specifications and proofs is illustrated by examples.