Results 1  10
of
14
Just do it: Simple monadic equational reasoning
 In Proceedings of the 16th International Conference on Functional Programming (ICFP’11
, 2011
"... One of the appeals of pure functional programming is that it is so amenable to equational reasoning. One of the problems of pure functional programming is that it rules out computational effects. Moggi and Wadler showed how to get round this problem by using monads to encapsulate the effects, leadin ..."
Abstract

Cited by 6 (1 self)
 Add to MetaCart
One of the appeals of pure functional programming is that it is so amenable to equational reasoning. One of the problems of pure functional programming is that it rules out computational effects. Moggi and Wadler showed how to get round this problem by using monads to encapsulate the effects, leading in essence to a phase distinction—a pure functional evaluation yielding an impure imperative computation. Still, it has not been clear how to reconcile that phase distinction with the continuing appeal of functional programming; does the impure imperative part become inaccessible to equational reasoning? We think not; and to back that up, we present a simple axiomatic approach to reasoning about programs with computational effects.
Algebraic foundations for effectdependent optimisations
 In POPL
, 2012
"... We present a general theory of Giffordstyle type and effect annotations, where effect annotations are sets of effects. Generality is achieved by recourse to the theory of algebraic effects, a development of Moggi’s monadic theory of computational effects that emphasises the operations causing the e ..."
Abstract

Cited by 6 (1 self)
 Add to MetaCart
We present a general theory of Giffordstyle type and effect annotations, where effect annotations are sets of effects. Generality is achieved by recourse to the theory of algebraic effects, a development of Moggi’s monadic theory of computational effects that emphasises the operations causing the effects at hand and their equational theory. The key observation is that annotation effects can be identified with operation symbols. We develop an annotated version of Levy’s CallbyPushValue language with a kind of computations for every effect set; it can be thought of as a sequential, annotated intermediate language. We develop a range of validated optimisations (i.e., equivalences), generalising many existing ones and adding new ones. We classify these optimisations as structural, algebraic, or abstract: structural optimisations always hold; algebraic ones depend on the effect theory at hand; and abstract ones depend on the global nature of that theory (we give modularlycheckable sufficient conditions for their validity).
Coalgebraic Components in a ManySorted Microcosm
"... Abstract. The microcosm principle, advocated by Baez and Dolan and formalized for Lawvere theories lately by three of the authors, has been applied to coalgebras in order to describe compositional behavior systematically. Here we further illustrate the usefulness of the approach by extending it to a ..."
Abstract

Cited by 6 (3 self)
 Add to MetaCart
Abstract. The microcosm principle, advocated by Baez and Dolan and formalized for Lawvere theories lately by three of the authors, has been applied to coalgebras in order to describe compositional behavior systematically. Here we further illustrate the usefulness of the approach by extending it to a manysorted setting. Then we can show that the coalgebraic component calculi of Barbosa are examples, with compositionality of behavior following from microcosm structure. The algebraic structure on these coalgebraic components corresponds to variants of Hughes’ notion of arrow, introduced to organize computations in functional programming. 1
Monads with arities and their associated theories
 J. of Pure and Applied Algebra
"... Abstract. After a review of the concept of “monad with arities ” we show that the category of algebras for such a monad has a canonical dense generator. This is used to extend the correspondence between finitary monads on sets and Lawvere’s algebraic theories to a general correspondence between mona ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
Abstract. After a review of the concept of “monad with arities ” we show that the category of algebras for such a monad has a canonical dense generator. This is used to extend the correspondence between finitary monads on sets and Lawvere’s algebraic theories to a general correspondence between monads and theories for a given category with arities. As application we determine arities for the free groupoid monad on involutive graphs and recover the symmetric simplicial nerve characterisation of groupoids. Introduction. In his seminal work [20] Lawvere constructed for every variety of algebras, defined by finitary operations and relations on sets, an algebraic theory whose nary operations are the elements of the free algebra on n elements. He showed that the variety of algebras is equivalent to the category of models of the associated algebraic
BarQL: Collaborating Through Change
"... Applications such as Google Docs, Office 365, and Dropbox show a growing trend towards incorporating multiuser collaboration functionality into web applications. These collaborative applications share a need to efficiently express shared state, typically through a shared log abstraction. Extensive ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Applications such as Google Docs, Office 365, and Dropbox show a growing trend towards incorporating multiuser collaboration functionality into web applications. These collaborative applications share a need to efficiently express shared state, typically through a shared log abstraction. Extensive research efforts on log abstractions by the database, programming languages, and distributed systems communities have identified a variety of analysis techniques based on the algebraic properties of updates (i.e., pairwise commutativity, subsumption, and idempotence). Although these techniques have been applied to specific application domains, to the best of our knowledge, no attempt has been made to create a general framework for such analyses in the context of a nontrivial update language. In this paper, we introduce monadic logs, a semantically rich state abstraction that provides a powerful, expressive framework for reasoning about a variety of application state properties. We also define BarQL, a general purpose stateupdate language, and show how the monadic log abstraction allows us to reason about the properties of updates expressed in BarQL. Finally, we show how such analyses can be expressed declaratively using the SPARQL graph query language. 1.
Contents
, 903
"... Abstract. We propose an abstract definition of convex spaces as sets where one can take convex combinations in a consistent way. A priori, a convex space is an algebra over a finitary version of the Giry monad. We identify the corresponding Lawvere theory as the category from [Fri09] and use the res ..."
Abstract
 Add to MetaCart
Abstract. We propose an abstract definition of convex spaces as sets where one can take convex combinations in a consistent way. A priori, a convex space is an algebra over a finitary version of the Giry monad. We identify the corresponding Lawvere theory as the category from [Fri09] and use the results obtained there to extract a concrete definition of convex space in terms of a family of binary operations satisfying certain compatibility conditions. After giving an extensive list of examples of convex sets as they appear throughout mathematics and theoretical physics, we find that there also exist convex spaces that cannot be embedded into a vector space: semilattices are a class of examples of purely combinatorial type. In an informationtheoretic interpretation, convex subsets of vector spaces are probabilistic, while semilattices are possibilistic. Convex spaces unify these two concepts.
Unifying Theories of Programming with Monads
"... Abstract. The combination of probabilistic and nondeterministic choice in program calculi is a notoriously tricky problem, and one with a long history. We present a simple functional programming approach to this challenge, based on algebraic theories of computational effects. We make use of the powe ..."
Abstract
 Add to MetaCart
Abstract. The combination of probabilistic and nondeterministic choice in program calculi is a notoriously tricky problem, and one with a long history. We present a simple functional programming approach to this challenge, based on algebraic theories of computational effects. We make use of the powerful abstraction facilities of modern functional languages, to introduce the choice operations as a little embedded domainspecific language rather than having to define a language extension; we rely on referential transparency, to justify straightforward equational reasoning about program behaviour. 1
Investigations into Algebra and Topology over Nominal Sets
"... The last decade has seen a surge of interest in nominal sets and their applications to formal methods for programming languages. This thesis studies two subjects: algebra and duality in the nominal setting. In the first part, we study universal algebra over nominal sets. At the heart of our approach ..."
Abstract
 Add to MetaCart
The last decade has seen a surge of interest in nominal sets and their applications to formal methods for programming languages. This thesis studies two subjects: algebra and duality in the nominal setting. In the first part, we study universal algebra over nominal sets. At the heart of our approach lies the existence of an adjunction of descent type between nominal sets and a category of manysorted sets. Hence nominal sets are a full reflective subcategory of a manysorted variety. This is presented in Chapter 2. Chapter 3 introduces functors over manysorted varieties that can be presented by operations and equations. These are precisely the functors that preserve sifted colimits. They play a central role in Chapter 4, which shows how one can systematically transfer results of universal algebra from a manysorted variety to nominal sets. However, the equational logic obtained is more expressive than the nominal equational logic of Clouston and Pitts, respectively, the nominal algebra of Gabbay and Mathijssen. A uniform fragment of our logic with the same expressivity