Advertisement

Formulation of induction formulas in verification of prolog programs

  • Tadashi Kanamori
  • Hiroshi Fujita
Program Verification
Part of the Lecture Notes in Computer Science book series (LNCS, volume 230)

Abstract

How induction formulas are formulated in verification of Prolog programs is described. The same problem for well-founded induction was investigated by Boyer and Moore in their verification system for terminating LISP programs (BMTP). The least fixpoint semantics of Prolog provides us with the advantages that computational induction can be easily applied and can generate simpler induction schemes. We investigate how computational induction is applied to a class of first order formulas called S-formulas, in which specifications in our verification system are described. In addition, we show how equivalence preserving program transformation can be utilized to merge induction schemes into a simpler one when more than two induction schemes are suggested.

Keywords

Program Verification Induction Prolog Program Transformation 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    Apt, K.R. and M.H. van Emden, “Contribution to the Theory of Logic Programming”, J. ACM, Vol. 29, No. 3, pp. 841–862, 1982.CrossRefGoogle Scholar
  2. [2]
    de Bakker, J.W. and D. Scott, “A Theory of Programs”, Unpublished Notes, IBM Seminar, Vienna, 1969.Google Scholar
  3. [3]
    Boyer,R.S. and J.S.Moore, “Computational Logic”, Chap.14–15, Academic Press, 1979.Google Scholar
  4. [4]
    Burstall, R., “Proving Properties of Programs by Structural Induction”, Comput.J., Vol. 12, No. 1, pp. 41–48, 1969.Google Scholar
  5. [5]
    Clark,K.L., “Predicate Logic as a Computational Formalism”, pp.75–76, Research Monograph: 79/59, TOC, Imperial College, 1979.Google Scholar
  6. [6]
    Clark,K.L. and S-Å.Tärnlund, “A First Order Theory of Data and Programs”, in Information Processing 77 (B.Gilchrist Ed), pp. 939–944, 1977.Google Scholar
  7. [7]
    van Emden, M.H. and R.A. Kowalski, “The Semantics of Predicate Logic as Programing Language”, J. ACM, Vol. 23, No. 4, pp. 733–742, 1976.CrossRefGoogle Scholar
  8. [8]
    Gordon,M.J.,A.J.Milner and C.P.Wadsworth, “Edinburgh LCF — A Mechanized Logic of Computation' Lecture Notes in Computer Science 78, Springer, 1979.Google Scholar
  9. [9]
    Hagiya, M. and T. Sakurai, “Foundation of Logic Programming Based on Inductive Definition”, New Generation Computing, Vol.2, pp.59–77, 1984.Google Scholar
  10. [10]
    Jaffar, J.,J-L. Lassez and J. Lloyd, “Completeness of the Negation as Failure Rule”, Proc. 8th Internation: Joint Conference on Artificial Intelligence, Vol.1, pp.500–506, 1983.Google Scholar
  11. [11]
    Kanamori,T.and H.Seki, “Verification of Prolog Programs Using An Extension of Execution”, ICOT Technical Report, TR-093, 1984. Also Proc. 3rd International Conference on Logic Programming, 1986.Google Scholar
  12. [12]
    Kanamori, T.and K. Horiuchi, “Type Inference in Prolog and Its Applications”, ICOT Technical Report, TR-095, 1984. Also Proc. 9th International Joint Conference on Artificial Intelligence, Vol. 2, pp. 704–707, 1985.Google Scholar
  13. [13]
    Kowalski,R.A., “Logic for Problem Solving”, Chap. 10–12, North Holland,1980.Google Scholar
  14. [14]
    Murray, N.V., “Completely Non-Clausal Theorem Proving”, Artificial Intelligence, Vol. 18, pp. 67–85, 1982.CrossRefGoogle Scholar
  15. [15]
    Pereira, L.M.,F.C.N. Pereira and D.H.D. Warren, “User's Guide to DECsystem-10 Prolog”, Occasional Paper 15, Dept. of Artificial Intelligence, Edinburgh, 1979.Google Scholar
  16. [16]
    Tamaki,H. and T.Sato, “Unfold/Fold Transformation of Logic Programs”, Proc. 2nd International Logic Programming Conference, pp. 127–138, 1984.Google Scholar
  17. [17]
    Tärnlund,S-Å., “Logic Programming Language Based on A Natural Deduction System”, UPMAIL Technical Report, No. 6, 1981.Google Scholar
  18. [18]
    Weyrauch,R.W. and R.Milner, “Program Correctness in A Mechanized Logic”, Proc. 1st USA-Japan Computer Conference, 1972.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1986

Authors and Affiliations

  • Tadashi Kanamori
    • 1
  • Hiroshi Fujita
    • 1
  1. 1.Mitsubishi Electric CorporationCentral Research LaboratoryAmagasaki, HyogoJapan

Personalised recommendations