 
Summary: Typed Applicative Structures and
Normalization by Evaluation for System F #
Andreas Abel
Department of Computer Science
LudwigMaximiliansUniversity Munich
Abstract. We present a normalizationbyevaluation (NbE) algorithm for Sys
tem F # with ##equality, the simplest impredicative type theory with computa
tion on the type level. Values are kept abstract and requirements on values are kept
to a minimum, allowing many different implementations of the algorithm. The al
gorithm is verified through a general model construction using typed applicative
structures, called type and object structures. Both soundness and completeness of
NbE are conceived as an instance of a single fundamental theorem.
1 Introduction and Related Work
In theorem provers, such as Coq [INR07], Agda [Nor07], Epigram [CAM07], which
are based on intensional type theory, checking the validity of proofs or typings relies on
deciding equality of types. Types are recognized as equal if they have the same normal
form. This is why normalization plays a key role in type theories, such as the Calculus
of Constructions (CC) which underlies Coq, and MartinL˜of Type Theory which is
the basis of Agda and Epigram. The hardwired type equality of Coq is restricted to
computational equality (#), as opposed to Agda and Epigram which have ##equality.
