Logics of time and computation
Logics of time and computation
Notions of computation and monads
Information and Computation
ACM Computing Surveys (CSUR)
A Discipline of Programming
Testing monadic code with QuickCheck
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
HASCASL: Towards Integrated Specification and Development of Functional Programs
AMAST '02 Proceedings of the 9th International Conference on Algebraic Methodology and Software Technology
HOLCF: Higher Order Logic of Computable Functions
Proceedings of the 8th International Workshop on Higher Order Logic Theorem Proving and Its Applications
FroCoS '02 Proceedings of the 4th International Workshop on Frontiers of Combining Systems
The HASCASL prologue: categorical syntax and semantics of the partial λ-calculus
Theoretical Computer Science
Compositional type systems for stack-based low-level languages
CATS '06 Proceedings of the 12th Computing: The Australasian Theroy Symposium - Volume 51
Electronic Notes in Theoretical Computer Science (ENTCS)
HasCasl: Integrated higher-order specification and program development
Theoretical Computer Science
Intuitionistic refinement calculus
TLCA'07 Proceedings of the 8th international conference on Typed lambda calculi and applications
Bootstrapping types and cotypes in HASCASL
CALCO'07 Proceedings of the 2nd international conference on Algebra and coalgebra in computer science
A generic complete dynamic logic for reasoning about purity and effects
FASE'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Fundamental approaches to software engineering
Completeness of global evaluation logic
MFCS'06 Proceedings of the 31st international conference on Mathematical Foundations of Computer Science
CALCO'05 Proceedings of the First international conference on Algebra and Coalgebra in Computer Science
Monad-Based logics for computational effects
AMAST'06 Proceedings of the 11th international conference on Algebraic Methodology and Software Technology
Proof abstraction for imperative languages
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
Compositional type systems for stack-based low-level languages
CATS '06 Proceedings of the Twelfth Computing: The Australasian Theory Symposium - Volume 51
A Relatively Complete Generic Hoare Logic for Order-Enriched Effects
LICS '13 Proceedings of the 2013 28th Annual ACM/IEEE Symposium on Logic in Computer Science
Hi-index | 0.00 |
Monads have been recognized by Moggi as an elegant device for dealing with stateful computation in functional programming languages. It is thus natural to develop a Hoare calculus for reasoning about computational monads. While this has previously been done only for the state monad, we here provide a generic, monad-independent approach, which applies also to further computational monads such as exceptions, input/output, and non-determinism. All this is formalized within the logic of HASCASL, a higher-order language for functional specification and programming. Combination of monadic features can be obtained by combining their loose specifications. As an application, we prove partial correctness of Dijkstra's nondeterministic version of Euclid's algorithm in a monad with nondeterministic dynamic references.