Abstract data types and software validation
- 1 December 1978
- journal article
- Published by Association for Computing Machinery (ACM) in Communications of the ACM
- Vol. 21 (12), 1048-1064
- https://doi.org/10.1145/359657.359666
Abstract
A data abstraction can be naturally specified using algebraic axioms. The virtue of these axioms is that they permit a representation-independent formal specification of a data type. An example is given which shows how to employ algebraic axioms at successive levels of implementation. The major thrust of the paper is twofold. First, it is shown how the use of algebraic axiomatizations can simplify the process of proving the correctness of an implementation of an abstract data type. Second, semi-automatic tools are described which can be used both to automate such proofs of correctness and to derive an immediate implementation from the axioms. This implementation allows for limited testing of programs at design time, before a conventional implementation is accomplished.Keywords
This publication has 11 references indexed in Scilit:
- Abstraction mechanisms in CLUCommunications of the ACM, 1977
- Abstract data types and the development of data structuresCommunications of the ACM, 1977
- Some extensions to algebraic specificationsPublished by Association for Computing Machinery (ACM) ,1977
- Proving Properties of Complex Data StructuresJournal of the ACM, 1976
- Recursive data structuresInternational Journal of Parallel Programming, 1975
- The verification and synthesis of data structuresActa Informatica, 1975
- Proving Theorems about LISP FunctionsJournal of the ACM, 1975
- The SCRATCHPAD languagePublished by Association for Computing Machinery (ACM) ,1974
- An axiomatic definition of the programming language PASCALActa Informatica, 1973
- Proof of correctness of data representationsActa Informatica, 1972