Results 11  20
of
36
On the construction of free algebras for equational systems
 IN: SPECIAL ISSUE FOR AUTOMATA, LANGUAGES AND PROGRAMMING (ICALP 2007). VOLUME 410 OF THEORETICAL COMPUTER SCIENCE
, 2009
"... The purpose of this paper is threefold: to present a general abstract, yet practical, notion of equational system; to investigate and develop the finitary and transfinite construction of free algebras for equational systems; and to illustrate the use of equational systems as needed in modern applica ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
The purpose of this paper is threefold: to present a general abstract, yet practical, notion of equational system; to investigate and develop the finitary and transfinite construction of free algebras for equational systems; and to illustrate the use of equational systems as needed in modern applications.
What is a Data Type?
, 1996
"... A program derivation is said to be polytypic if some of its parameters are data types. Polytypic program derivations necessitate a general, noninductive definition of `data type'. Here we propose such a definition: a data type is a relator that has membership. It is shown how this definition implie ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
A program derivation is said to be polytypic if some of its parameters are data types. Polytypic program derivations necessitate a general, noninductive definition of `data type'. Here we propose such a definition: a data type is a relator that has membership. It is shown how this definition implies various other properties that are shared by all data types. In particular, all data types have a unique strength, and all natural transformations between data types are strong. 1 Introduction What is a data type? It is easy to list a number of examples: pairs, lists, bags, finite sets, possibly infinite sets, function spaces . . . but such a list of examples hardly makes a definition. The obvious formalisation is a definition that builds up the class of data types inductively; such an inductive definition, however, leads to cumbersome proofs if we want to prove a property of all data types. Here we aim to give a noninductive characterisation, defining a data type as a mathematical object...
Coalgebras and Monads in the Semantics of Java
 Theoretical Computer Science
, 2002
"... This paper describes the basic structures in the denotational and axiomatic semantics of sequential Java, both from a monadic and a coalgebraic perspective. This semantics is an abstraction of the one used for the verification of (sequential) Java programs using proof tools in the LOOP project at th ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
This paper describes the basic structures in the denotational and axiomatic semantics of sequential Java, both from a monadic and a coalgebraic perspective. This semantics is an abstraction of the one used for the verification of (sequential) Java programs using proof tools in the LOOP project at the University of Nijmegen. It is shown how the monadic perspective gives rise to the relevant computational structure in Java (composition, extension and repetition), and how the coalgebraic perspective o#ers an associated program logic (with invariants, bisimulations, and Hoare logics) for reasoning about the computational structure provided by the monad.
Universal properties of Span
 in The Carboni Festschrift, Theory and Applications of Categories 13 (2005
"... Abstract. We give two related universal properties of the span construction. The first involves sinister morphisms out of the base category and sinister transformations. The second involves oplax morphisms out of the bicategory of spans having an extra property; we call these “jointed ” oplax morphi ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
Abstract. We give two related universal properties of the span construction. The first involves sinister morphisms out of the base category and sinister transformations. The second involves oplax morphisms out of the bicategory of spans having an extra property; we call these “jointed ” oplax morphisms.
Restriction categories III: colimits, partial limits, and extensivity
 Mathematical Structures in Computer Science
, 2007
"... ..."
A separation logic for refining concurrent objects
, 2010
"... Finegrained concurrent data structures are crucial for gaining performance from multiprocessing, but their design is a subtle art. Recent literature has made large strides in verifying these data structures, using either atomicity refinement or separation logic with relyguarantee reasoning. In thi ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
Finegrained concurrent data structures are crucial for gaining performance from multiprocessing, but their design is a subtle art. Recent literature has made large strides in verifying these data structures, using either atomicity refinement or separation logic with relyguarantee reasoning. In this paper we show how the ownership discipline of separation logic can be used to enable atomicity refinement, and we develop a new relyguarantee method that is localized to the definition of a data structure. We present the first semantics of separation logic that is sensitive to atomicity, and show how to control this sensitivity through ownership. The result is a logic that enables compositional reasoning about atomicity and interference, even for programs that use finegrained synchronization and dynamic memory allocation.
Coinductive Interpreters for Process Calculi
 In Sixth International Symposium on Functional and Logic Programming, volume 2441 of LNCS
, 2002
"... This paper suggests functional programming languages with coinductive types as suitable devices for prototyping process calculi. The proposed approach is independent of any particular process calculus and makes explicit the dierent ingredients present in the design of any such calculi. In partic ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
This paper suggests functional programming languages with coinductive types as suitable devices for prototyping process calculi. The proposed approach is independent of any particular process calculus and makes explicit the dierent ingredients present in the design of any such calculi. In particular structural aspects of the underlying behaviour model become clearly separated from the interaction structure which de nes the synchronisation discipline. The approach is illustrated by the detailed development in Charity of an interpreter for a family of process languages.
Covariant Types
 Theoretical Computer Science
, 1997
"... The covariant type system is an impredicative system that is rich enough to represent some polymorphism on inductive types, such as lists and trees, and yet is simple enough to have a settheoretic semantics. Its chief novelty is to replace function types by transformation types, which denote parame ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
The covariant type system is an impredicative system that is rich enough to represent some polymorphism on inductive types, such as lists and trees, and yet is simple enough to have a settheoretic semantics. Its chief novelty is to replace function types by transformation types, which denote parametric functions. Their free type variables are all in positive positions, and so can be modelled by covariant functors. Similarly, terms denote natural transformations. There is a translation from the covariant type system to system F which preserves nontrivial reductions. It follows that covariant reduction is strongly normalising and confluent. This work suggests a new approach to the semantics of system F, and new ways of basing type systems on the categorical notions of functor and natural transformation. Keywords covariant types, polymorphism, parametricity, transformation types. 1 Introduction The pros and cons of typing programs are already well known. In brief, static typecheckin...
An Equational Notion of Lifting Monad
 TITLE WILL BE SET BY THE PUBLISHER
, 2003
"... We introduce the notion of an equational lifting monad: a commutative strong monad satisfying one additional equation (valid for monads arising from partial map classifiers). We prove that any equational lifting monad has a representation by a partial map classifier such that the Kleisli category ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
We introduce the notion of an equational lifting monad: a commutative strong monad satisfying one additional equation (valid for monads arising from partial map classifiers). We prove that any equational lifting monad has a representation by a partial map classifier such that the Kleisli category of the former fully embeds in the partial category of the latter. Thus equational lifting monads precisely capture the equational properties of partial maps as induced by partial map classifiers. The representation theorem also provides a tool for transferring nonequational properties of partial map classifiers to equational lifting monads. It is proved using a direct axiomatization of Kleisli categories of equational lifting monads. This axiomatization is of interest in its own right. 1