Step-Indexed Relational Reasoning for Countable Nondeterminism

Programming languages with countable nondeterministic choice are computationally interesting since countable nondeterminism arises when modeling fairness for concurrent systems. Because countable choice introduces non-continuous behaviour, it is well-known that developing semantic models for programming languages with countable nondeterminism is challenging. We present a step-indexed logical relations model of a higher-order functional programming language with countable nondeterminism and demonstrate how it can be used to reason about contextually defined may- and must-equivalence. In earlier step-indexed models, the indices have been drawn from omega. Here the step-indexed relations for must-equivalence are indexed over an ordinal greater than omega.

[1]  James Laird,et al.  Bidomains and Full Abstraction for Countable Nondeterminism , 2006, FoSSaCS.

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

[3]  Carolyn L. Talcott,et al.  1 Equivalence in Functional Languages with E ectsIan , 2007 .

[4]  Lars Birkedal,et al.  The impact of higher-order state and control effects on local relational reasoning , 2012, J. Funct. Program..

[5]  Marino Miculan,et al.  Unifying Recursive and Co-recursive Definitions in Sheaf Categories , 2004, FoSSaCS.

[6]  Andrew Moran,et al.  Unique Fixed Point Induction for McCarthy's Amb , 1999, MFCS.

[7]  Lars Birkedal,et al.  Logical Step-Indexed Logical Relations , 2009, 2009 24th Annual IEEE Symposium on Logic In Computer Science.

[8]  Paul Blain Levy Infinitary Howe's Method , 2006, CMCS.

[9]  Corin Pitcher,et al.  Similarity and Bisimilarity for Countable Non-Determinism and Higher-Order Functions , 1997, Electron. Notes Theor. Comput. Sci..

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

[11]  Andrew M. Pitts Step-Indexed Biorthogonality: a Tutorial Example , 2010, Modelling, Controlling and Reasoning About State.

[12]  Krzysztof R. Apt,et al.  Countable nondeterminism and random assignment , 1986, JACM.

[13]  Carolyn L. Talcott,et al.  A foundation for actor computation , 1997, Journal of Functional Programming.

[14]  Patricia Johann,et al.  A Generic Operational Metatheory for Algebraic Effects , 2010, 2010 25th Annual IEEE Symposium on Logic in Computer Science.

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

[16]  Hongseok Yang,et al.  Step-indexed kripke models over recursive worlds , 2011, POPL '11.

[17]  Furio Honsell,et al.  Uncountable Limits and the lambda Calculus , 1995, Nord. J. Comput..

[18]  John C. Reynolds,et al.  On the Relation between Direct and Continuation Semantics , 1974, ICALP.

[19]  Glynn Winskel,et al.  Relational Reasoning about Functions and Nondeterminism , 1999 .

[20]  Manfred Schmidt-Schauß,et al.  A call-by-need lambda calculus with locally bottom-avoiding choice: context lemma and correctness of transformations , 2008, Mathematical Structures in Computer Science.