Advertisement

Completeness of Global Evaluation Logic

  • Sergey Goncharov
  • Lutz Schröder
  • Till Mossakowski
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4162)

Abstract

Monads serve the abstract encapsulation of side effects in semantics and functional programming. Various monad-based specification languages have been introduced in order to express requirements on generic side-effecting programs. A basic role is played here by global evaluation logic, concerned with formulae which may be thought of as being universally quantified over the state space; this formalism is the fundament of more advanced logics such as monad-based Hoare logic or dynamic logic. We prove completeness of global evaluation logic for models in cartesian categories with a distinguished Heyting algebra object.

Keywords

Equational Theory Program Sequence Functional Programming Dynamic Logic Evaluation Logic 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Dershowitz, N., Manna, Z.: Proving termination with multiset orderings. Comm. ACM 22, 465–476 (1979)MATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Fluet, M., Morrisett, G.: Monadic regions. In: International Conference on Functional Programming, pp. 103–114. ACM Press, New York (2004)Google Scholar
  3. 3.
    Hutton, G., Meijer, E.: Monadic Parsing in Haskell. J. Functional Programming 8, 437–444 (1998)MATHCrossRefGoogle Scholar
  4. 4.
    Jacobs, B., Poll, E.: Coalgebras and Monads in the Semantics of Java. Theoret. Comput. Sci. 291, 329–349 (2003)MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Klop, J.: Term rewriting systems. In: Abramsky, S., Gabbay, D., Maibaum, T. (eds.) Handbook of Logic in Computer Science, vol. 2, pp. 1–117. Oxford (1992)Google Scholar
  6. 6.
    Mac Lane, S.: Categories for the Working Mathematician. Springer, Heidelberg (1997)Google Scholar
  7. 7.
    Moggi, E.: Notions of computation and monads. Inform. and Comput. 93, 55–92 (1991)MATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Moggi, E.: A semantics for evaluation logic. Fund. Inform. 22, 117–152 (1995)MATHMathSciNetGoogle Scholar
  9. 9.
    Moggi, E., Sabry, A.: Monadic encapsulation of effects: A revised approach (extended version). J. Funct. Programming 11, 591–627 (2001)MATHMathSciNetGoogle Scholar
  10. 10.
    Mossakowski, T., Schröder, L., Goncharov, S.: Completeness of monad-based dynamic logic. Technical report, University of Bremen (2006)Google Scholar
  11. 11.
    Peyton-Jones, S. (ed.): Haskell 98 Language and Libraries — The Revised Report, Cambridge (2003); Also J. Funct. Programming 13 (2003)Google Scholar
  12. 12.
    Pitts, A.: Evaluation logic. In: Higher Order Workshop, Workshops in Computing, pp. 162–189. Springer, Heidelberg (1991)Google Scholar
  13. 13.
    Schröder, L., Mossakowski, T.: Monad-Independent Hoare Logic in HASCASL. In: Pezzé, M. (ed.) FASE 2003. LNCS, vol. 2621, pp. 261–277. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  14. 14.
    Schröder, L., Mossakowski, T.: Monad-independent dynamic logic in HASCASL. J. Logic Comput. 14, 571–619 (2004)MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Shinwell, M.R., Pitts, A.M.: On a monadic semantics for freshness. Theoret. Comput. Sci. 342, 28–55 (2005)MATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Sergey Goncharov
    • 1
  • Lutz Schröder
    • 1
    • 2
  • Till Mossakowski
    • 1
    • 2
  1. 1.Department of Computer ScienceUniversity of BremenGermany
  2. 2.DFKI Lab BremenGermany

Personalised recommendations