Implementing mathematics with the Nuprl proof development system
Implementing mathematics with the Nuprl proof development system
Abstract types have existential type
ACM Transactions on Programming Languages and Systems (TOPLAS)
Theoretical Computer Science - Special issue: Fourth workshop on mathematical foundations of programming semantics, Boulder, CO, May 1988
On the equivalence of data representations
Artificial intelligence and mathematical theory of computation
Handbook of logic in computer science (vol. 2)
A Logic for Parametric Polymorphism
TLCA '93 Proceedings of the International Conference on Typed Lambda Calculi and Applications
Inductive Definitions in the system Coq - Rules and Properties
TLCA '93 Proceedings of the International Conference on Typed Lambda Calculi and Applications
A Simple Model for Quotient Types
TLCA '95 Proceedings of the Second International Conference on Typed Lambda Calculi and Applications
An Axiomatic System of Parametricity
TLCA '97 Proceedings of the Third International Conference on Typed Lambda Calculi and Applications
CSL '95 Selected Papers from the9th International Workshop on Computer Science Logic
COLOG '88 Proceedings of the International Conference on Computer Logic
Exercises in Coalgebraic Specification
Revised Lectures from the International Summer School and Workshop on Algebraic and Coalgebraic Methods in the Mathematics of Program Construction
A Higher-Order Simulation Relation for System F
FOSSACS '00 Proceedings of the Third International Conference on Foundations of Software Science and Computation Structures: Held as Part of the Joint European Conferences on Theory and Practice of Software,ETAPS 2000
Specification Refinement with System F
CSL '99 Proceedings of the 13th International Workshop and 8th Annual Conference of the EACSL on Computer Science Logic
Hi-index | 0.00 |
The second-order lambda calculus allows an elegant formalisation of abstract data types (ADT's) using existential types. Plotkin and Abadi's logic for parametricity then provides the useful proof principle of simulation for ADT's, which can be used to show equivalence of data representations. However, we show that this logic is not sufficient for reasoning about specifications of ADT's, and we present an extension of the logic that does provide the proof principles for ADT's that we want.