Results 21  30
of
61
A Functional View of Join
, 1999
"... Join calculus, usually presented as a process calculus, is suitable as a foundation of both sequential and concurrent programming. We give a new operational semantics of join calculus, expressed as a reduction system with a single reduction rule similar to # reduction in lambda calculus. We also ..."
Abstract

Cited by 8 (0 self)
 Add to MetaCart
Join calculus, usually presented as a process calculus, is suitable as a foundation of both sequential and concurrent programming. We give a new operational semantics of join calculus, expressed as a reduction system with a single reduction rule similar to # reduction in lambda calculus. We also introduce a new Hindley/Milner style type system for join calculus. Compared to previous work, the type system gives more accurate types of composite and mutually recursive definitions. The type system's soundness is established by showing that our reduction rule keeps typings invariant. We present an algorithm for type inference and show its soundness and completeness.
Relating Operational and Denotational Semantics for Input/Output Effects
, 1999
"... We study the longstanding problem of semantics for input/output (I/O) expressed using sideeffects. Our vehicle is a small higherorder imperative language, with operations for interactive character I/O and based on ML syntax. Unlike previous theories, we present both operational and denotational se ..."
Abstract

Cited by 7 (3 self)
 Add to MetaCart
We study the longstanding problem of semantics for input/output (I/O) expressed using sideeffects. Our vehicle is a small higherorder imperative language, with operations for interactive character I/O and based on ML syntax. Unlike previous theories, we present both operational and denotational semantics for I/O effects. We use a novel labelled transition system that uniformly expresses both applicative and imperative computation. We make a standard definition of bisimilarity. We prove bisimilarity is a congruence using Howe's method. Next, we define a metalanguage M in which we may give a denotational semantics to O. M generalises Crole and Pitts' FIXlogic by adding in a parameterised recursive datatype, which is used to model I/O. M comes equipped both with an operational semantics and a domaintheoretic semantics in the category CPPO of cppos (bottompointed posets with joins of !chains) and Scott continuous functions. We use the CPPO semantics to prove that M is computationally...
Topological Models for Higher Order Control Flow
 PROCEEDINGS OF THE 9TH INTERNATIONAL CONFERENCE ON MATHEMATICAL FOUNDATIONS OF PROGRAMMING SEMANTICS, VOLUME 802 OF LECTURE NOTES IN COMPUTER SCIENCE
, 1993
"... Semantic models are presented for two simple imperative languages with higher order constructs. In the first language the interesting notion is that of second order assignment x := s, for x a procedure variable and s a statement. The second language extends this idea by a form of higher order commun ..."
Abstract

Cited by 7 (3 self)
 Add to MetaCart
Semantic models are presented for two simple imperative languages with higher order constructs. In the first language the interesting notion is that of second order assignment x := s, for x a procedure variable and s a statement. The second language extends this idea by a form of higher order communication, with statements c ! s and c ? x, for c a channel. We develop operational and denotational models for both languages, and study their relationships. Both in the definitions and the comparisons of the semantic models, convenient use is made of some tools from (metric) topology. The operational models are based on (SOSstyle) transition systems; the denotational definitions use domains specified as solutions of domain equations in a category of 1bounded complete ultrametric spaces. In establishing the connection between the two kinds of models, fruitful use is made of Rutten's processes as terms technique. Another new tool consists in the use of metric transition systems, with a metric defined on the configurations of the system. In addition to higher order programming notions, we use higher order definitional techniques, e.g., in defining the semantic mappings as fixed points of (contractive) higher order operators. By Banach's theorem, such fixed points are unique, yielding another important proof principle for our paper.
A Hierarchy of SOS Rule Formats
, 2005
"... In 1981 Structural Operational Semantics (SOS) was introduced as a systematic way to define operational semantics of programming languages by a set of rules of a certain shape [62]. Subsequently, the format of SOS rules became the object of study. Using socalled Transition System Specifications (TS ..."
Abstract

Cited by 6 (1 self)
 Add to MetaCart
