Results 1 - 10
of
10
A game semantics of the asynchronous π-calculus
- In Proceedings of 16th CONCUR
, 2005
"... Abstract. This paper studies the denotational semantics of the typed asynchronous π-calculus. We describe a simple game semantics of this language, placing it within a rich hierarchy of games models for programming languages, A key element of our account is the identification of suitable categorical ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
Abstract. This paper studies the denotational semantics of the typed asynchronous π-calculus. We describe a simple game semantics of this language, placing it within a rich hierarchy of games models for programming languages, A key element of our account is the identification of suitable categorical structures for describing the interpretation of types and terms at an abstract level. It is based on the notion of closed Freyd category, establishing a connection between our semantics, and that of the λ-calculus. This structure is also used to define a trace operator, with which name binding is interpreted. We then show that our categorical characterization is sufficient to prove a weak soundness result. Another theme of the paper is the correspondence between justified sequences, on which our model is based, and traces in a labelled transition system in which only bound names are passed. We show that the denotations of processes are equivalent, via this correspondence, to their sets of traces. These results are used to show that the games model is fully abstract with respect to may-equivalence. 1
A game semantics of higher-order concurrency
- Proc. FSTTCS ’06, number 4337 in LNCS
, 2006
"... Abstract. We describe a denotational (game) semantics for a call-byvalue functional language with multiple threads of control, which may communicate values of general type on locally declared channels. This develops previous work which interpreted freshly generated names in a category of games acted ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Abstract. We describe a denotational (game) semantics for a call-byvalue functional language with multiple threads of control, which may communicate values of general type on locally declared channels. This develops previous work which interpreted freshly generated names in a category of games acted upon by the group of natural number automorphisms, by showing how names may be associated with “dependent arenas ” in which interaction between strategies, corresponding to asynchronous communication on named channels, may occur. We describe a model of the call-by-value λ-calculus (a closed Freyd category) based on these arenas, and use this as the basis for interpreting our language. We prove that the semantics is fully abstract with respect to may-testing using a correspondence between channel and function types based on the “triggering ” representation of procedure-passing in terms of name-passing. 1
Bad variables under control
"... Abstract. We give a fully abstract game model for Idealized Algol with non-local control flow. In contrast to most previous papers on game semantics, we do not need to include the bad-variable constructor mkvar to obtain full abstraction. Using the model we show that, unlike in the “control-free ” c ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
Abstract. We give a fully abstract game model for Idealized Algol with non-local control flow. In contrast to most previous papers on game semantics, we do not need to include the bad-variable constructor mkvar to obtain full abstraction. Using the model we show that, unlike in the “control-free ” case, the presence of mkvar does affect observational equivalence. We conclude by discussing the effect of mkvar on nondeterministic and probabilistic variants of Idealized Algol. 1
Computing with Capsules
, 2011
"... Capsules provide a clean algebraic representation of the state of a computation in higherorder functional and imperative languages. They play the same role as closures or heap- or stack-allocated environments but are much simpler. A capsule is essentially a finite coalgebraic representation of a reg ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Capsules provide a clean algebraic representation of the state of a computation in higherorder functional and imperative languages. They play the same role as closures or heap- or stack-allocated environments but are much simpler. A capsule is essentially a finite coalgebraic representation of a regular closed λ-coterm. One can give an operational semantics based on capsules for a higher-order programming language with functional and imperative features, including mutable bindings. Lexical scoping is captured purely algebraically without stacks, heaps, or closures. All operations of interest are typable with simple types, yet the language is Turing complete. Recursive functions are represented directly as capsules without the need for unnatural and untypable fixpoint combinators. 1
Sequentiality and the cps semantics of fresh names
- In Proceedings of MFPS ’07, number 173 in ENTCS
, 2007
"... We investigate the domain-theoretic denotational semantics of a CPS CPS translation from the nu-calculus with first-class continuations. We describe a notion of “FM-categorical ” model for our calculus, with a simple interpretation of name generation due to Shinwell and Pitts. We show that full abst ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
We investigate the domain-theoretic denotational semantics of a CPS CPS translation from the nu-calculus with first-class continuations. We describe a notion of “FM-categorical ” model for our calculus, with a simple interpretation of name generation due to Shinwell and Pitts. We show that full abstraction fails (at order two) in the simplest instance of such a model (FM-cpos) because of the presence of parallel elements. Accordingly, we define a sequential model — FM-biorders, based on “bistable up to order four (our main result), but that full abstraction fails at order five. 1
Interpreting localized computational effects using operators of higher type (extended abstract)
"... ..."
Relational Semantics for Higher-Order Functional Programs
"... Much work has been done on the semantics of programs with local state. Most of this work involves complex storage modeling with pointers and memory cells, complicated categorical constructions, and reasoning in the presence of context. We show how a relatively simple relational semantics can be ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Much work has been done on the semantics of programs with local state. Most of this work involves complex storage modeling with pointers and memory cells, complicated categorical constructions, and reasoning in the presence of context. We show how a relatively simple relational semantics can be used to avoid these complications. We provide a natural relational semantics for a programming language with higherorder functions. We define a purely compositional semantics based on binary and ternary relations such that all contextual considerations are completely encapsulated in the state. We show several equivalence proofs using this semantics based on examples of Meyer and Sieber (1988).
Relational semantics for higher-order programs
- Proc. 8th Int. Conf. Mathematics of Program Construction (MPC’06
, 2006
"... Abstract. Most previous work on the semantics of higher-order programs with local state involves complex storage modeling with pointers and memory cells, complicated categorical constructions, or reasoning in the presence of context. In this paper we show how a relatively simple relational semantics ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Abstract. Most previous work on the semantics of higher-order programs with local state involves complex storage modeling with pointers and memory cells, complicated categorical constructions, or reasoning in the presence of context. In this paper we show how a relatively simple relational semantics can be used to avoid these complications. We provide a natural relational semantics for a programming language with higher-order functions. The semantics is purely compositional, with all contextual considerations completely encapsulated in the state. We show several equivalence proofs using this semantics based on examples of Meyer and Sieber (1988). 1
Oracle game semantics for the nu-calculus
"... The long-standing problem of giving fully abstract semantics to the nu-calculus have been solved only recently with game models à la Hyland-Ong in the universe of Fraenkel-Mostowski sets. However, these models are still quite complicated, mainly because they aim to ensure at once both the equivarian ..."
Abstract
- Add to MetaCart
The long-standing problem of giving fully abstract semantics to the nu-calculus have been solved only recently with game models à la Hyland-Ong in the universe of Fraenkel-Mostowski sets. However, these models are still quite complicated, mainly because they aim to ensure at once both the equivariance of strategies, and the possibility of having strategies generating new names. In this paper, we present an alternative, and somehow simpler, game semantics for the nu-calculus, endorsing the “object-oriented” view of references. The idea is to deal first with equivariance, and then with name generation. More precisely, we define a game model where terms are interpreted by (equivariant) strategies parametrized by some oracle, which can be seen as an “external supplier” of fresh names to be interrogated on the need. The oracle is provided at a second stage, when a model of complete strategies is defined by means of an extensional equivalence.

