Logical Relations and Nondeterminism

  • Martin Hofmann
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8950)


The purpose of this article is to illustrate some technical difficulties encountered when trying to extend a logical relation to the Hoare powerdomain. We give a partial solution and some applications. Our vehicle is a simple call-by-value programming language with binary nondeterministic choice. We define both a big-step operational semantics and a denotational semantics using the Hoare powerdomain. Using our logical relation we then show equivalence of the two semantics in the sense of computational adequacy and some type-dependent program equivalences.


Operational Semantic Program Equivalence Logical Relation Denotational Semantic Inequational Theory 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abramsky, S., Jung, A.: Domain theory. Online Lecture Notes, avaliable from CiteSeerX (1994)Google Scholar
  2. 2.
    Amadio, R.M., Cardelli, L.: Subtyping recursive types, pp. 575–631 (1993)Google Scholar
  3. 3.
    Benton, N., Hofmann, M., Nigam, V.: Abstract effects and concurrency (under review 2014)Google Scholar
  4. 4.
    Birkedal, L., Sieczkowski, F., Thamsborg, J.: A concurrent logical relation. In: Cégielski, P., Durand, A. (eds.) CSL. LIPIcs, vol. 16, pp. 107–121. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2012)Google Scholar
  5. 5.
    Broy, M., Gnatz, R., Wirsing, M.: Semantics of nondeterministic and noncontinuous constructs. In: Gerhart, S.L., et al. (eds.) Program Construction. LNCS, vol. 69, pp. 553–592. Springer, Heidelberg (1979)CrossRefGoogle Scholar
  6. 6.
    Broy, M., Wirsing, M.: On the algebraic specification of nondeterministic programming languages. In: Astesiano, E., Böhm, C. (eds.) CAAP 1981. LNCS, vol. 112, pp. 162–179. Springer, Heidelberg (1981)CrossRefGoogle Scholar
  7. 7.
    Katsumata, S.-y.: Relating computational effects by ⊤ ⊤-lifting. In: Aceto, L., Henzinger, M., Sgall, J. (eds.) ICALP 2011, Part II. LNCS, vol. 6756, pp. 174–185. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  8. 8.
    Krivine, J.-L.: Classical logic, storage operators and second-order lambda-calculus. Ann. Pure Appl. Logic 68(1), 53–78 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Plotkin, G.D.: A powerdomain construction. SIAM J. Comput. 5(3), 452–487 (1976)MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Plotkin, G.D.: “lcf” considered as a programming language. Theor. Comput. Sci. 5(3), 223–255 (1977)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Sieber, K.: Call-by-value and nondeterminism. In: Bezem, M., Groote, J.F. (eds.) TLCA 1993. LNCS, vol. 664, pp. 376–390. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  12. 12.
    Smyth, M.B., Plotkin, G.D.: The category-theoretic solution of recursive domain equations. SIAM J. Comput. 11(4), 761–783 (1982)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Martin Hofmann
    • 1
  1. 1.LMU MunichGermany

Personalised recommendations