Semantics and axiomatics of a simple recursive language.

In this paper, we provide a simple recursive programming language with a semantics and a formal proof system, along the lines of [5], [17] and [23]. We show that the semantics used is the “best” possible if one admits the validity of Algol's copy rule, and that the proof system is complete with respect to the semantics. The definitions and methods used are meant to provide a basis for a broader theory of program schemas, which models parallel as well as sequential programs.

[1]  Dana S. Scott,et al.  Outline of a Mathematical Theory of Computation , 1970 .

[2]  Zohar Manna,et al.  Formalization of properties of parallel programs , 1970 .

[3]  Michael J. C. Gordon,et al.  Evaluation and denotation of pure LISP programs : a worked example in semantics , 1973 .

[4]  Bruno Courcelle,et al.  Complétude d'un système formel pour prouver l'équivalence de certains schémas récursifs monadiques , 1974, Symposium on Programming.

[5]  Robin Milner,et al.  Proving compiler correctness in a mechanised logic , 1972 .

[6]  Carl Hewitt,et al.  Comparative Schematology , 1970 .

[7]  Zohar Manna,et al.  Decidable Properties of Monadic Functional Schemas , 1973, JACM.

[8]  David C. Luckham,et al.  On Formalised Computer Programs , 1970, J. Comput. Syst. Sci..

[9]  Willem P. de Roever,et al.  A Calculus for Recursive Program Schemes , 1972, ICALP.

[10]  Christopher Strachey,et al.  Toward a mathematical semantics for computer languages , 1971 .

[11]  Jean Vuillemin,et al.  Correct and optimal implementations of recursion in a simple programming language , 1973, J. Comput. Syst. Sci..

[12]  John E. Hopcroft,et al.  Simple Deterministic Languages , 1966, SWAT.

[13]  Bruno Courcelle,et al.  Algorithmes d'equivalence et de reduction a des expressions minimales dans une classe d'equations recursives simples , 1974, ICALP.

[14]  J. Vuillemin Proof techniques for recursive programs , 1973 .

[15]  R. Milner Models of LCF. , 1973 .

[16]  Jean Vuillemin Syntaxe, sémantique et axiomatique d'un langage de programmation simple , 1975 .