Ramied Recurrence with Dependent Types
We present a version of Gödel’s system T in which the types are ramified in the style of Leivant and a system of dependent typing is introduced. The dependent typing allows the definition of recursively defined types, where the recursion is controlled by ramification; these recursively defined types in turn allow the definition of functions by repeated iteration. We then analyze a subsystem of the full system and show that it defines exactly the primitive recursive functions. This result supports the view that when data use is regulated (for example, by ramification), standard function constructions are intimately connected with standard type-theoretic constructions.
KeywordsInference Rule Product Rule Object Type High Type Dependent Type
Unable to display preview. Download preview PDF.
- 3.H. Barendregt. Lambda calculi with types. In S. Abramsky, D. M. Gabbay, and T. Maibaum, editors, Handbook of Logic in Computer Science, Vol. 2, pages 117–309. Oxford University Press, Oxford, 1992.Google Scholar
- 4.S. Bellantoni. Predicative recursion and the polytime hierarchy. In Feasible Mathematics II (Ithaca, NY, 1992), pages 15–29. Birkhäuser Boston, Boston, MA, 1995.Google Scholar
- 8.N. Danner and C. Pollett. Minimization and the class NPMV. In preparation.Google Scholar
- 12.D. Leivant. Ramified recurrence and computational complexity I: Word recurrence and poly-time. In Feasible Mathematics II (Ithaca, NY, 1992), pages 320–343. Birkhäuser Boston, Boston, MA, 1995.Google Scholar
- 15.N. Nelson. Primitive recursive functionals with dependent types. In Mathematical Foundations of Programming Semantics (Pittsburgh, PA, 1991), pages 125–143. Springer, Berlin, 1992.Google Scholar
- 16.H. E. Rose. Subrecursion: functions and hierarchies. Number 9 in Oxford Logic Guides. Oxford University Press, Oxford, 1984.Google Scholar
- 17.A. L. Selman. Much ado about functions. In Eleventh IEEE Conference on Computational Complexity, pages 198–212. 1996.Google Scholar