Program Construction by Parts

Given a specification that includes a number of user requirements, we wish to focus on the requirements in turn, and derive a partly defined program for each; then combine all the partly defined programs into a single program that satisfies all the requirements simultaneously. In this paper we introduces a mathematical basis for solving this problem; and we illustrate it by means of a simple example.

[1]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[2]  Jules Desharnais,et al.  A Relation Division Operator: The Conjugate Kernel , 1993, Theor. Comput. Sci..

[3]  Rudolf Berghammer,et al.  Relational Algebraic Semantics of Deterministic and Nondeterministic Programs , 1986, Theor. Comput. Sci..

[4]  Emil Sekerinski A Calculus for Predicative Programming , 1992, MPC.

[5]  M. Frappier A relational basis for program construction by parts , 1996 .

[6]  Gunther Schmidt,et al.  Relations and Graphs , 1993, EATCS Monographs on Theoretical Computer Science.

[7]  Ali Mili,et al.  Specification methodology: An integrated relational approach , 1986, Softw. Pract. Exp..

[8]  Peter Naur,et al.  Programming by action clusters , 1969 .

[9]  Eric C. R. Hehner A Practical Theory of Programming , 1993, Texts and Monographs in Computer Science.

[10]  Harlan D. Mills,et al.  Teaching principles of computer programming , 1987, CSC '87.

[11]  Roland Carl Backhouse,et al.  Demonic operators and monotype factors , 1993, Mathematical Structures in Computer Science.

[12]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[13]  C. A. R. Hoare,et al.  Laws of programming , 1987, CACM.

[14]  Mary Sheeran,et al.  Designing Arithmetic Circuits by Refinement in Ruby , 1994, Sci. Comput. Program..

[15]  Bernard Sufrin,et al.  Principles of Computer Programming: A Mathematical Approach , 1989 .

[16]  Glenford J. Myers,et al.  A controlled experiment in program testing and code walkthroughs/inspections , 1978, CACM.