Abstract
In proving assertions about programs, it is necessary to use induction principles in one form or another. Recursion induction was introduced by McCarthy [4] for the purpose of proving assertions about functions, in particular, functions defined by recursive conditional expressions. Structural induction was introduced by Burstall [1] for proving assertions about structures, such as lists and trees. The induction principles which we shall introduce here are useful for proving assertions about context-free languages and their semantic attributes, as this term is used by Knuth [3]. We shall introduce these principles informally and use them to prove the equivalence of two syntactic definitions of an unsigned integer, the equivalence of Knuth’s two examples of synthesized and inherited attributes, and the validity of Hoare’s first axiom (also known as the “back substitution rule”) for a large class of programming languages.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Burstall, R. M., Proving properties of programs by structural induction, Computer J. 12, 41–48 (1969).
Hoare, C. A. R., An axiomatic basis for computer programming, Communications of the ACM 12, 576–580 and 583 (1969).
Knuth, D. E., Semantics of context-free languages Math. Systems Theory 2, 127–145 (1968).
McCarthy, J., Towards a mathematical science of computation, Information Processing 1962, Proc. of IFIP Congress 62, North-Holland, Amsterdam, 21–28 (1963).
McCarthy, J., et al., LISP 1. 5 Programmer’s Manual, MIT Press (1962).
Maurer, W. D., A semantic extension of BNF, International J. of Computer Math., Section A, Vol. 3, 157–176 (1972).
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1973 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Maurer, W.D. (1973). Induction Principles for Context-Free Languages. In: Brauer, W. (eds) GI Gesellschaft für Informatik e. V.. Lecture Notes in Computer Science, vol 1. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-41148-3_13
Download citation
DOI: https://doi.org/10.1007/978-3-662-41148-3_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-40668-7
Online ISBN: 978-3-662-41148-3
eBook Packages: Springer Book Archive