Semantic types: a fresh look at the ideal model for types

We present a generalization of the ideal model for recursive polymorphic types. Types are defined as sets of terms instead of sets of elements of a semantic domain. Our proof of the existence of types (computed by fixpoint of a typing operator) does not rely on metric properties, but on the fact that the identity is the limit of a sequence of projection terms. This establishes a connection with the work of Pitts on relational properties of domains. This also suggests that ideals are better understood as closed sets of terms defined by orthogonality with respect to a set of contexts.

[1]  S. F. Smith,et al.  The coverage of operational semantics , 1999 .

[2]  I. Stark,et al.  Operational reasoning for functions with local state , 1999 .

[3]  Jean-Yves Girard Locus Solum: From the Rules of Logic to the Logic of Rules , 2001, CSL.

[4]  Martín Abadi,et al.  Faithful ideal models for recursive polymorphic types , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[5]  Jean Goubault-Larrecq,et al.  Logical Relations for Monadic Types , 2005 .

[6]  Samson Abramsky,et al.  Domain theory , 1995, LICS 1995.

[7]  Carolyn L. Talcott,et al.  From Operational Semantics to Domain Theory , 1996, Inf. Comput..

[8]  Giuseppe Castagna,et al.  Semantic subtyping , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.

[9]  Frank Pfenning,et al.  Intersection types and computational effects , 2000, ICFP '00.

[10]  Juliusz Chroboczek Subtyping Recursive Games , 2001, TLCA.

[11]  Felice Cardone,et al.  Relational Semantics for Recursive Types and Bounded Quantification , 1989, ICALP.

[12]  Peter F. Stadler,et al.  Generalized Topological Spaces in Evolutionary Theory and Combinatorial Chemistry , 2002, J. Chem. Inf. Comput. Sci..

[13]  Benjamin C. Pierce,et al.  XDuce: A statically typed XML processing language , 2003, TOIT.

[14]  C. Talcott,et al.  Reasoning about functions with effects , 1999 .

[15]  P. Freyd Algebraically complete categories , 1991 .

[16]  Lars Birkedal,et al.  Relational Interpretations of Recursive Types in an Operational Setting , 1999, Inf. Comput..

[17]  Marcelo P. Fiore,et al.  A coinduction principle for recursive data types based on bisimulation , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[18]  Andrew W. Appel,et al.  An indexed model of recursive types for foundational proof-carrying code , 2001, TOPL.

[19]  Andrew M. Pitts,et al.  Higher order operational techniques in semantics , 1999 .

[20]  M. Hyland A Syntactic Characterization of the Equality in Some Models for the Lambda Calculus , 1976 .

[21]  Christopher P. Wadsworth,et al.  The Relation Between Computational and Denotational Properties for Scott's Dinfty-Models of the Lambda-Calculus , 1976, SIAM J. Comput..

[22]  Laurent Dami,et al.  Labelled Reductions, Runtime Errors and Operational Subsumption , 1997, ICALP.

[23]  Roberto M. Amadio,et al.  Recursion over Realizability Structures , 1991, Inf. Comput..

[24]  Marcel Erné,et al.  A Primer on Galois Connections , 1993 .

[25]  Andrew M. Pitts,et al.  Relational Properties of Domains , 1996, Inf. Comput..

[26]  Flemming M. Damm,et al.  Subtyping with Union Types, Intersection Types and Recursive Types , 1994, TACS.

[27]  John C. Mitchell,et al.  PER models of subtyping, recursive types and higher-order polymorphism , 1992, POPL '92.

[28]  Fritz Henglein,et al.  Coinductive Axiomatization of Recursive Type Equality and Subtyping , 1998, Fundam. Informaticae.

[29]  Benjamin C. Pierce,et al.  Recursive subtyping revealed , 2000, Journal of Functional Programming.

[30]  Andrew M. Pitts,et al.  Parametric polymorphism and operational equivalence , 2000, Mathematical Structures in Computer Science.

[31]  Jean-Jacques Lévy,et al.  An Algebraic Interpretation of the lambda beta K-Calculus; and an Application of a Labelled lambda -Calculus , 1976, Theor. Comput. Sci..

[32]  Ian Stark Names, Equations, Relations: Practical Ways to Reason about new , 1997, TLCA.

[33]  Robert Cartwright,et al.  Types as intervals , 1985, POPL.

[34]  Benjamin C. Pierce,et al.  Regular expression types for XML , 2000, TOPL.

[35]  Laurent Dami,et al.  Operational Subsumption, an Ideal Model of Subtyping , 1998, HOOTS.

[36]  Gordon D. Plotkin,et al.  An ideal model for recursive polymorphic types , 1984, Inf. Control..

[37]  B. Pierce Programming with intersection types, union types, and polymorphism , 1991 .

[38]  Martín Abadi,et al.  A PER model of polymorphism and recursive types , 1990, [1990] Proceedings. Fifth Annual IEEE Symposium on Logic in Computer Science.