Skip to main content

Unique Fixed Point Induction for McCarthy’s Amb

  • Conference paper
Mathematical Foundations of Computer Science 1999 (MFCS 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1672))

Abstract

We develop an operational theory of higher-order functions, recursion, and fair non-determinism for a non-trivial, higher-order, call-by-name functional programming language extended with McCarthy’s amb. Implemented via fair parallel evaluation, functional programming with amb is very expressive. However, conventional semantic fixed point principles for reasoning about recursion fail in the presence of fairness. Instead, we adapt higher-order operational methods to deal with fair non-determinism. We present two natural semantics, describing may-and must-convergence, and define a notion of contextual equivalence over these two modalities. The presence of amb raises special difficulties when reasoning about contextual equivalence. In particular, we report on a challenging open problem with regard to the validity of bisimulation proof methods. We develop two sound and useful reasoning methods which, in combination, enable us to prove a rich collection of laws for contextual equivalence and also provide a unique fixed point induction rule, the first proof rule for reasoning about recursion in the presence of fair non-determinism.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. K. R. Apt and G. D. Plotkin. Countable nondeterminism and random assignment. Journal of the ACM, 33(4):724–767, 1986.

    Article  MATH  MathSciNet  Google Scholar 

  2. S. Arun-Kumar and M. Hennessy. An efficiency preorder for processes. In TACS’ 91, LNCS 526. Springer, 1991.

    Google Scholar 

  3. M. Broy. A theory for nondeterminism, parallelism, communication, and concurrency. Theoretical Computer Science, 45(1):1–61, 1986.

    Article  MATH  MathSciNet  Google Scholar 

  4. A. D. Gordon. Functional Programming and Input/Output. Distinguished Dissertations in Computer Science. Cambridge U. P., 1994.

    MATH  Google Scholar 

  5. A. D. Gordon. Bisimilarity as a theory of functional programming. In MFPS XI, ENTCS 1. Elsevier, 1995.

    Google Scholar 

  6. A. D. Gordon and A. M. Pitts, editors. Higher Order Operational Techniques in Semantics. Publications of the Newton Institute. Cambridge U. P., 1998.

    MATH  Google Scholar 

  7. D. Howe. Proving congruence of bisimulation in functional programming. Information and Computation, 124(2):103–112, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  8. J. Hughes and J. T. O’Donnell. Expressing and reasoning about non-deterministic functional programs. In Functional Programming, Glasgow, 1989, Workshops in Computing. Springer, 1989.

    Google Scholar 

  9. S. B. Lassen. Relational reasoning about contexts. In A. M. Pitts, editors. Higher Order Operational Techniques in Semantics. Publications of the Newton Institute. Cambridge U. P., 1998 Gordon and Pitts [6], pages 91–135.

    Google Scholar 

  10. S. B. Lassen. Relational Reasoning about Functions and Nondeterminism. PhD thesis, Dept. of Computer Science, University of Aarhus, May 1998.

    Google Scholar 

  11. S. B. Lassen and C. S. Pitcher. Similarity and bisimilarity for countable nondeterminism and higher-order functions. In HOOTS II, ENTCS 10. Elsevier, 1998.

    Google Scholar 

  12. J. McCarthy. A basis for a mathematical theory of computation. In Computer Programming and Formal Systems, pages 33–70. North-Holland, 1963.

    Google Scholar 

  13. A. K. Moran. Call-by-name, Call-by-need, and McCarthy’s Amb. PhD thesis, Dept. of Computer Science, Chalmers University of Technology, Sept. 1998.

    Google Scholar 

  14. A. K. Moran and D. Sands. Improvement in a lazy context: An operational theory for call-by-need. In POPL’ 99. ACM, 1999.

    Google Scholar 

  15. A. K. Moran, D. Sands, and M. Carlsson. Erratic Fudgets: A semantic theory for an embedded coordination language. In Coordination’ 99, LNCS 1594. Springer, 1999.

    Google Scholar 

  16. Y. N. Moschovakis. A game-theoretic, concurrent and fair model of the typed lambda-calculus, with full recursion. In CSL’ 97, LNCS 1414. Springer, 1998.

    Google Scholar 

  17. C.-H. L. Ong. Non-determinism in a functional setting. In LICS’ 93. IEEE, 1993.

    Google Scholar 

  18. D. Sands. Improvement theory and its applications. In A. M. Pitts, editors. Higher Order Operational Techniques in Semantics. Publications of the Newton Institute. Cambridge U. P., 1998 Gordon and Pitts [6]}, pages 275–306.

    Google Scholar 

  19. D. Sangiorgi. On the bisimulation proof method. In MFCS’ 95, LNCS 969, pages 479–488. Springer, 1995.

    Google Scholar 

  20. D. Sangiorgi and R. Milner. The problem of “weak bisimulation up to”. In CONCUR’ 92, LNCS 789. Springer, 1992.

    Google Scholar 

  21. H. Søndergaard and P. Sestoft. Non-determinism in functional languages. The Computer Journal, 35(5):514–523, 1992.

    Article  MathSciNet  Google Scholar 

  22. P. Wadler. Comprehending monads. Mathematical Structures in Computer Science, 2:461–493, 1992.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lassen, S.B., Moran, A. (1999). Unique Fixed Point Induction for McCarthy’s Amb. In: Kutyłowski, M., Pacholski, L., Wierzbicki, T. (eds) Mathematical Foundations of Computer Science 1999. MFCS 1999. Lecture Notes in Computer Science, vol 1672. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48340-3_18

Download citation

  • DOI: https://doi.org/10.1007/3-540-48340-3_18

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66408-6

  • Online ISBN: 978-3-540-48340-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics