IEEE Transactions on Software Engineering · 1981 · 66 citations · 9 references
ComputingComputer ScienceFormal MethodsProgramming LanguagesSoftware EngineeringDeductive VerificationProgramming Language DesignSoftware DesignSpecification LanguagesType CheckingType SystemsAbstract Data TypesAbstract TypesProgram OptimizationProgram RepresentationProgram TransformationProgram VerificationTransformation LanguagesTransformational Semantics
A methodology of program development by transformations is outlined. In particular, ways of representing the transformation rules are discussed, and the relationship between notions of their correctness and the semantic definition of programming languages is studied. How transformation techniques are complemented by the use of abstract data types and assertions is described. In the resulting calculus of transformations, the single rules not only represent design or optimization techniques, but they also incorporate verification principles. To illustrate this approach, the Warshall algorithm is developed by successive applications of transformations.
9
A Transformation System for Developing Recursive Programs
R. M. Burstall, John Darlington · Journal of the ACM · 1977 · 1.3K citations · Full text
Initial Algebra Semantics and Continuous Algebras
Joseph A. Goguen, J. W. Thatcher, Eric G. Wagner et al. · Journal of the ACM · 1977 · 803 citations · Full text
Computing, Computer Science, Algebra +12
Some transformations for developing recursive programs
R. M. Burstall, John Darlington · ACM SIGPLAN Notices · 1975 · 78 citations
The Equivalence of Certain Computations
D. C. Cooper · The Computer Journal · 1966 · 56 citations · Full text