Advertisement

Semantics and correctness of nondeterministic flowchart programs with recursive procedures

Preliminary report
  • Jean H. Gallier
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 62)

Abstract

A class of nondeterministic flowchart programs with recursive procedures is defined. Their semantics is studied algebraically, in particular the notion of unfoldment. An extension of the inductive assertion method is introduced and shown to be sound and complete with a finite number of assertions.

Keywords

Predicate Symbol Procedure Call Recursive Procedure Recursive Program Success Path 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Apt, K. R. and De Bakker, J. W., Semantics and proof theory of PASCAL procedures. Automata, Languages and Programming, Lecture Notes in Computer Science, No. 52, Springer Verlag, 1977.Google Scholar
  2. 2.
    Apt, K. R. and Meertens, L. G. L. T., Completeness with finite systems of intermediate assertions for recursive program schemes, Technical Report IW 84/77, Mathematical Center, Amsterdam 1977.Google Scholar
  3. 3.
    Ashcroft, E. A. and Manna, Z., Formalization of properties of parallel programs, Machine Intelligence 6 (1970), 17–41, Edinburgh University Press, Edinburgh, Scotland.Google Scholar
  4. 4.
    Burstall, R. M. and Thatcher, J. W., The algebraic theory of recursive program schemes, in Symposium on Category Theory Applied to Computation and Control, Lecture Notes in Computer Science 25 (1975), 126–131.Google Scholar
  5. 5.
    Clarke, E. M., Programming language constructs for which it is impossible to obtain "good" Hoare-like axiom systems, Fourth Annual Symposium on Principles of Programming Languages, Los Angeles, California (January 1977), 10–20.Google Scholar
  6. 6.
    Clarke, E. M., Program invariants as fixed points, Proceedings of the 18th Symposium on Foundations of Computer Science, Providence, Rhode Island (October 1977), 18–29.Google Scholar
  7. 7.
    Constable, R. L. and Gries, D., On classes of program schemata, SIAM J. Comput. 1 (1972), 66–118.CrossRefGoogle Scholar
  8. 8.
    Courcelle, B. and Nivat, M., Algebraic families of interpretations, Proceedings of the 17th IEEE Symposium on Foundations of Computer Science, Houston, Texas, October 1976, pp. 137–146.Google Scholar
  9. 9.
    De Bakker, J. W., Termination of nondeterministic programs, Technical Report IW 50/75, Mathematical Center, Amsterdam, 1975.Google Scholar
  10. 10.
    De Bakker, J. W. and Meertens, L. G. L. T, On the completeness of the inductive assertion method, J. Comput. System Sci., 11 (1975), No. 3, 323–357.Google Scholar
  11. 11.
    Floyd, R. W., Nondeterministic algorithms, J. Assoc. Comput. Mach., 14 (1967), No. 4, 636–644.Google Scholar
  12. 12.
    Floyd, R. W., Assigning meanings to programs, in Proceedings of a Symposium in Applied Mathematics 19 (1967), Mathematical Aspects of Computer Science (J. T. Schwartz, Ed.), 19–32.Google Scholar
  13. 13.
    Gallier, J. H., Semantics and correctness of classes of deterministic and nondeterministic recursive programs, Ph.D. dissertation, U.C.L.A.Google Scholar
  14. 14.
    Gerhart, S. L, Proof theory of partial correctness verification systems, SIAM J. Comput., 5 (1976), No. 3, 355–377.CrossRefGoogle Scholar
  15. 15.
    Gorelick, G. A., A complete axiomatic system for proving assertions about recursive and nonrecursive programs, Technical Report No. 75, Department of Computer Science, University of Toronto (1975).Google Scholar
  16. 16.
    Greibach, S. A., Theory of program structures: schemes, semantics, verification, Lecture Notes in Computer Science, 36 (1975), Springer Verlag.Google Scholar
  17. 17.
    Goguen, J. A. and Meseguer, J., Correctness of recursive flow diagram programs, Semantics and Theory of Computation Report No. 8, Computer Science Department, University of California, Los Angeles, July 1977.Google Scholar
  18. 18.
    Harel, D., Arithmetical completeness in logics of programs, Technical Report, Laboratory for Computer Science, MIT, Cambridge, Mass., November 1977.Google Scholar
  19. 19.
    Harel, D., Complete axiomatization of properties of recursive programs, Technical Report, Laboratory for Computer Science, MIT, Cambridge, Mass., November 1977.Google Scholar
  20. 20.
    Harel, D., On the correctness of regular deterministic programs; a unifying survey, Technical Report, Laboratory for Computer Science, MIT, Cambridge, Mass., November 1977.Google Scholar
  21. 21.
    Harel, D. and Pratt, V. R., Nondeterminism in logics of programs, Proceedings of the Fifth ACM Symposium on Principles of Programming Languages, Tucson, Arizona, January 1978.Google Scholar
  22. 22.
    Harel, D., Meyer, A. R., and Pratt, V. R., Computability and completeness in logics of programs, Proceedings of the Ninth Annual ACM Symposium on Theory of Computing, Boulder, Colorado, May 1977, pp. 261–268.Google Scholar
  23. 23.
    Harel, D., Pnueli, A., and Stavi, J., A complete axiomatic system for proving deductions about recursive programs, Proceedings of the Ninth Annual ACM Symposium on Theory of Computing, Boulder, Colorado, May 1977, pp. 249–260.Google Scholar
  24. 24.
    Lehmann, D., Categories for fixpoint-semantics, Proceedings of the 17th IEEE Symposium on Foundations of Computer Science, Houston, Texas, October 1976, pp. 122–126.Google Scholar
  25. 25.
    Manna, Z., Mathematical Theory of Computation, McGraw-Hill, 1974.Google Scholar
  26. 26.
    Manna, Z., The correctness of programs, J. Comput. System Sci., 3 (1969), 119–127.Google Scholar
  27. 27.
    Manna, Z., Mathematical theory of partial correctness, in Symposium on Semantics of Algorithmic Languages (E. Engeler, Ed.), Lecture Notes in Mathematics, 188 (1971), Springer Verlag, 252–269.Google Scholar
  28. 28.
    Manna, Z., The correctness of nondeterministic programs, Artificial Intelligence, 1 (1970), 1–26.CrossRefGoogle Scholar
  29. 29.
    Manna, Z. and Waldinger, R., Is "sometime" sometimes better than "always"? Intermittent assertions in proving program correctness, Comm. ACM, Vol. 21, No. 2 (1978), 159–172.Google Scholar
  30. 30.
    Pratt, V. R., Semantical considerations on Floyd-Hoare Logic, Technical Report MIT/LCS/TR-168, MIT, Cambridge, Mass, September 1976.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1978

Authors and Affiliations

  • Jean H. Gallier
    • 1
  1. 1.Department of Mathematics and Computer Science ProgramUniversity of CaliforniaSanta BarbaraU.S.A.

Personalised recommendations