15-816 Linear Logic
Lecture 18: Polynomial Time Computation

The affine lambda-calculus differs from the linear lambda-calculus in that affine hypotheses need not be used. Its rules and properties are closely related to the linear lambda-calculus.

In this lecture we show how to exploit affine lambda-calculus in order to restrict our system of primitive recursive functionals so that every definable function can be computed in polynomial time. Closely related systems have been developed by Hofmann and by Bellantoni, Niggl, and Schwichtenberg. Moreover, the system also has the property that every polynomial time function can be represented in it. Note that no explicit arithmetic reasoning is required: the characterization is purely structural, achieved by natural typing conditions.

However, some caution should be applied in interpreting this result. Even though every polynomial time function is representable, not every polynomial time algorithm can be written out naturally and be type-checked in our system.

[Hof] Martin Hofmann.
Safe Recursion with Higher Types and BCK-Algebra
Annals of Pure and Applied Logic, to appear.
Revised and abridged version of the habilitation thesis
Type Systems For Polynomial-Time Computation, Technical University Darmstadt.
Available as Technical Report ECS-LFCS-99-406, University of Edinburgh, 1999.

[ Home | Schedule | Assignments | Handouts | Software | Resources ]

Frank Pfenning