Generalizing specifications for uniformly implemented loops
ACM Transactions on Programming Languages and Systems (TOPLAS)
Abstraction and specification in program development
Abstraction and specification in program development
Programming with sets; an introduction to SETL
Programming with sets; an introduction to SETL
The C programming language
Cleanroom Software Development: An Empirical Evaluation
IEEE Transactions on Software Engineering
An empirical study of iteration in applications software
Journal of Systems and Software
A Comparative Analysis of Functional Correctness
ACM Computing Surveys (CSUR)
Abstraction and verification in Alphard: defining and specifying iteration and generators
Communications of the ACM
The new math of computer programming
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
Structured Programming; Theory and Practice the Systems Programming Series
Structured Programming; Theory and Practice the Systems Programming Series
Theory of Computation
The ICON Programming Language, 2nd Ed.
The ICON Programming Language, 2nd Ed.
Some classes of naturally provable programs
ICSE '76 Proceedings of the 2nd international conference on Software engineering
Verification of Finite Iterations over Tuples of Data Structures
Programming and Computing Software
Symbolic method of verification of definite iterations over altered data structures
Programming and Computing Software
Verification of finite iterations over collections of variable data structures
Cybernetics and Systems Analysis
Hi-index | 0.00 |
Methods are presented for verifying loops which iterate over elements of data structures. This verification is done in the functional style developed by Mills and others, in which code is verified against the function that the code is intended to compute. The methods allow the verifier to concentrate on the essential computation performed on each element of the structure, and separate out such concerns as data-structure access and termination so that they do not need to be verified again for every loop in the program. The methods are applicable to a large class of data structures and iterations over them.