Correctness of Non-determinism Analyses in a Parallel-Functional Language

  • Clara Segura
  • Ricardo Peña
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3145)


The presence of non-determinism in the parallel-functional language Eden creates some problems. Several non-determinism analyses have been developed to determine when an Eden expression is sure to be deterministic, and when it may be non-deterministic. The correctness of these analyses had not been proved yet. In this paper we define a “maximal” denotational semantics for Eden in the sense that the set of possible values produced by an expression is bigger than the actual one. This semantics is enough to prove the correctness of the analyses. We provide the abstraction and concretisation functions relating the concrete and abstract values so that the determinism property is adequately captured. Finally we prove the correctness of the analyses with respect to the previously defined semantics.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Burn, G.L., Hankin, C.L., Abramsky, S.: The Theory of Strictness Analysis for Higher Order Functions. In: Ganzinger, H., Jones, N.D. (eds.) Programs as Data Objects. LNCS, vol. 217, pp. 42–62. Springer, Heidelberg (1986)Google Scholar
  2. 2.
    Cousot, P., Cousot, R.: Systematic design of program analysis frameworks. In: POPL 1979, pp. 269–282. ACM Press, New York (1979)CrossRefGoogle Scholar
  3. 3.
    Hidalgo, M., Ortega, Y.: Continuation Semantics for Parallel Haskell Dialects. In: Ohori, A. (ed.) APLAS 2003. LNCS, vol. 2895, pp. 303–321. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  4. 4.
    Hughes, J., Moran, A.: Making Choices Lazily. In: FPCA 1995, pp. 108–119. ACM Press, New York (1995)CrossRefGoogle Scholar
  5. 5.
    Peña, R., Segura, C.: Three Non-determinism Analyses in a Parallel-Functional Language. Technical Report 117-01, Univ. Complutense de Madrid, Spain (2001),
  6. 6.
    Peña, R., Segura, C.: Correctness of Non-determinism Analyses in a Parallel- Functional Language. Technical Report 131-03, Univ. Complutense de Madrid, Spain (2003),
  7. 7.
    Peña, R., Segura, C.: Non-Determinism Analysis in a Parallel-Functional Language. In: Mohnen, M., Koopman, P. (eds.) IFL 2000. LNCS, vol. 2011, pp. 1–18. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  8. 8.
    Peña, R., Segura, C.: A Polynomial Cost Non-Determinism Analysis. In: Arts, T., Mohnen, M. (eds.) IFL 2002. LNCS, vol. 2312, pp. 121–137. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  9. 9.
    Peyton Jones, S.L., Hall, C.V., Hammond, K., Partain, W.D., Wadler, P.L.: The Glasgow Haskell Compiler: A Technical Overview. In: Joint Framework for Inf. Technology, Keele, DTI/SERC, pp. 249–257 (1993)Google Scholar
  10. 10.
    Peyton Jones, S.L., Santos, A.L.M.: A Transformation-based Optimiser for Haskell. Science of Computer Programming 32(1-3), 3–47 (1998)zbMATHCrossRefGoogle Scholar
  11. 11.
    Søndergaard, H., Sestoft, P.: Referential Transparency, Definiteness and Unfoldability. Acta Informatica 27(6), 505–517 (1990)CrossRefMathSciNetGoogle Scholar
  12. 12.
    Søndergaard, H., Sestoft, P.: Non-Determinism in Functional Languages. Computer Journal 35(5), 514–523 (1992)CrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Clara Segura
    • 1
  • Ricardo Peña
    • 1
  1. 1.Departamento de Sistemas Informáticos y ProgramaciónUniversidad Complutense de MadridSpain

Personalised recommendations