Laws of Programming: The Algebraic Unification of Theories of Concurrency
I began my academic research career in 1968, when I moved from industrial employment as a programmer to the Chair of Computing at the Queen’s University in Belfast. My chosen research goal was to discover an axiomatic basis for computer programming. Originally I wanted to express the axioms as algebraic equations, like those which provide the basis of arithmetic or group theory. But I did not know how. After many intellectual vicissitudes, I have now discovered the simple secret. I would be proud of this discovery, if I were not equally ashamed at taking so long to discover it.
KeywordsOperational Semantic Sequential Composition Natural Deduction Concurrent Program Communicate Sequential Process
Unable to display preview. Download preview PDF.
- 1.Bergstra, J., Klop, J.: Fixed point semantics in process algebra. Technical Report IW 208, Mathematical Centre, Amsterdam (1982)Google Scholar
- 4.Floyd, R.: Assigning meanings to programs. In: Proceedings of Symposium on Applied Mathematics, vol. 19, pp. 19–32 (1967)Google Scholar
- 5.Hoare, C.A.R., He, J.: Unifying Theories of Programming. Prentice Hall International Series in Computer Science (1998)Google Scholar
- 7.Hoare, C.A.R.: Towards a theory of parrallel programming. In: Hoare, C.A.R., Perrott, R.H. (eds.) Operating Systems Techniques, Proceedings of Seminar at Queen’s University, Belfast, Northern Ireland, pp. 61–71. Academic Press (1972)Google Scholar
- 13.Hoare, C.A.R., Wehrman, I., O’Hearn, P.W.: Graphical models of separation logic. In: Engineering Methods and Tools for Software Safety and Security. IOS Press (2009)Google Scholar
- 14.INMOS. occam Programming Manual. Prentice Hall (1984)Google Scholar
- 15.Ishtiaq, S.S., O’Hearn, P.W.: BI as an assertion language for mutable data structures. In: Proc. of POPL, pp. 14–26 (2001)Google Scholar
- 17.Milner, R.: A Calculus of Communication Systems. LNCS, vol. 92. Springer, Heidelberg (1980)Google Scholar
- 18.Reynolds, J.C.: Separation logic: A logic for shared mutable data structures. In: Proc. of LICS, pp. 55–74 (2002)Google Scholar
- 19.Roscoe, A.W.: Model-checking CSP. In: A Classical Mind: Essays in Honour of C.A.R. Hoare. Prentice Hall International (UK) Ltd. (1994)Google Scholar
- 20.Scott, D., Strachey, C.: Toward a mathematical semantics for computer languages. Oxford Programming Research Group Technical Monograph, PRG-6 (1971)Google Scholar