Constructive Data Refinement in Typed Lambda Calculus

A new treatment of data refinement in typed lambda calculus is proposed, phrased in terms of pre-logical relations [HS99] rather than logical relations, and incorporating a constructive element. Constructive data refinement is shown to have desirable properties, and a substantial example of refinement is presented.

[1]  G.D. Plotkin,et al.  LCF Considered as a Programming Language , 1977, Theor. Comput. Sci..

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

[3]  Dag Normann,et al.  The continuous functionals of finite types over the reals , 1998, Workshop on Domains.

[4]  Joseph A. Goguen,et al.  Parameterized Programming , 1984, IEEE Transactions on Software Engineering.

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

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

[7]  Thorsten Altenkirch Logical Relations and Inductive/Coinductive Types , 1998, CSL.

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

[9]  M. Beeson Foundations of Constructive Mathematics , 1985 .

[10]  C. A. R. Hoare,et al.  Proof of Correctness of Data Representations (Reprint) , 2002, Software Pioneers.

[11]  Donald Sannella,et al.  Toward Formal Development of ML Programs: Foundations and Methodology (Extended Abstract) , 1989, TAPSOFT, Vol.2.

[12]  M. A. Malik Correctness of Data Representations , 1976 .

[13]  Oliver Schoett,et al.  Data abstraction and the correctness of modular programming , 1986 .

[14]  Radha Jagadeesan,et al.  Full Abstraction for PCF , 1994, Inf. Comput..

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

[16]  Alex K. Simpson,et al.  Lazy Functional Algorithms for Exact Real Functionals , 1998, MFCS.

[17]  D. Plume A calculator for exact real number computation , 1998 .

[18]  John C. Mitchell,et al.  Second-Order Logical Relations (Extended Abstract) , 1985, Logic of Programs.

[19]  Gordon D. Plotkin,et al.  Full abstraction, totality and PCF , 1999, Mathematical Structures in Computer Science.

[20]  Peter W. O'Hearn,et al.  An Axiomatic Approach to Binary Logical Relations with Applications to Data Refinement , 1997, TACS.

[21]  John Longley When is a functional program not a functional program? , 1999, ICFP '99.

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

[23]  Furio Honsell,et al.  Pre-logical Relations , 1999, CSL.

[24]  C.-H. Luke Ong,et al.  On Full Abstraction for PCF: I, II, and III , 2000, Inf. Comput..

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

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

[27]  John Longley Matching typed and untyped realizability , 2000, Electron. Notes Theor. Comput. Sci..