Abstract
Domain algebras are proposed as a tool for structuring compiler correctness proofs which are based on denotational semantics of the source and target language. The correctness of a compiler for a small imperative language is proved as an illustration.
Preview
Unable to display preview. Download preview PDF.
References
ADJ (= Goguen, J.A., Thatcher, J.W., Wagner, E.G.), An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types, in Current Trends in Programming Methodology, R. Yeh Ed., (Prentice-Hall, 1978) 80–149.
ADJ (= Thatcher, J.W., Wagner, E.G., Wright, J.B.), More on Advice on Structuring Compilers and Proving them Correct, Theoretical Computer Science 15, (1981) 223–249.
Berry, G., Modèles complètement adéquats et stables des lambda-calculs typés, Thèse de doctorat d'etat ès sciences mathematiques, l'université Paris VII (1979).
Berry, G., Some Syntactic and Categorical Constructions of Lambda-Calculus Models, Rapport INRIA 80 (1981).
Burstall, R.M. and Landin, P.J., Programs and their Proofs: An Algebraic Approach, Machine Intelligence 4, (Edinburgh University Press, 1969) 17–44.
Cohn, A.J., High Level Proofs in LCF, Report CSR-35-78, Department of Computer Science, University of Edinburgh (1978).
Curien, P.L., Combinateurs categoriques, algorithmes sequentiels et programmation applicative, Thèse de doctorat d'etat ès sciences mathematiques, l'université Paris VII (1983).
Dybjer, P., Category-Theoretic Logics and Algebras of Programs, Ph.D. thesis, Chalmers University of Technology, Göteborg (1983).
Dybjer, P., Domain Algebras, in Proceedings 11th International Colloquium on Automata, Languages and Programming, Lecture Notes in Computer Science 172 (Springer-Verlag, Berlin, 1984) 138–150.
Gordon, M., The Denotational Description of Programming Languages, (Springer-Verlag, Berlin, 1979).
Gordon, M., Milner, R., Wadsworth, C.P., Edinburgh LCF, Lecture Notes in Computer Science 78, (Springer-Verlag, 1979).
Lambek, J. (1972), Deductive Systems and Categories III, in Proceedings Dalhousie Conference on Toposes, Algebraic Geometry and Logic, Lecture Notes in Mathematics 274, (Springer-Verlag, 1972) 57–82.
Lehmann, D.J. and Smyth, M.B., Algebraic Specification of Data Types: A Synthetic Approach, Mathematical Systems Theory 14, (1981) 79–139.
McCarthy, J. and Painter, J.A., Correctness of a Compiler for Arithmetical Expressions, in J.T. Schwartz (ed.), in Proceedings of a Symposium in Applied Mathematics, 19, Mathematical Aspects of Computer Science, (American Mathematical Society, New York, 1967).
Milner, R., Morris, L., Newey, M., A Logic for Computable Functions with Reflexive and Polymorphic Types, in Proceedings Conference on Proving and Improving Programs, Arc-et-Senans (1975).
Morris, F.L., Advice on Structuring Compilers and Proving them Correct, in Proceedings ACM Symposium on Principles of Programming Languages, Boston (1973) 144–152.
Plotkin, G.D., Domains, Edinburgh CS Dept., lecture notes (1980).
Poigne, A., On Semantic Algebras Higher-Order Structures, Forschungsbericht bericht 156, Abt. Informatik, Universität Dortmund (1983).
Russel, B., Implementation Correctness Involving a Language with GOTO Statements, SIAM Journal on Computing 6, (1977).
Scott, D.S., Relating Theories of the Lambda-Calculus, in J.P. Seldin and J.R. Hindley (eds.) To H.B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, (Academic Press, 1980), 404–450.
Scott, D.S., Domains for Denotational Semantics, in Proceedings 9th International Colloquium on Automata, Languages and Programming, Lecture Notes in Computer Science, (Springer-Verlag, 1982) 577–613.
Smyth, M.B. and Plotkin, G.D., The Category-Theoretic Solution of Recursive Domain Equations, SIAM Journal on Computing 11 (1982).
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1984 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dybjer, P. (1984). Using domain algebras to prove the correctness of a compiler. In: Mehlhorn, K. (eds) STACS 85. STACS 1985. Lecture Notes in Computer Science, vol 182. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0023999
Download citation
DOI: https://doi.org/10.1007/BFb0023999
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-13912-6
Online ISBN: 978-3-540-39136-4
eBook Packages: Springer Book Archive