dc.contributor.advisor Plotkin, Gordon dc.contributor.advisor Power, John dc.contributor.author Pretnar, Matija dc.date.accessioned 2011-01-18T11:52:15Z dc.date.available 2011-01-18T11:52:15Z dc.date.issued 2010 dc.identifier.uri http://hdl.handle.net/1842/4611 dc.description.abstract In the thesis, we explore reasoning about and handling of algebraic effects. Those en are computational effects, which admit a representation by an equational theory. Their examples include exceptions, nondeterminism, interactive input and output, state, and their combinations. In the first part of the thesis, we propose a logic for algebraic effects. We begin by introducing the a-calculus, which is a minimal equational logic with the purpose of exposing distinct features of algebraic effects. Next, we give a powerful logic, which builds on results of the a-calculus. The types and terms of the logic are the ones of Levy’s call-by-push-value framework, while the reasoning rules are the standard ones of a classical multi-sorted first-order logic with predicates, extended with predicate fixed points and two principles that describe the universality of free models of the theory representing the effects at hand. Afterwards, we show the use of the logic in reasoning about properties of effectful programs, and in the translation of Moggi’s computational ¸-calculus, Hennessy-Milner logic, and Moggi’s refinement of Pitts’s evaluation logic. In the second part of the thesis, we introduce handlers of algebraic effects. Those not only provide an algebraic treatment of exception handlers, but generalise them to arbitrary algebraic effects. Each such handler corresponds to a model of the theory representing the effects, while the handling construct is interpreted by the homomorphism induced by the universal property of the free model. We use handlers to describe many previously unrelated concepts from both theory and practice, for example CSS renaming and hiding, stream redirection, timeout, and rollback. dc.contributor.sponsor Engineering and Physical Sciences Research Council (EPSRC) en dc.language.iso en en dc.publisher The University of Edinburgh en dc.relation.hasversion Gordon David Plotkin and Matija Pretnar. A logic for algebraic effects. In 23rd Symposium on Logic in Computer Science, pages 118-129, 2008. en dc.relation.hasversion Gordon David Plotkin and Matija Pretnar. Handlers of algebraic effects. In ESOP 2009, volume 5502 of Lecture Notes in Computer Science, pages 80–94, 2009. en dc.subject computational effects en dc.subject algebraic theories en dc.subject program logics en dc.subject exception handlers en dc.title Logic and handling of algebraic effects en dc.type Thesis or Dissertation en dc.type.qualificationlevel Doctoral en dc.type.qualificationname PhD Doctor of Philosophy en
﻿