Results 1 - 10
of
123
Universal coalgebra: a theory of systems
, 2000
"... In the semantics of programming, nite data types such as finite lists, have traditionally been modelled by initial algebras. Later final coalgebras were used in order to deal with in finite data types. Coalgebras, which are the dual of algebras, turned out to be suited, moreover, as models for certa ..."
Abstract
-
Cited by 408 (42 self)
- Add to MetaCart
In the semantics of programming, nite data types such as finite lists, have traditionally been modelled by initial algebras. Later final coalgebras were used in order to deal with in finite data types. Coalgebras, which are the dual of algebras, turned out to be suited, moreover, as models for certain types of automata and more generally, for (transition and dynamical) systems. An important property of initial algebras is that they satisfy the familiar principle of induction. Such a principle was missing for coalgebras until the work of Aczel (Non-Well-Founded sets, CSLI Leethre Notes, Vol. 14, center for the study of Languages and information, Stanford, 1988) on a theory of non-wellfounded sets, in which he introduced a proof principle nowadays called coinduction. It was formulated in terms of bisimulation, a notion originally stemming from the world of concurrent programming languages. Using the notion of coalgebra homomorphism, the definition of bisimulation on coalgebras can be shown to be formally dual to that of congruence on algebras. Thus, the three basic notions of universal algebra: algebra, homomorphism of algebras, and congruence, turn out to correspond to coalgebra, homomorphism of coalgebras, and bisimulation, respectively. In this paper, the latter are taken
A Foundation for Actor Computation
- Journal of Functional Programming
, 1998
"... We present an actor language which is an extension of a simple functional language, and provide a precise operational semantics for this extension. Actor configurations represent open distributed systems, by which we mean that the specification of an actor system explicitly takes into account the in ..."
Abstract
-
Cited by 262 (53 self)
- Add to MetaCart
(Show Context)
We present an actor language which is an extension of a simple functional language, and provide a precise operational semantics for this extension. Actor configurations represent open distributed systems, by which we mean that the specification of an actor system explicitly takes into account the interface with external components. We study the composability of such systems. We define and study various notions of testing equivalence on actor expressions and configurations. The model we develop provides fairness. An important result is that the three forms of equivalence, namely, convex, must, and may equivalences, collapse to two in the presence of fairness. We further develop methods for proving laws of equivalence and provide example proofs to illustrate our methodology.
The Lazy Lambda Calculus
- Research Topics in Functional Programming
, 1990
"... Introduction The commonly accepted basis for functional programming is the -calculus; and it is folklore that the -calculus is the prototypical functional language in puri ed form. But what is the -calculus? The syntax is simple and classical; variables, abstraction and application in the pure cal ..."
Abstract
-
Cited by 253 (1 self)
- Add to MetaCart
(Show Context)
Introduction The commonly accepted basis for functional programming is the -calculus; and it is folklore that the -calculus is the prototypical functional language in puri ed form. But what is the -calculus? The syntax is simple and classical; variables, abstraction and application in the pure calculus, with applied calculi obtained by adding constants. The further elaboration of the theory, covering conversion, reduction, theories and models, is laid out in Barendregt's already classical treatise [Bar84]. It is instructive to recall the following crux, which occurs rather early in that work (p. 39): Meaning of -terms: rst attempt The meaning of a -term is its normal form (if it exists). All terms without normal forms are identi ed. This proposal incorporates such a simple and natural interpretation of the -calculus as
Towards a Mathematical Operational Semantics
- In Proc. 12 th LICS Conf
, 1997
"... We present a categorical theory of `well-behaved' operational semantics which aims at complementing the established theory of domains and denotational semantics to form a coherent whole. It is shown that, if the operational rules of a programming language can be modelled as a natural transforma ..."
Abstract
-
Cited by 173 (8 self)
- Add to MetaCart
(Show Context)
We present a categorical theory of `well-behaved' operational semantics which aims at complementing the established theory of domains and denotational semantics to form a coherent whole. It is shown that, if the operational rules of a programming language can be modelled as a natural transformation of a suitable general form, depending on functorial notions of syntax and behaviour, then one gets both an operational model and a canonical, internally fully abstract denotational model for free; moreover, both models satisfy the operational rules. The theory is based on distributive laws and bialgebras; it specialises to the known classes of well-behaved rules for structural operational semantics, such as GSOS.
Structural Operational Semantics
- Handbook of Process Algebra
, 1999
"... Structural Operational Semantics (SOS) provides a framework to give an operational semantics to programming and specification languages, which, because of its intuitive appeal and flexibility, has found considerable application in the theory of concurrent processes. Even though SOS is widely use ..."
Abstract
-
Cited by 152 (20 self)
- Add to MetaCart
(Show Context)
Structural Operational Semantics (SOS) provides a framework to give an operational semantics to programming and specification languages, which, because of its intuitive appeal and flexibility, has found considerable application in the theory of concurrent processes. Even though SOS is widely used in programming language semantics at large, some of its most interesting theoretical developments have taken place within concurrency theory. In particular, SOS has been successfully applied as a formal tool to establish results that hold for whole classes of process description languages. The concept of rule format has played a major role in the development of this general theory of process description languages, and several such formats have been proposed in the research literature. This chapter presents an exposition of existing rule formats, and of the rich body of results that are guaranteed to hold for any process description language whose SOS is within one of these formats. As far as possible, the theory is developed for SOS with features like predicates and negative premises.
Relational Properties of Domains
- Information and Computation
, 1996
"... New tools are presented for reasoning about properties of recursively defined domains. We work within a general, category-theoretic framework for various notions of `relation' on domains and for actions of domain constructors on relations. Freyd's analysis of recursive types in terms of a ..."
Abstract
-
Cited by 115 (6 self)
- Add to MetaCart
(Show Context)
New tools are presented for reasoning about properties of recursively defined domains. We work within a general, category-theoretic framework for various notions of `relation' on domains and for actions of domain constructors on relations. Freyd's analysis of recursive types in terms of a property of mixed initiality/finality is transferred to a corresponding property of invariant relations. The existence of invariant relations is proved under completeness assumptions about the notion of relation. We show how this leads to simpler proofs of the computational adequacy of denotational semantics for functional programming languages with user-declared datatypes. We show how the initiality/finality property of invariant relations can be specialized to yield an induction principle for admissible subsets of recursively defined domains, generalizing the principle of structural induction for inductively defined sets. We also show how the initiality /finality property gives rise to the co-induct...
On the Bisimulation Proof Method
- JOURNAL OF MATHEMATICAL STRUCTURES IN COMPUTER SCIENCE
, 1994
"... The most popular method for establishing bisimilarities among processes is to exhibit bisimulation relations. By definition, R is a bisimulation relation if R progresses to R itself, i.e., pairs of processes in R can match each other's actions and their derivatives are again in R. We study gen ..."
Abstract
-
Cited by 106 (7 self)
- Add to MetaCart
The most popular method for establishing bisimilarities among processes is to exhibit bisimulation relations. By definition, R is a bisimulation relation if R progresses to R itself, i.e., pairs of processes in R can match each other's actions and their derivatives are again in R. We study generalisations of the method aimed at reducing the size of the relations to exhibit and hence relieving the proof work needed to establish bisimilarity results. We allow a relation R to progress to a different relation F(R), where F is a function on relations. Functions which can be safely used in this way (i.e., such that if R progresses to F(R), then R only includes pairs of bisimilar processes) are sound. We give a simple condition which ensures soundness. We show that the class of sound functions contains non-trivial functions and we study the closure properties of the class w.r.t. various important function constructors, like composition, union and iteration. These properties allow us to cons...
On the Foundations of Final Semantics: Non-Standard Sets, Metric Spaces, Partial Orders
- PROCEEDINGS OF THE REX WORKSHOP ON SEMANTICS: FOUNDATIONS AND APPLICATIONS, VOLUME 666 OF LECTURE NOTES IN COMPUTER SCIENCE
, 1998
"... Canonical solutions of domain equations are shown to be final coalgebras, not only in a category of non-standard sets (as already known), but also in categories of metric spaces and partial orders. Coalgebras are simple categorical structures generalizing the notion of post-fixed point. They are ..."
Abstract
-
Cited by 51 (9 self)
- Add to MetaCart
(Show Context)
Canonical solutions of domain equations are shown to be final coalgebras, not only in a category of non-standard sets (as already known), but also in categories of metric spaces and partial orders. Coalgebras are simple categorical structures generalizing the notion of post-fixed point. They are also used here for giving a new comprehensive presentation of the (still) non-standard theory of non-well-founded sets (as non-standard sets are usually called). This paper is meant to provide a basis to a more general project aiming at a full exploitation of the finality of the domains in the semantics of programming languages --- concurrent ones among them. Such a final semantics enjoys uniformity and generality. For instance, semantic observational equivalences like bisimulation can be derived as instances of a single `coalgebraic' definition (introduced elsewhere), which is parametric of the functor appearing in the domain equation. Some properties of this general form of equivalence are also studied in this paper.