In 1981 Structural Operational Semantics (SOS) was introduced as a systematic way to define operational semantics of programming languages by a set of rules of a certain shape [62]. Subsequently, the format of SOS rules became the object of study. Using socalled Transition System Specifications (TSS’s) several authors syntactically restricted the format of rules and showed several useful properties about the semantics induced by any TSS adhering to the format. This has resulted in a line of research proposing several syntactical rule formats and associated metatheorems. Properties that are guaranteed by such rule formats range from welldefinedness of the operational semantics and compositionality of behavioral equivalences to security and probabilityrelated issues. In this paper, we provide an initial hierarchy of SOS rules formats and metatheorems formulated around them.
From πcalculus to HigherOrder πcalculus  and back
"... We compare the firstorder and the higherorder paradigms for the representation of mobility in process algebras. The prototypical calculus in the firstorder paradigm is the πcalculus. By generalising its sort mechanism we derive an !order extension, called HigherOrder πcalculus (HOπ). We gi ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
We compare the firstorder and the higherorder paradigms for the representation of mobility in process algebras. The prototypical calculus in the firstorder paradigm is the πcalculus. By generalising its sort mechanism we derive an !order extension, called HigherOrder πcalculus (HOπ). We give examples of its use, including the encoding of calculus. Surprisingly, we show that such an extension does not add expressiveness: Higherorder processes can be faithfully represented at first order. We conclude that the firstorder paradigm, which enjoys a simpler and more intuitive theory, should be taken as basic. Nevertheless, the study of the calculus encodings shows that a higherorder calculus can be very useful for reasoning at a more abstract level.
Description and Verification of Mobile Processes with Graph Rewriting Techniques
"... The aim of this thesis is to describe the semantics of a process calculus by means of hypergraph rewriting, creating a specification mechanism combining modularity of process calculi and locality of graph transformation. Verification of processes is addressed by presenting two methods: barbed congru ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
The aim of this thesis is to describe the semantics of a process calculus by means of hypergraph rewriting, creating a specification mechanism combining modularity of process calculi and locality of graph transformation. Verification of processes is addressed by presenting two methods: barbed congruence for relating processes displaying the same behaviour and generic type systems, forming a central part of this work. Based on existing work in graph rewriting...
Congruence Proofs For Weak Bisimulation on Higherorder Processes: Results for Typed omegaorder Calculi
, 1996
"... Congruence proofs for bisimulation on higherorder process calculi tend to be significantly more complex than their counterparts in firstorder process algebra frameworks. Moreover, a standard technique that allows us to cover strong forms of bisimulation on higherorder calculi seems to fail for th ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
Congruence proofs for bisimulation on higherorder process calculi tend to be significantly more complex than their counterparts in firstorder process algebra frameworks. Moreover, a standard technique that allows us to cover strong forms of bisimulation on higherorder calculi seems to fail for the corresponding weak forms. Similar problems are posed by applicative simulation on calculi and our starting point is a general and elegant technique for solving them that has been invented by Howe. We adapt and extend this technique to prove two new congruence results for !order process calculi. In the first case, where we use a static scoping discipline for action names, we treat a delay variant of late weak context bisimulation; in the second case, where we use a dynamic scoping discipline, we treat an early weak higherorder bisimulation. The present paper supersedes parts of our technical report [BF95], where we have considered secondorder processes.
NewHOPLA— A HigherOrder Process Language with Name Generation
, 2004
"... Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy. See back inner page for a list of recent BRICS Report Series publications. Copies may be obtained by contacting: BRICS ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy. See back inner page for a list of recent BRICS Report Series publications. Copies may be obtained by contacting: BRICS
A Hyperdoctrinal View of Constraint Systems
 In Lecture Notes in Computer Science 666
, 1993
"... We study a relationship between logic and computation via concurrent constraint programming. In previous papers it has been shown how a simple language for specifying asynchronous concurrent processes can be interpreted in terms of constraints. In the present paper we show that the programming inter ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
We study a relationship between logic and computation via concurrent constraint programming. In previous papers it has been shown how a simple language for specifying asynchronous concurrent processes can be interpreted in terms of constraints. In the present paper we show that the programming interpretation via closure operators is intimately related to the logic of the constraints. More precisely we show how the usual hyperdoctrinal description of first order logic can be functorially related to another hyperdoctrine built out of closure operators. The logical connectives map onto constructions on closure operators that turn out to model programming constructs, specifically conjunction becomes parallel composition and existential quantification becomes hiding of local variables. 1 Introduction In this paper we develop a category theoretic view of the relationship between concurrent constraint programming and logic. One may think of this as an explication of the relationship between ...
LabelSelective LambdaCalculus Syntax and Confluence
, 1995
"... . We introduce an extension of calculus, called labelselective  calculus, in which arguments of functions are selected by labels. The set of labels includes numeric positions as well as symbolic keywords. While the latter enjoy free commutation, the former must comply with relative precedence in ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
. We introduce an extension of calculus, called labelselective  calculus, in which arguments of functions are selected by labels. The set of labels includes numeric positions as well as symbolic keywords. While the latter enjoy free commutation, the former must comply with relative precedence in order to preserve currying. This extension of calculus is conservative in the sense that when the set of labels is the singleton f1g, it coincides with calculus. The main result of this paper is that the labelselective calculus is confluent. In other words, argument selection and reduction commute. Keywords. Calculus, record calculus, concurrency, communication. 1 Synopsis Many modern programming languages allow specifying arguments of functions and procedures by symbolic keywords as well as using the traditional and natural numeric positions [16, 12, 4]. Symbolic keywords are usually handled as syntactic sugar and "compiled away" as numeric positions. This is made easy if the langua...