Abstract
A program construction method based on Gamma language is proposed. The problem to be solved is specified by first-order predicate logic and a semantic verification program is constructed directly from the specification. Ways, for improving efficiency of the program are also studied. The method differs from the one proposed by Manna and Waldinger, where a program is extracted from the proof of the existence of an object meeting the given specification. On the other hand, it also differs, from the classical one used for deriving Gamma programs of Banâtre and Le Métayer, which consists in decomposing the specification into an invariant and a termination condition.
Similar content being viewed by others
References
Lowry M R, McCartney R D. Automating Software Design.AAAI Press, 1991.
Xu Jet al. Automating Software Design. Tsinghua University Press and Guangxi Sci. & Tech. Press, 1994.
Manna Z, Waldinger R. Fundamentals of deductive program synthesis.IEEE Trans. Software Engineering, Aug 1992, 18(8): 674–704.
Wang M, Lin H, Chen Y. Synthesizing Gamma program from first-order specification. InProc. the Second Chinese World Congress on Intelligent Control and Intelligent Automation (CWC ICIA'97), Xi'an, China, June 23–27, 1997, pp.1224–1229.
Cai J, Paige R. Program derivation by fixed point computation.Science of Computer Programming, 1989, 11(3): 197–261.
Paige R, Henglein F. Mechanical translation of set theoretic problem specifications into efficient RAM code — A case study.Journal of Symbolic Computation, 1987, 4(2): 207–232.
Smith D R, Lowry M R. Algorithm theories and design tactics.Science of Computer Programming, 1990, 14: 305–321.
Smith D R. KIDS: A semi-automatic program development system.IEEE Trans. Software Engineering, 1990, 16(9): 1024–1043.
Lin H. Synthesizing loop structure in JOOADL formalism.Computer Application and Software. (to appear).
Banâtre J-P, Le Métayer D. The Gamma model and its discipline of programming.Science of Computer Programming, 1990, 15: 55–77.
Mussat L. Parallel programming with bags. InProc. Workshop on Research Directions in High-Level Parallel Programming Languages, Mont-Saint Michel, 1991, Springer-Verlag, LNCS 574, pp.219–230.
Le Métayer D. Higher-order multiset processing.DIMACS Series in Discrete Mathematics and Theoretical Computer Science, 1994, 18: 179–200.
Traugott J. Deductive synthesis of sorting programs.Journal of Symbolic Computation, 1989, 7: 533–572.
Chandy K M, Misra J. Parallel Program Design: A Foundation. Addison-Wesley, 1988.
Author information
Authors and Affiliations
Additional information
This work is supported by National Natural Science Foundation of China (Grant No.69373016) and Programme Franco-Chinois de Recherches Avancees(PRA M96-4 No. 9).
Lin Hong is an Associate Professor of the University of Science and Technology of China (USTC) and received the Ph.D. degree in 1997 from USTC. His major research area is theory in very high level language for parallel programming, parallel processing for scientific application and metacomputing.
Chen Guoliang is a Professor of the University of Science and Technology of China graduated from Shanghai Jiao Tong University in 1961. His current research interests include parallel algorithms, parallel computer architecture and parallel/distributed computing.
Rights and permissions
About this article
Cite this article
Lin, H., Chen, G. Program construction by verifying specification. J. of Comput. Sci. & Technol. 13, 597–607 (1998). https://doi.org/10.1007/BF02946503
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF02946503