ACM Home Page
Please provide us with feedback. Feedback
Fen—an axiomatic basis for program semantics
Full text PdfPdf (711 KB)
Source
Communications of the ACM archive
Volume 16 ,  Issue 8  (August 1973) table of contents
Pages: 468 - 474  
Year of Publication: 1973
ISSN:0001-0782
Author
B. J. MacLennan  Florida State Univ.
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 22,   Citation Count: 3
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/355609.362316
What is a DOI?

ABSTRACT

A formal system is presented which abstracts the notions of data item, function, and relation. It is argued that the system is more suitable than set theory (or its derivatives) for the concise and accurate description of program semantics. It is shown how the system can be used to build composite data types out of simpler ones with the operations of rowing, structuring, and uniting. It is also demonstrated that completely new primitive types can be introduced into languages through the mechanism of singleton data types. Both deterministic and nondeterministic functions are shown to be definable in the system. It is described how the local environment can be modeled as a data item and how imperative statements can be considered functions on the environment. The nature of recursive functions is briefly discussed, and a technique is presented by which they can be introduced into the system. The technique is contrasted with the use of the paradoxical combinator, Y. The questions of local and global environments and of various modes of function calling and parameter passing are touched upon. The theory is applied to the proof of several elementary theorems concerning the semantics of the assignment, conditional, and iterative statements. An appendix is included which presents in detail the formal system governing webs and fen, the abstractions used informally in the body of the paper.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Bekid, H., and Walk, K. Formalization of storage properties. In Symposium on Semantics AIgorithmie Languages. Erwin Engeler (Ed.), Springer Lecture Note Series, Springer-Verlag, Heidelberg, 1971, p. 39.
 
2
BOhm, C. The CUCH as a formal and descriptive language. In Formal Language Description Languages./or Computer Programmhlg T.B. Steel (Ed.), North-Holland, Amsterdam, 1966, pp. 198- 220.
3
 
4
 
5
Church, A. An unsolvable problem of elementary number theory. Am. J. .Math. 58 (1936), 345-363.
 
6
Curry, H. B., and Feys, R. Combinatory Logic, Vol 1. North- Holland, Amsterdam, 1958.
 
7
Dennis, J. B. Notes on the design of a common base language. Mimeographed notes prepared for Tutorial Syrup. on Semantic Models of Computation, Dec. 1971.
8
 
9
Hilbert, D., and Bernays, P. Grundlagen der Mathematik, Berlin, 1934 and 1939, Sec. 1.
10
11
12
 
13
Landin, P.J. The mechanical evaluation of expressions. Computer J. 6 (Jan. 1964), 308-320.
 
14
Landin, P.J. A formal description of ALGOL 60. In Formal Language Description Languages for Computer Programming. T. B. Steel (Ed.), North-Holland, Amsterdam, 1966, pp. 266-294.
15
16
 
17
 
18
Lucas, P., and Walk, K. On the formal description of PL/I. Annual Reviews t2{Automatic Programming 6, 3 (1969).
 
19
MacLennan, B. Semantic specification and machine independent compilation. Proc. ACM 10th Ann. Southeast Reg. Conf.,,June 1971 (mimeographed).
20
21
 
22
yon Neumann, J. Die Axiomatisierung der Mengenlehre. Math. Z. 27 (1928), 669-752.
 
23
yon Neumann, J. Line Axiomatisierung der Mengenlehre. J. reine angew. Math. 154 (1925), 219 240.
24
 
25
Scott, D. The lattice of flow diagrams. In Symposium on Semantics of Algorithmic Languages. Erwin Engeler (Ed.), Springer Lecture Note Series, Springer-Verlag, Heidelberg, 1971, pp. 311-366.
 
26
Scott, D. and Strachey, C. Toward a Mathematical Semantics Jbr Computer Languages. Oxford U. Computing Lab., Programming Research Group Tech. Mono. PRG-6.
 
27
Strachey, C. Towards a formal semantics. In Formal Language Description Languages for Computer Programming. T.B. Steel (Ed.), North-Holland, Amsterdam, 1966, pp. 198 220.
 
28
van Wijngaarden, et al. Report on the algorithmic language ALGOL 68. Numerische Mathematik 14 (1969), 79-218. Offprint available from Dept. AL68-D, ACM Headquarters, New York.
 
29
Wirth, N. The programming language Pascal. Acta blformatica 1, 1 (1971), 35-63.
 
30
Wulf, W.A., et al. Bliss Reference Manual. Dept. of Computer Sci. document, Carnegie-Mellon U., Pittsburgh, Pa., 1970.