Results 1 - 10
of
10
Game Theoretic Analysis Of Call-By-Value Computation
, 1997
"... . We present a general semantic universe of call-by-value computation based on elements of game semantics, and validate its appropriateness as a semantic universe by the full abstraction result for call-by-value PCF, a generic typed programming language with call-by-value evaluation. The key idea is ..."
Abstract
-
Cited by 57 (20 self)
- Add to MetaCart
. We present a general semantic universe of call-by-value computation based on elements of game semantics, and validate its appropriateness as a semantic universe by the full abstraction result for call-by-value PCF, a generic typed programming language with call-by-value evaluation. The key idea is to consider the distinction between call-by-name and call-by-value as that of the structure of information flow, which determines the basic form of games. In this way the call-by-name computation and call-by-value computation arise as two independent instances of sequential functional computation with distinct algebraic structures. We elucidate the type structures of the universe following the standard categorical framework developed in the context of domain theory. Mutual relationship between the presented category of games and the corresponding call-by-name universe is also clarified. 1. Introduction The call-by-value is a mode of calling procedures widely used in imperative and function...
Games and full abstraction for nondeterministic languages
, 1999
"... Abstract Nondeterminism is a pervasive phenomenon in computation. Often it arises as an emergent property of a complex system, typically as the result of contention for access to shared resources. In such circumstances, we cannot always know, in advance, exactly what will happen. In other circumstan ..."
Abstract
-
Cited by 23 (2 self)
- Add to MetaCart
Abstract Nondeterminism is a pervasive phenomenon in computation. Often it arises as an emergent property of a complex system, typically as the result of contention for access to shared resources. In such circumstances, we cannot always know, in advance, exactly what will happen. In other circumstances, nondeterminism is explicitly introduced as a means of abstracting away from implementation details such as precise command scheduling and control flow. However, the kind of behaviours exhibited by nondeterministic computations can be extremely subtle in comparison to those of their deterministic counterparts and reasoning about such programs is notoriously tricky as a result. It is therefore important to develop semantic tools to improve our understanding of, and aid our reasoning about, such nondeterministic programs. In this thesis, we extend the framework of game semantics to encompass nondeterministic computation. Game semantics is a relatively recent development in denotational semantics; its main novelty is that it views a computation not as a static entity, but rather as a dynamic process of interaction. This perspective makes the theory well-suited to modelling many aspects of computational processes: the original use of game semantics in modelling the simple functional language PCF has subsequently been extended to handle more complex control structures such as references and continuations.
Continuous Functions and Parallel Algorithms on Concrete Data Structures
- IN MFPS'91, L.N.C.S
, 1991
"... We report progress in two closely related lines of research: the semantic study of sequentiality and parallelism, and the development of a theory of intensional semantics. We generalize Kahn and Plotkin's concrete data structures to obtain a cartesian closed category of generalized concrete data str ..."
Abstract
-
Cited by 12 (2 self)
- Add to MetaCart
We report progress in two closely related lines of research: the semantic study of sequentiality and parallelism, and the development of a theory of intensional semantics. We generalize Kahn and Plotkin's concrete data structures to obtain a cartesian closed category of generalized concrete data structures and continuous functions. The generalized framework continues to support a definition of sequential functions. Using this ccc as an extensional framework, we define an intensional framework --- a ccc of generalized concrete data structures and parallel algorithms. This construction is an instance of a more general and more widely applicable category-theoretic approach to intensional semantics, encapsulating a notion of intensional behavior as a computational comonad, and employing the co-Kleisli category as an intensional framework. We discuss the relationship between parallel algorithms and continuous functions, and supply some operational intuition for the parallel algorithms. We s...
Two Techniques for Compiling Lazy Pattern Matching
, 1994
"... In ML style pattern matching, pattern size is not constrained and ambiguous patterns are allowed. This generality leads to a clear and concise programming style but is challenging in the context of lazy evaluation. A first challenge concerns language designers: in lazy ML, the evaluation order of ex ..."
Abstract
-
Cited by 10 (1 self)
- Add to MetaCart
In ML style pattern matching, pattern size is not constrained and ambiguous patterns are allowed. This generality leads to a clear and concise programming style but is challenging in the context of lazy evaluation. A first challenge concerns language designers: in lazy ML, the evaluation order of expressions follows actual data dependencies. That is, only the computations that are needed to produce the final result are performed. Once given a proper (that is, non-ambiguous) semantics, pattern matching should be compiled in a similar spirit: any value matching a given pattern should be recognized by performing only the minimal number of elementary tests needed to do so. This challenge was first met by A. Laville. A second challenge concerns compiler designers. As it stands, Laville's compilation algorithm cannot be incorporated in an actual lazy ML compiler for efficiency and completeness reasons. As a matter of fact, Laville's original algorithm did not fully treat the case of intege...
Compiling Lazy Pattern Matching
- In Proc. of the 1992 conference on Lisp and Functional Programming
, 1992
"... this paper we take a more direct approach: we compile pattern matching on overlapping patterns. We first recall the semantics of lazy pattern matching, as given by A. Laville [5]. Then, we explain our compilation technique as a source to source transformation. Given a set of patterns, several compil ..."
Abstract
-
Cited by 8 (3 self)
- Add to MetaCart
this paper we take a more direct approach: we compile pattern matching on overlapping patterns. We first recall the semantics of lazy pattern matching, as given by A. Laville [5]. Then, we explain our compilation technique as a source to source transformation. Given a set of patterns, several compilations are possible, we prove that they all satisfy a partial correctness
A Cartesian Closed Category of Parallel Algorithms between Scott Domains
, 1991
"... We present a category-theoretic framework for providing intensional semantics of programming languages and establishing connections between semantics given at different levels of intensional detail. We use a comonad to model an abstract notion of computation, and we obtain an intensional category fr ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
We present a category-theoretic framework for providing intensional semantics of programming languages and establishing connections between semantics given at different levels of intensional detail. We use a comonad to model an abstract notion of computation, and we obtain an intensional category from an extensional category by the co-Kleisli construction; thus, while an extensional morphism can be viewed as a function from values to values, an intensional morphism is akin to a function from computations to values. We state a simple category-theoretic result about cartesian closure. We then explore the particular example obtained by taking the extensional category to be Cont, the category of Scott domains with continuous functions as morphisms, with a computation represented as a non-decreasing sequence of values. We refer to morphisms in the resulting intensional category as algorithms. We show that the category Alg of Scott domains with algorithms as morphisms is cartesian closed. We...
Nonexpressibility of Fairness and Signaling
- in "Proceedings, IEEE Foundations of Computer Science", Panangaden
, 1990
"... In this paper we establish new expressiveness results for indeterminate dataflow primitives. We consider split primitives with three differing fairness assumptions and show that they are strictly inequivalent in expressive power. We also show that the ability to announce internal choices enhances th ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
In this paper we establish new expressiveness results for indeterminate dataflow primitives. We consider split primitives with three differing fairness assumptions and show that they are strictly inequivalent in expressive power. We also show that the ability to announce internal choices enhances the expressive power of two of the primitives. These results are proved using a very crude notion of observation and thus apply in any reasonable theory of process equivalence. 1 Introduction Fairness is regarded as an important property of real systems and there is considerable interest in semantic theories and proof systems for reasoning about fairness [12]. In the present paper we examine the relative expressive power of a variety of fairness primitives and prove new inexpressibility results in the context of asynchronous systems. We prove that three different "split" primitives have different expressive power. We also consider the effect of adding signaling to each primitive. By "signalin...
Stable and Sequential Functions on Scott Domains
, 1992
"... The search for a general semantic characterization of sequential functions is motivated by the full abstraction problem for sequential programming languages such as PCF. We present here some new developments towards such a theory of sequentiality. We give a general definition of sequential functions ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
The search for a general semantic characterization of sequential functions is motivated by the full abstraction problem for sequential programming languages such as PCF. We present here some new developments towards such a theory of sequentiality. We give a general definition of sequential functions on Scott domains, characterized by means of a generalized form of topology, based on sequential open sets. Our notion of sequential function coincides with the Kahn-Plotkin notion of sequential function when restricted to distributive concrete domains, and considerably expands the class of domains for which sequential functions may be defined. We show that the sequential functions between two dI-domains, ordered stably, form a dI-domain. The analogous property fails for Kahn-Plotkin sequential functions. Our category of dI-domains and sequential functions is not cartesian closed, because application is not sequential. We attribute this to certain operational assumptions underlying our notio...
Une Cat'egorie Cart'esienne Ferm'ee De Structures R'eparties
"... Introduction Les structures de donn'ees concr`etes (on dira aussi: structures concr`etes ou CDS) [3] et les domaines qu'ils engendrent, appel'es domaines concrets [5] servent `a l"etude s'emantique des notions de calcul s'equentiel [3] et de calcul parall`ele d'eterministe [1]. Ces structures permet ..."
Abstract
- Add to MetaCart
Introduction Les structures de donn'ees concr`etes (on dira aussi: structures concr`etes ou CDS) [3] et les domaines qu'ils engendrent, appel'es domaines concrets [5] servent `a l"etude s'emantique des notions de calcul s'equentiel [3] et de calcul parall`ele d'eterministe [1]. Ces structures permettent la construction de nombreuses cat'egories cart'esiennes ferm'ees (CCC), mod`eles th'eoriques des langages fonctionnels typ'es. Dans cet article nous appliquons la th'eorie des CDS g'en'eralis'ees (gCDS) de Bookes et Geva [1] `a la construction d'une CCC dont les objets-domaines sont des ensembles d"etats de structures de tableaux dont les "cellules", "valeurs" et "'ev'enements" sont 'etiquet'es par des adresses provenant d'un r'eseau fixe d' "indices". La construction utilise la relation d'activation des gCDS comme encodage des d'ependances de donn'ees et donc des communications. Elle engendre des domaines explicitement r'epartis et est pr'eserv'ee par l'exponent
Decomposition of Domains
- University of Pennsylvania
, 1990
"... The problem of decomposing domains into sensible factors is addressed and solved for the case of dI-domains. A decomposition theorem is proved which allows the represention of a large subclass of dI-domains in a product of flat domains. Direct product decompositions of Scott-domains are studied s ..."
Abstract
- Add to MetaCart
The problem of decomposing domains into sensible factors is addressed and solved for the case of dI-domains. A decomposition theorem is proved which allows the represention of a large subclass of dI-domains in a product of flat domains. Direct product decompositions of Scott-domains are studied separately. 1 Introduction This work was initiated by Peter Buneman's interest in generalizing relational databases, see [6]. He --- quite radically --- dismissed the idea that a database should be forced into the format of an n-ary relation. Instead he allowed it to be an arbitrary anti-chain in a Scott-domain. The reason for this was that advanced concepts in database theory, such as `null values', `nested relations', and `complex objects' force one to augment relations and values with a notion of information order. Following Buneman's general approach, the question arises how to define basic database theoretic concepts such as `functional dependency' for anti-chains in Scott-domains. For...

