Logical and mathematical reasoning about imperative programs: preliminary report

It is well known that reasoning &out compul;ltion can hc carricd cu within Pc;mo Arithmetic [ KlcSZj. hlthougl~ this was dcmunstrarcd originally for ‘l’uring Machine computa:ions. the m&d ildilpts easily to rcasonin g about computiltions of impcrativc programs (see c.g. [%ucSO] and [hI‘SI]). ‘l‘hc cumhcrsomc numeric coding. with which such reasoning frameworks arc plilgucd. is ncccssaly only when (UK Coflfincs oncsclf to the mcagcr language of’ first-order arithmetic: when tic language is cnrichcd. to allow direct rcfcrcncc to programming constructs, one obtains a rcasonahlc framework for reasoning about impcrativc programs. A formalism of this type might be dubbed “Arithmetic of Programs”. In a scnsc. the “Non-Standard I)ynamic I.ogic” of Ncmcti & als. [Ncm82, ANSSZ]. is such an arithmetic.

[1]  Daniel Leivant,et al.  The Expressiveness of Simple and Second-Order Type Structures , 1983, JACM.

[2]  Herbert B. Enderton,et al.  A mathematical introduction to logic , 1972 .

[3]  Ildikó Sain,et al.  A Complete Logic for Reasoning about Programs via Nonstandard Model Theory I , 1982, Theor. Comput. Sci..

[4]  B. Russell,et al.  Introduction to Mathematical Philosophy , 1920, The Mathematical Gazette.

[5]  Daniel Leivant Reasoning about functional programs and complexity classes associated with type disciplines , 1983, 24th Annual Symposium on Foundations of Computer Science (sfcs 1983).

[6]  Jr. Hartley Rogers Theory of Recursive Functions and Effective Computability , 1969 .

[7]  István Németi,et al.  Nonstandard Dynamic Logic , 1981, Logic of Programs.

[8]  Stephen G. Simpson,et al.  Countable algebra and set existence axioms , 1983, Ann. Pure Appl. Log..

[9]  John C. Mitchell,et al.  Termination Assertions for Recursive Programs: Completeness and Axiomatic Definability , 1983, Inf. Control..

[10]  Leon Henkin,et al.  Completeness in the theory of types , 1950, Journal of Symbolic Logic.

[11]  Vaughan R. Pratt,et al.  SEMANTICAL CONSIDERATIONS ON FLOYD-HOARE LOGIC , 1976, FOCS 1976.

[12]  Joseph Y. Halpern,et al.  Axiomatic definitions of programming languages: a theoretical assessment (preliminary report) , 1980, POPL '80.

[13]  John C. Reynolds,et al.  Towards a theory of type structure , 1974, Symposium on Programming.

[14]  Stephen D. Brookes,et al.  On the Axiomatic Treatment of Concurrency , 1984, Seminar on Concurrency.

[15]  Krzysztof R. Apt,et al.  Ten Years of Hoare's Logic: A Survey—Part I , 1981, TOPL.

[16]  Gordon D. Plotkin,et al.  An ideal model for recursive polymorphic types , 1984, Inf. Control..