Programs as Partial Graphs I: Flow Equivalence and Correctness

Abstract A common feature of most theoretical investigations on semantics, correctness and termination is the strict distinction between the descriptional tool used for the flow of program control and the completely different tool describing single program steps. Since these different methods are difficult to handle when it is necessary that they be used together this paper presents a unified approach to the presentation of these concepts in terms of Tarski's and Riguet's relational algebra. Partial graphs and programs are introduced to formally manipulate relational notions of semantics, correctness and termination. The second part of this paper will extend these notions to systems of recursive programs.

[1]  Rod M. Burstall,et al.  Proving Properties of Programs by Structural Induction , 1969, Comput. J..

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

[3]  J. W. de Bakker,et al.  On the Completeness of the Inductive Assertion Method , 1975, J. Comput. Syst. Sci..

[4]  Zohar Manna,et al.  Properties of Programs and the First-Order Predicate Calculus , 1969, JACM.

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

[6]  Gunther Schmidt,et al.  Programs as Partial Graphs II: Recursion , 1981, Theor. Comput. Sci..

[7]  Alfred Tarski,et al.  Relational selves as self-affirmational resources , 2008 .

[8]  R. Lyndon THE REPRESENTATION OF RELATIONAL ALGEBRAS , 1950 .

[9]  C. C. Elgot,et al.  On the algebraic structure of rooted trees , 1978 .

[10]  Zohar Manna,et al.  Formalization of Properties of Functional Programs , 1970, JACM.

[11]  Iu. I. Ianov,et al.  On matrix program schemes , 1958, CACM.

[12]  Stephen L. Bloom,et al.  On the Algebraic Atructure of Rooted Trees , 1978, J. Comput. Syst. Sci..

[13]  Edsger W. Dijkstra A simple axiomatic basis for programming language constructs , 1973 .

[14]  C. A. R. Hoare,et al.  An axiomatic basis for computer programming , 1969, CACM.

[15]  Edsger W. Dijkstra,et al.  Guarded commands, nondeterminacy and formal derivation of programs , 1975, Commun. ACM.

[16]  John McCarthy,et al.  A BASIS FOR A MATHEMATICAL THEORY OF COMPUTATION 1) , 2018 .

[17]  J. Riguet,et al.  Relations binaires, fermetures, correspondances de Galois , 1948 .

[18]  ZOHAR MANNA,et al.  The Correctness of Programs , 1969, J. Comput. Syst. Sci..

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

[20]  C. A. R. Hoare,et al.  Some Properties of Predicate Transformers , 1978, JACM.

[21]  Rod M. Burstall An algebraic description of programs with assertions, verification and simulation , 1972 .

[22]  Gunther Schmidt,et al.  Investigating Programs in Terms of Partial Graphs , 1979, WG.

[23]  A. Tarski,et al.  Boolean Algebras with Operators , 1952 .

[24]  Joseph A. Goguen,et al.  On Homomorphisms, Correctness, Termination, Unfoldments, and Equivalence of Flow Diagram Programs , 1974, J. Comput. Syst. Sci..

[25]  R. Lyndon THE REPRESENTATION OF RELATION ALGEBRAS, II , 1956 .

[26]  A. Tarski,et al.  Boolean Algebras with Operators. Part I , 1951 .

[27]  John McCarthy,et al.  Towards a Mathematical Science of Computation , 1962, IFIP Congress.

[28]  J. W. de Bakker,et al.  Semantics and Termination of Nondeterministic Recursive Programs , 1976, ICALP.