Control Structure Abstractions of the Backtracking Programming Technique
- 1 December 1976
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. SE-2 (4) , 285-292
- https://doi.org/10.1109/tse.1976.233834
Abstract
Backtracking is a well-known technique for solving combinatorial problems. It is of interest to programming methodologists because 1) correctness of backtracking programs may be difficult to ascertain experimentally and 2) efficiency is often of paramount importance. This paper applies a programming methodology, which we call control structure abstraction, to the backtracking technique. The value of control structure abstraction in the context of correctness is that proofs of general properties of a class of programs with similar control structures are separated from proofs of specific properties of individual programs of the class. In the context of efficiency, it provides sufficient conditions for correctness of an initial program which may subsequently be improved for efficiency while preserving correctness.Keywords
This publication has 10 references indexed in Scilit:
- Proof Theory of Partial Correctness Verification SystemsSIAM Journal on Computing, 1976
- A procedure mechanism for backtrack programmingPublished by Association for Computing Machinery (ACM) ,1976
- Backtrack programming techniquesCommunications of the ACM, 1975
- Knowledge about programsPublished by Association for Computing Machinery (ACM) ,1975
- Estimating the Efficiency of Backtrack ProgramsMathematics of Computation, 1975
- Structured Programming with go to StatementsACM Computing Surveys, 1974
- Programming as a Discipline of Mathematical NatureThe American Mathematical Monthly, 1974
- A note on the for statementBIT Numerical Mathematics, 1972
- Program development by stepwise refinementCommunications of the ACM, 1971
- Nondeterministic AlgorithmsJournal of the ACM, 1967