Skip to main content
Log in

Program construction by verifying specification

  • Regular Papers
  • Published:
Journal of Computer Science and Technology Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Lowry M R, McCartney R D. Automating Software Design.AAAI Press, 1991.

  2. Xu Jet al. Automating Software Design. Tsinghua University Press and Guangxi Sci. & Tech. Press, 1994.

  3. Manna Z, Waldinger R. Fundamentals of deductive program synthesis.IEEE Trans. Software Engineering, Aug 1992, 18(8): 674–704.

    Article  Google Scholar 

  4. 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.

  5. Cai J, Paige R. Program derivation by fixed point computation.Science of Computer Programming, 1989, 11(3): 197–261.

    Article  MATH  MathSciNet  Google Scholar 

  6. 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.

    Article  MATH  MathSciNet  Google Scholar 

  7. Smith D R, Lowry M R. Algorithm theories and design tactics.Science of Computer Programming, 1990, 14: 305–321.

    Article  MATH  MathSciNet  Google Scholar 

  8. Smith D R. KIDS: A semi-automatic program development system.IEEE Trans. Software Engineering, 1990, 16(9): 1024–1043.

    Article  Google Scholar 

  9. Lin H. Synthesizing loop structure in JOOADL formalism.Computer Application and Software. (to appear).

  10. Banâtre J-P, Le Métayer D. The Gamma model and its discipline of programming.Science of Computer Programming, 1990, 15: 55–77.

    Article  MATH  MathSciNet  Google Scholar 

  11. 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.

  12. Le Métayer D. Higher-order multiset processing.DIMACS Series in Discrete Mathematics and Theoretical Computer Science, 1994, 18: 179–200.

    Google Scholar 

  13. Traugott J. Deductive synthesis of sorting programs.Journal of Symbolic Computation, 1989, 7: 533–572.

    Article  MATH  Google Scholar 

  14. Chandy K M, Misra J. Parallel Program Design: A Foundation. Addison-Wesley, 1988.

Download references

Author information

Authors and Affiliations

Authors

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

Reprints 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

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02946503

Keywords

Navigation