Proofs and types
Formal parametric polymorphism
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The genericity theorem and parametricity in the polymorphic &lgr;-calculus
Theoretical Computer Science - A collection of contributions in honour of Corrado Bo¨hm on the occasion of his 70th birthday
Games and full completeness for multiplicative linear logic
Journal of Symbolic Logic
Proof, language, and interaction
Information and Computation
Types, Abstractions, and Parametric Polymorphism, Part 2
Proceedings of the 7th International Conference on Mathematical Foundations of Programming Semantics
A Logic for Parametric Polymorphism
TLCA '93 Proceedings of the International Conference on Typed Lambda Calculi and Applications
Towards a theory of type structure
Programming Symposium, Proceedings Colloque sur la Programmation
Polymorphism is Set Theoretic, Constructively
Category Theory and Computer Science
Parametric And Type-Dependent Polymorphism
Fundamenta Informaticae
Curry-style type isomorphisms and game semantics
Mathematical Structures in Computer Science
Game semantics for call-by-value polymorphism
ICALP'10 Proceedings of the 37th international colloquium conference on Automata, languages and programming: Part II
Hi-index | 0.00 |
Genericity is the idea that the same program can work at many different data types. Longo, Milsted and Soloviev proposed to capture the inability of generic programs to probe the structure of their instances by the following equational principle: if two generic programs, viewed as terms of type ∀X. A[X], are equal at any given instance A[T], then they are equal at all instances. They proved that this rule is admissible in a certain extension of System F, but finding a semantically motivated model satisfying this principle remained an open problem. In the present paper, we construct a categorical model of polymorphism, based on game semantics, which contains a large collection of generic types. This model builds on two novel constructions: - A direct interpretation of variable types as games, with a natural notion of substitution of games. This allows moves in games A[T] to be decomposed into the generic part from A, and the part pertaining to the instance T. This leads to a simple and natural notion of generic strategy. - A "relative polymorphic product" Πi(A, B) which expresses quantification over the type variable Xi in the variable type A with respect to a "universe" which is explicitly given as an additional parameter B. We then solve a recursive equation involving this relative product to obtain a universe in a suitably "absolute" sense. Full Completeness for ML types (universal closures of quantifier-free types) can be proved for this model.