Semantic and Syntactic Approaches to Simulation Relations

Simulation relations are tools for establishing the correctness of data refinement steps. In the simply-typed lambda calculus, logical relations are the standard choice for simulation relations, but they suffer from certain shortcomings; these are resolved by use of the weaker notion of pre-logical relations instead. Developed from a syntactic setting, abstraction barrier-observing simulation relations serve the same purpose, and also handle polymorphic operations. Meanwhile, second-order pre-logical relations directly generalise pre-logical relations to polymorphic lambda calculus (System F). We compile the main refinement-pertinent results of these various notions of simulation relation, and try to raise some issues for aiding their comparison and reconciliation.

[1]  Andre Scedrov,et al.  Functorial Polymorphism , 1990, Theor. Comput. Sci..

[2]  John C. Reynolds,et al.  Towards a theory of type structure , 1974, Symposium on Programming.

[3]  John C. Mitchell,et al.  Foundations for programming languages , 1996, Foundation of computing series.

[4]  Jo Erskine Hannay Specification Refinement with System F , 1999, CSL.

[5]  J. Hannay,et al.  Abstraction Barriers and Refinement in the Polymorphic Lambda Calculus , 2001 .

[6]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.

[7]  J. Girard Une Extension De ĽInterpretation De Gödel a ĽAnalyse, Et Son Application a ĽElimination Des Coupures Dans ĽAnalyse Et La Theorie Des Types , 1971 .

[8]  R. D. Tennent Correctness of data representations in Algol-like languages , 1994 .

[9]  Shin-ya Katsumata Behavioural Equivalence and Indistinguishability in Higher-Order Typed Languages , 2002, WADT.

[10]  Martin Hofmann,et al.  On Behavioural Abstraction and Behavioural Satisfaction in Higher-Order Logic , 1995, Theor. Comput. Sci..

[11]  John C. Mitchell,et al.  Abstract types have existential types , 1985, POPL.

[12]  Izumi Takeuti An Axiomatic System of Parametricity , 1998, Fundam. Informaticae.

[13]  Hans Leiß Second-Order Pre-Logical Relations and Representation Independence , 2001, TLCA.

[14]  Martin Wirsing,et al.  Behavioural and Abstractor Specifications , 1995, Sci. Comput. Program..

[15]  John C. Mitchell,et al.  The Semantics of Second-Order Lambda Calculus , 1990, Inf. Comput..

[16]  Philip Wadler,et al.  A Syntax for Linear Logic , 1993, MFPS.

[17]  John C. Reynolds,et al.  The craft of programming , 1981, Prentice Hall International series in computer science.

[18]  Alex K. Simpson,et al.  Computational Adequacy in an Elementary Topos , 1998, CSL.

[19]  Benjamin C. Pierce,et al.  Theoretical Aspects of Computer Software , 2001, Lecture Notes in Computer Science.

[20]  Furio Honsell,et al.  Constructive Data Refinement in Typed Lambda Calculus , 2000, FoSSaCS.

[21]  Edmund Robinson,et al.  Reflexive graphs and parametric polymorphism , 1994, Proceedings Ninth Annual IEEE Symposium on Logic in Computer Science.

[22]  Martín Abadi,et al.  A Model for Formal Parametric Polymorphism: A PER Interpretation for System R , 1995, TLCA.

[23]  Corrado Böhm,et al.  Automatic Synthesis of Typed Lambda-Programs on Term Algebras , 1985, Theor. Comput. Sci..

[24]  C. A. R. Hoare,et al.  Proof of correctness of data representations , 1972, Acta Informatica.

[25]  D. Sannella,et al.  Prelogical relations , 2002 .

[26]  Martín Abadi,et al.  A Logic for Parametric Polymorphism , 1993, TLCA.

[27]  John C. Reynolds,et al.  Types, Abstractions, and Parametric Polymorphism, Part 2 , 1991, MFPS.

[28]  Christopher Strachey,et al.  Fundamental Concepts in Programming Languages , 2000, High. Order Symb. Comput..

[29]  Robin Milner,et al.  An Algebraic Definition of Simulation Between Programs , 1971, IJCAI.

[30]  Ryu Hasegawa Parametricity of Extensionally Collapsed Term Models of Polymorphism and Their Categorical Properties , 1991, TACS.

[31]  Jo Erskine Hannay Abstraction Barrier-Observing Relational Parametricity , 2003, TLCA.

[32]  John C. Reynolds,et al.  Types, Abstraction and Parametric Polymorphism , 1983, IFIP Congress.

[33]  Harry G. Mairson Outline of a Proof Theory of Parametricity , 1991, FPCA.

[34]  Donald Sannella,et al.  Essential concepts of algebraic specification and program development , 1997, Formal Aspects of Computing.

[35]  Oliver Schoett,et al.  Behavioural Correctness of Data Representations , 1990, Sci. Comput. Program..

[36]  Gordon D. Plotkin,et al.  Lax Logical Relations , 2000, ICALP.

[37]  Jo Erskine Hannay A Higher-Order Simulation Relation for System F , 2000, FoSSaCS.

[38]  J. Girard,et al.  Proofs and types , 1989 .

[39]  Hans Leib Second-order pre-logical relations and representation independence , 2001 .