Art der Veröffentlichung: |
Artikel in Konferenzband |
Autor: |
Till Mossakowski, Lutz Schröder, Sergey Goncharov |
Herausgeber: |
J. Fiadeiro, P. Inverardi |
Titel: |
A generic complete dynamic logic for reasoning about purity and effects |
Buch / Sammlungs-Titel: |
Fundamental Approaches to Software Engineering (FASE 2008) |
Band: |
4961 |
Seite(n): |
199 – 214 |
Serie / Reihe: |
Lecture Notes in Computer Science |
Erscheinungsjahr: |
2008 |
Verleger: |
Springer |
Abstract / Kurzbeschreibung: |
For a number of programming languages, among them Eiffel, C, Java and Ruby,
Hoare-style logics and dynamic logics have been developed. In these
logics, pre- and postconditions are typically formulated using
potentially effectful programs. In order to ensure that these pre- and
postconditions behave like logical formulae (that is, enjoy some kind of
referential transparency), a notion of purity is needed. Here, we
introduce a generic framework for reasoning about purity and effects.
Effects are modeled abstractly and axiomatically, using Moggi's idea of
encapsulation of effects as monads. We introduce a dynamic logic (from
which, as usual, a Hoare logic can be derived) whose logical
formulae are pure programs in a strong sense. We formulate a set
of proof rules for this logic, and prove it to be complete with respect
to a categorical semantics. Using dynamic logic, we then develop a
relaxed notion of purity which allows for observationally neutral
effects such writing on newly allocated memory. |
Internet: |
http://dx.doi.org/10.1007/978-3-540-78743-3_15 |
PDF Version: |
http://www.informatik.uni-bremen.de/~till/papers/purity-effects.pdf |
Schlagworte: |
dynamic logic pure function monad observational purity completeness |
Status: |
Reviewed |
Letzte Aktualisierung: |
18. 06. 2008 |