Summary
An approach to the study of program testing is introduced in which program testing is treated as a special kind of equivalence problem. In this approach, classes of programs P * and associated classes of test sets T * are defined which have the property that if two programs P and Q in P * agree on a set of tests from T *, then P and Q are computationally equivalent. The properties of a class P * and the associated class T * can be thought of as defining a set of assumptions about a hypothetical correct version Q of a program P in P *. If the assumptions are valid then it is possible to prove the correctness of P by testing. The main result of the paper is an equivalence theorem for classes of programs which carry out sequences of computations involving the elements of arrays.
Similar content being viewed by others
References
Boyer, R.S., Elspas, B., Levitt, K.N.: SELECT—A formal system for testing and debugging programs by symbolic execution. In: Proceedings 1975 International Conference on Reliable Software, Los Angeles, pp. 234–245. Long Beach (Calif.): IEEE Press 1975
Caviness, B.F.: On canonical forms and simplification. Carnegie-Mellon University, Ph.D. Thesis, Department of Computer Science, 1968
Clarke, L.A.: A system to generate test data and symbolically execute programs. IEEE Trans. Software Engrg. SE-2, 215–222 (1976)
COBOL-TDG-II: Information Management Incorporated, San Francisco, California
Fairley, R.E.: An experimental program testing facility. IEEE Trans. Software Engrg. SE-1, 350–357 (1975)
Geller, M.: Test data as an aid in proving program correctness. In: Proceedings of Second Symposium on Principles of Programming Languages, Atlanta, pp. 209–218. New York: ACM Publications 1976
Goodenough, J.B., Gerhart, S.L.: Toward a theory of test data selection. IEEE Trans. Software Engrg. SE-1, 156–173 (1975)
Hetzel, W.C.: An experimental analysis of program verification methods. University of North Carolina, Ph.D. Thesis, Department of Computer Science, 1976
Howden, W.E.: Elementary algebraic program testing techniques. University of California, San Diego, Applied Physics and Information Sciences Computer Science Technical Report 12, 1976
Howden, W.E.: Experiments with a symbolic evaluation system. AFIPS-76, pp. 899–908. Montvale (N.J.): AFIPS Press 1976
Howden, W.E.: Symbolic testing and the DISSECT symbolic evaluation system. IEEE Trans. Software Engrg. SE-3, 266–278 (1977)
Howden, W.E.: Methodology for the generation of program test data. IEEE Trans. Computers C-24, 554–560 (1975)
Howden, W.E.: Reliability of the path analysis testing strategy. IEEE Trans. Software Engrg. SE-2, 208–214 (1976)
Howden, W.E.: Symbolic testing and Lindenmayer grammars. Information Processing Lett. (to appear)
Huang, J.C.: An approach to program testing. Comput. Surveys 7, 113–128 (1975)
King, J.C.: Symbolic execution and program testing. Comm. ACM 19, 385–394 (1976)
Krause, K.W., Smith, R.W., Goodwin, M.A.: Optimal software test planning through automated network analysis. In: Proceedings 1973 IEEE Symposium on Computer Software Reliability, Washington, pp. 18–22. Long Beach (Calif.): IEEE Press 1975
Miller, E.F., Melton, R.A.: Automated generation of testcase datasets. In: Proceedings 1975 International Conference on Reliable Software, Los Angeles, pp. 51–58. Long Beach (Calif.): IEEE Press 1975
Osterweil, L.J., Fosdick, L.D.: DAVE—A validation error detection and documentation system for Fortran programs. Software—Practice and Experience 6, 473–486 (1976)
Pimont, S., Rault, J.C.: A software reliability assessment based on a structural and behavioral analysis of program. In: Proceedings Second International Conference on Software Reliability, San Francisco, pp. 486–491. Long Beach (Calif.): IEEE Press 1976
Ramamoorthy, C.V., Ho, S.F.: Testing large software with automated software evaluation systems. IEEE Trans. Software Engrg. SE-1, 46–58 (1975)
Stucki, L.G.: Automatic generation of self-metric software. In: Proceedings of the 1973 IEEE Symposium on Computer Software Reliability, Washington, pp. 94–100. Long Beach (Calif.): IEEE Press 1973
Stucki, L.G., Foshee, G.D.: New assertion concepts for self-metric software validation. In: Proceedings of 1975 International Conference on Reliable Software. Los Angeles, pp. 59–71. Long Beach (Calif.): IEEE Press 1975
Author information
Authors and Affiliations
Additional information
This research was funded by the National Science Foundation under grant No. MCS 76-03295
Rights and permissions
About this article
Cite this article
Howden, W.E. Algebraic program testing. Acta Informatica 10, 53–66 (1978). https://doi.org/10.1007/BF00260923
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00260923