Results 1  10
of
53
An Object Calculus for Asynchronous Communication
 Proceedings of the European Conference on ObjectOriented Programming (ECOOP
, 1991
"... This paper presents a formal system based on the notion of objects and asynchronous communication. Built on Milner's work on ßcalculus, the communication primitive of the formal system is purely asynchronous, which makes it unique among various concurrency formalisms. Computationally this resu ..."
Abstract

Cited by 392 (34 self)
 Add to MetaCart
(Show Context)
This paper presents a formal system based on the notion of objects and asynchronous communication. Built on Milner's work on ßcalculus, the communication primitive of the formal system is purely asynchronous, which makes it unique among various concurrency formalisms. Computationally this results in a consistent reduction of Milner's calculus, while retaining the same expressive power. Seen semantically asynchronous communication induces a surprisingly different framework where bisimulation is strictly more general than its synchronous counterpart. This paper shows basic construction of the formal system along with several illustrative examples. 1 Introduction The formal system introduced in this paper is intended to accomplish two purposes. First, it provides a simple and rigorous formalism which encapsulates essential features of concurrent objectorientation [26, 25]. Being successful as a programming methodology for dynamic concurrent computing, its theoretical contents are far f...
On Asynchronous Communication Semantics
, 1992
"... This paper presents some results concerning equational theories for an elementary calculus based on a fragment of Milner's ßcalculus. The system is interesting because it realises asynchronous message passing not by extending but reducing the original fragment, while preserving the computation ..."
Abstract

Cited by 75 (3 self)
 Add to MetaCart
This paper presents some results concerning equational theories for an elementary calculus based on a fragment of Milner's ßcalculus. The system is interesting because it realises asynchronous message passing not by extending but reducing the original fragment, while preserving the computational power. The bisimulation based on a novel asynchronous transition system is introduced and studied. Presented results include congruence of the bisimilarity for the calculus, its relationship with two other asynchronous theories based on traces and failures, strict inclusion of its synchronous counterpart in the asynchronous theory, and the method called the I completion that transforms two asynchronously bisimilar terms into synchronously bisimilar ones. 1 Introduction This paper presents some results concerning equational theories for an elementary calculus based on a fragment of Milner's ßcalculus [22]. The calculus, which first appeared in its present form in [12], expresses asynchronous...
Categorical Semantics Of Parallel Program Design
, 1997
"... We formalise, using Category Theory, modularisation techniques for parallel and distributed systems based on the notion of superposition, showing that parallel program design obeys the "universal laws" formulated by J.Goguen for General Systems Theory, as well as other algebraic propertie ..."
Abstract

Cited by 33 (12 self)
 Add to MetaCart
We formalise, using Category Theory, modularisation techniques for parallel and distributed systems based on the notion of superposition, showing that parallel program design obeys the "universal laws" formulated by J.Goguen for General Systems Theory, as well as other algebraic properties of modularity formulated for Specification Theory. The resulting categorical formalisation unifies the different notions of superposition that have been proposed in the literature and clarifies their algebraic properties with respect to modularisation. It also suggests ways of extending or revising existing languages in order to provide higher levels of reusability, modularity and incrementality in system design. 1 Introduction The role of Category Theory in supporting the definition of 'scientific laws' of system modularisation and composition has been recognised since the early 70s when J.Goguen proposed the use of categorical techniques in General Systems Theory for unifying a variety of notion...
Proof of Correctness of Object Representations
"... This paper presents an algebraic account of implementation that is applicable to the object paradigm. The key to its applicability is the notion of state: objects have local states that are observable only through their outputs. That is, objects may be viewed as abstract machines with hidden local s ..."
Abstract

Cited by 27 (15 self)
 Add to MetaCart
This paper presents an algebraic account of implementation that is applicable to the object paradigm. The key to its applicability is the notion of state: objects have local states that are observable only through their outputs. That is, objects may be viewed as abstract machines with hidden local state (as in [9]). Consequently, a correct implementation need only have the required visible behaviour. We use hidden order sorted algebra to formalise the object paradigm [4, 5, 8]. Advantages of an algebraic approach include a high level of intellectual rigour, a large body of supporting mathematics, and simple, efficient proofs using only equational logic. A wide variety of extensions to equational logic have been developed to treat various programming features, while preserving its essential simplicity. For example, order sorted equational logic uses a notion of subsort to treat computations that may raise exceptions or fail to terminate. Hidden sorted logic extends standard equational logic to capture an important distinction between immutable data types, such as booleans and integers, and mutable objects, such as program variables and database entities. The terms abstract data types and abstract object classes refer to these two kinds of entity. The former represent `visible' data values; the latter represent data stored in a hidden state. In hidden sorted equational logic, an equation of hidden sort need not be satisfied in the usual sense, but only up to observability, in that only its visible consequences need hold. Thus, hidden sorted logic allows greater freedom in implementations. The simplicity of the underlying logic is important, because we want a tractable
Proving Correctness Of Refinement And Implementation
, 1996
"... The notions of state and observable behaviour are fundamental to many areas of computer science. Hidden sorted algebra, an extension of many sorted algebra, captures these notions through hidden sorts and the behavioural satisfaction of equations. This makes it a powerful formalisation of abstract m ..."
Abstract

Cited by 27 (4 self)
 Add to MetaCart
The notions of state and observable behaviour are fundamental to many areas of computer science. Hidden sorted algebra, an extension of many sorted algebra, captures these notions through hidden sorts and the behavioural satisfaction of equations. This makes it a powerful formalisation of abstract machines, and many results suggest that it is also suitable for the semantics of the object paradigm. Another extension of many sorted algebra, namely order sorted algebra, has proved useful in system specification and prototyping because of the way it handles subtypes and errors. The combination of these two algebraic approaches, hidden order sorted algebra, has also been proposed as a foundation for object paradigm, and has much promise as a foundation for Software Engineering. This paper extends recent work on hidden order sorted algebra by investigating the refinement and implementation of hidden order sorted specifications. We present definitions of refinement and implementation for suc...
HYPERPROGRAMMING: A Formal Approach to Software Environments
 In Proceedings, Symposium on Formal Approaches to Software Environment Technology. Joint System Development Corporation
, 1990
"... : Hyperprogramming is an emerging semanticsbased technique for the integration of diverse features of programming environments, in particular, rapid prototyping and formal methods. This approach generalizes the notion of module to that of module cluster , which is an association around a central f ..."
Abstract

Cited by 21 (14 self)
 Add to MetaCart
(Show Context)
: Hyperprogramming is an emerging semanticsbased technique for the integration of diverse features of programming environments, in particular, rapid prototyping and formal methods. This approach generalizes the notion of module to that of module cluster , which is an association around a central formal specification of various items of programming information, such as interface, source code, compiled code, rapid prototypes, formal proofs, test cases, performance estimates, documentation, history and accounting information. This allows all information items to be composed at the same time, by evaluating a master text called a module expression, which tells how to compose and transform module clusters. Hyperprogramming thus integrates design, specification, prototyping, coding, configuration, proof, testing, documentation and accounting into a single framework significantly generalizing both Ada generics and Unix 1 make. Hyperprogramming can also support a variety of different progra...
A Categorial Approach to the Combination of Logics
, 1999
"... LOGICAL SYSTEMS: LOCAL AND GLOBAL LOGICS The concept of possibletranslations semantics (also called nondeterministic semantics) was introduced and discussed in (Carnielli (1990)) and (Carnielli (forthcoming)) as a new semantic approach to general logical systems, based on the idea of defining new ..."
Abstract

Cited by 14 (7 self)
 Add to MetaCart
LOGICAL SYSTEMS: LOCAL AND GLOBAL LOGICS The concept of possibletranslations semantics (also called nondeterministic semantics) was introduced and discussed in (Carnielli (1990)) and (Carnielli (forthcoming)) as a new semantic approach to general logical systems, based on the idea of defining new forcing relations combining simple semantics by means of translations. Although several ideas on combinations of logics can be found in the literature, as described for example in (Blackburn & Rijke (1997)) and (Caleiro, Sernadas & Sernadas (manuscript)), this approach offers a different perspective to the question, which leads to new semantics for general logics, including several manyvalued, paracomplete and paraconsistent logics. A special form of possibletranslations semantics called society semantics, which is particularly apt for manyvalued logics, has been presented in (Carnielli & LimaMarques (1999)).
Concepts of ObjectOrientation
 In Proc. of the 2nd Workshop of &quot;Informationssysteme und Kunstliche Intelligenz: Modellierung
, 1992
"... An object is a unit of structure and behavior; it has an identity which persists through change; objects communicate with each other; they are classified by object types, collected into object classes, related by inheritance, and composed to form complex objects. In the first part of the paper, this ..."
Abstract

Cited by 13 (10 self)
 Add to MetaCart
An object is a unit of structure and behavior; it has an identity which persists through change; objects communicate with each other; they are classified by object types, collected into object classes, related by inheritance, and composed to form complex objects. In the first part of the paper, this rich world of concepts and constructions is explained in an informal but systematic way, independent of any language or system. In the second part, features of an object specification language are outline which incorporate most of these concepts and constructions. 1 Introduction There are many languages, systems, methods and approaches in computing which call themselves "objectoriented", among them objectoriented programming languages like SmallTalk [GR83], C++ [St86] and Eiffel [Me88], objectoriented database systems like GemStone [BOS91], O 2 [De91], IRIS [Fi87] and ORION [Ki88], and objectoriented system development methods like GOOD [SS86], MOOD [Ke88] and HOOD [Hei88]. Highl...
Applications of sheaf cohomology and exact sequences to network coding, preprint
, 2011
"... Abstract—Sheaf cohomology is a mathematical tool for collating local algebraic data into global structures. The purpose of this paper is to apply sheaf theory into network coding problems. After the definition of sheaves, we define so called network coding sheaves for a general multi source network ..."
Abstract

Cited by 12 (2 self)
 Add to MetaCart
(Show Context)
Abstract—Sheaf cohomology is a mathematical tool for collating local algebraic data into global structures. The purpose of this paper is to apply sheaf theory into network coding problems. After the definition of sheaves, we define so called network coding sheaves for a general multi source network coding scenario, and consider various forms of sheaf cohomologies. The main theorem states that 0th network coding sheaf cohomology is equivalent to information flows for the network coding. Then, this theorem is applied to several practical problems in network codings such as maxflow bounds, global extendability, network robustness, and data merging, by using some of the standard exact sequences of homological algebra. I.
Functorial data migration
 Information and Computation 2012, DOI: 10.1016/j.ic.2012.05.001. ePrint available: http://arxiv.org/abs/1009.1166
"... ar ..."