Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Implementing a Normalizer Using Sized Heterogeneous Types

Summary: Implementing a Normalizer
Using Sized Heterogeneous Types
Andreas Abel1
Institut für Informatik
Ludwig-Maximilians-Universität München
Oettingenstr. 67, D-80538 München, GERMANY
In the simply-typed lambda-calculus, a hereditary substitution replaces a free variable
in a normal form r by another normal form s of type a, removing freshly created
redexes on the fly. It can be defined by lexicographic induction on a and r, thus,
giving rise to a structurally recursive normalizer for the simply-typed lambda-calculus.
We generalize this scheme to simultaneous substitutions, preserving its simple
termination argument. We further implement hereditary simultaneous substitutions
in a functional programming language with sized heterogeneous inductive types, Fb,
arriving at an interpreter whose termination can be tracked by the type system of its
host programming language.
Keywords: Sized Types, Heterogeneous Types, Nested Types, Interpreter, Normalization, De Bruijn Terms
Inductive types T can be expressed as the least solution of the recursive equation F X = X for


Source: Abel, Andreas - Theoretische Informatik, Ludwig-Maximilians-Universität München


Collections: Computer Technologies and Information Sciences