MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Outline of a proof theory of parametricity (1991) [21 citations — 0 self]

Download:
pdf | ps
by Harry G. Mairson
Proc. 5th International Symposium on Functional Programming Languages and Computer Architecture
http://www.cs.brandeis.edu/~mairson/Papers/para.ps.gz
Add To MetaCart

Abstract:

Reynolds ' Parametricity Theorem (also known as the Abstraction Theorem), a result concerning the model theory of the second order polymorphic typed-calculus (F 2), has recently been used by Wadler to prove some unusual and interesting properties of programs. We present a purely syntactic version of the Parametricity Theorem, showing that it is simply an example of formal theorem proving in second order minimal logic over a first order equivalence theory on-terms. We analyze the use of parametricity in proving program equivalences, and show that structural induction is still required: parametricity is not enough. As in Leivant's transparent presentation of Girard's Representation Theorem for F 2, we show that algorithms can be extracted from the proofs, such that if a-term can be proven parametric, we can synthesize from the proof an "equivalent " parametric-term that is moreover F 2-typable. Given that Leivant showed how proofs of termination, based on inductive data types and structural induction, had computational content, we show that inductive data types are indeed parametric, hence providing a connection between the two approaches. 1

Citations

1128 Monads for functional programming – Wadler - 1992
356 The formulas-as-types notion of construction – Howard - 1980
318 Towards a theory of type structure – Reynolds
266 Types, abstraction, and parametric polymorphism – Reynolds - 1983
260 Proofs and Types – Girard, Taylor, et al. - 1989
227 Interpretation Fonctionelle et Elimination des Coupures dans l'Arithmetique d'Ordre Superieure – Girard - 1972
216 Theorems for Free – Wadler - 1989
44 Automatic Synthesis of Typed -Programs on Term Algebras – Bohm, Berarducci - 1985
35 Logical Relations and the Typed Lambda Calculus – Statman
30 The semantics of secondorder lambda calculus – Bruce, Meyer, et al. - 1990
26 Contracting proofs to programs – Leivant - 1990
26 Programming in higher-order typed lambda-calculi – Pierce, Dietzen, et al. - 1989
23 The Complexity of Type Inference for Higher-Order Typed Lambda Calculi – Henglein, Mairson - 1991
11 Type systems for programming languages, in `Handbook of theoretical computer science' (van Leeuwen, ed – Mitchell - 1990
5 A guide to polymorphic types – Scedrov - 1990
3 An Introduction to the Polymorphic Lambda Calculus – Reynolds - 1988
2 Logic and Structure – Daalen - 1979
1 eine bisher noch nict benute Erweiterung des finiten Standpunktes. Dialectica 12 – Uber - 1958