Constructions, inductive types and strong normalization

This thesis contains an investigation of Coquand's Calculus of Constructions, a basic impredicative Type Theory. We review syntactic properties of the calculus, in particular decidability of equality and type-checking, based on the equalityas-judgement presentation. We present a set-theoretic notion of model, CCstructures, and use this to give a new strong normalization proof based on a modi cation of the realizability interpretation. An extension of the core calculus by inductive types is investigated and we show, using the example of in nite trees, how the realizability semantics and the strong normalization argument can be extended to non-algebraic inductive types. We emphasize that our interpretation is sound for large eliminations, e.g. allows the de nition of sets by recursion. Finally we apply the extended calculus to a non-trivial problem: the formalization of the strong normalization argument for Girard's System F. This formal proof has been developed and checked using the LEGO system, which has been implemented by Randy Pollack. We include the LEGO les in the appendix. 1 Acknowledgements In November 1988 I met Rod Burstall in the Cafe Hardenberg in Berlin, and told him that I would like to do a PhD in Edinburgh. He made this possible and provided scienti c and spiritual help and assistance over all the time. I particularly appreciate his pragmatic and intuitive approach towards theoretical computer science. I would not have learnt Type Theory so easily if I had not been able to use Randy Pollack's LEGO system. The discussions and talks in the LEGO club have been extremely valuable and I want to thank all its participants. I pro ted from many controversial discussions with my second supervisor Zhaohui Luo and I appreciate his demands towards a more rigorous presentation of my results. The interaction with Healfdene Goguen has also been extremely helpful, he often provided essential feedback by spotting weak points in my constructions. The person who had the greatest impact on my scienti c thinking is my friend and colleague Martin Hofmann, with whom I had uncountable discussions focusing on Types, Logic and Categories. It is hard not to be impressed by his brilliance. I pro ted very much from the vibrant research environment at the Laboratory of Foundations of Computer Science. I would like to thank Alex Simpson and Claudio Hermida for many inspiring discussions about Category Theory and related topics. The contact with other researchers which has been made possible by the Types BRA has been very inspiring. I would like to thank Thierry Coquand, Herman Geuvers, Stefano Berardi, Eike Ritter and Benjamin Werner for many interesting 2 Acknowledgements 3 discussions. I especially want to thank Peter Dybjer and Thomas Streicher for comments on a draft version of this thesis. I would like to thank the SIEMENS AG for supporting me with a studentship and for providing valuable feedback during my visits in Neu-Perlach. I also want to thank all the members, animals and friends of Bath Street Housing Coop. I certainly would not have enjoyed my time in Edinburgh so much if I had not lived at Bath Street. Declaration I hereby declare that this thesis has been composed by myself, that the work is my own, and the ideas and results that I do not attribute to others are due to myself.