Results 1 - 10
of
46
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
Games and Full Completeness for Multiplicative Linear Logic
- JOURNAL OF SYMBOLIC LOGIC
, 1994
"... We present a game semantics for Linear Logic, in which formulas denote games and proofs denote winning strategies. We show that our semantics yields a categorical model of Linear Logic and prove full completeness for Multiplicative Linear Logic with the MIX rule: every winning strategy is the den ..."
Abstract
-
Cited by 243 (26 self)
- Add to MetaCart
We present a game semantics for Linear Logic, in which formulas denote games and proofs denote winning strategies. We show that our semantics yields a categorical model of Linear Logic and prove full completeness for Multiplicative Linear Logic with the MIX rule: every winning strategy is the denotation of a unique cut-free proof net. A key role is played by the notion of history-free strategy; strong connections are made between history-free strategies and the Geometry of Interaction. Our semantics incorporates a natural notion of polarity, leading to a refined treatment of the additives. We make comparisons with related work by Joyal, Blass et al.
The Denotational Semantics of Programming Languages
, 1976
"... This paper is a tutorial introduction to the theory of programming language semantics developed by D. Scott and C. Strachey. The application of the theory to formal language specification is demonstrated and other applications are surveyed. The first language considered, LOOP, is very elementary and ..."
Abstract
-
Cited by 195 (0 self)
- Add to MetaCart
This paper is a tutorial introduction to the theory of programming language semantics developed by D. Scott and C. Strachey. The application of the theory to formal language specification is demonstrated and other applications are surveyed. The first language considered, LOOP, is very elementary and its definition merely introduces the notation and methodology of the approach. Then the semantic concepts of environments, stores, and continuations are introduced to model classes of programming language features and the underlying mathematical theory of computation due to Scott is motivated and outlined. Finally, the paper presents a formal definition of the language GEDANKEN.
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
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.
Linearity, Sharing and State: a fully abstract game semantics for Idealized Algol with active expressions
- ALGOL-LIKE LANGUAGES
, 1997
"... The manipulation of objects with state which changes over time is allpervasive in computing. Perhaps the simplest example of such objects are the program variables of classical imperative languages. An important strand of work within the study of such languages, pioneered by John Reynolds, focusses ..."
Abstract
-
Cited by 129 (21 self)
- Add to MetaCart
The manipulation of objects with state which changes over time is allpervasive in computing. Perhaps the simplest example of such objects are the program variables of classical imperative languages. An important strand of work within the study of such languages, pioneered by John Reynolds, focusses on "Idealized Algol", an elegant synthesis of imperative and functional features. We present a novel semantics for Idealized Algol using games, which is quite unlike traditional denotational models of state. The model takes into account the irreversibility of changes in state, and makes explicit the difference between copying and sharing of entities. As a formal measure of the accuracy of our model, we obtain a full abstraction theorem for Idealized Algol with active expressions.
A brief history of process algebra
- THEOR. COMPUT. SCI
, 2004
"... This note addresses the history of process algebra as an area of research in concurrency theory, the theory of parallel and distributed systems in computer science. Origins are traced back to the early seventies of the twentieth century, and developments since that time are sketched. The author giv ..."
Abstract
-
Cited by 84 (1 self)
- Add to MetaCart
(Show Context)
This note addresses the history of process algebra as an area of research in concurrency theory, the theory of parallel and distributed systems in computer science. Origins are traced back to the early seventies of the twentieth century, and developments since that time are sketched. The author gives his personal views on these matters. He also considers the present situation, and states some challenges for the future.
Applications of the Laws for Communicating Parallel Processes
- IFIP Working Conf. on the Formal Desc. of Prog. Concepts
, 1977
"... by ..."
Geometry of Interaction and Linear Combinatory Algebras
, 2000
"... this paper was quite di#erent, stemming from the axiomatics of categories of tangles (although the authors were aware of possible connections to iteration theories. In fact, similar axiomatics in the symmetric case, motivated by flowcharts and "flownomials" had been developed some years ea ..."
Abstract
-
Cited by 61 (10 self)
- Add to MetaCart
this paper was quite di#erent, stemming from the axiomatics of categories of tangles (although the authors were aware of possible connections to iteration theories. In fact, similar axiomatics in the symmetric case, motivated by flowcharts and "flownomials" had been developed some years earlier by Stefanescu (Stefanescu 2000).) However, the first author realized, following a stimulating discussion with Gordon Plotkin, that traced monoidal categories provided a common denominator for the axiomatics of both the Girard-style and Abramsky-Jagadeesan-style versions of the Geometry of Interaction, at the basic level of the multiplicatives. This insight was presented in (Abramsky 1996), in which Girard-style GoI was dubbed "particle-style", since it concerns information particles or tokens flowing around a network, while the Abramsky-Jagadeesan style GoI was dubbed "wave-style", since it concerns the evolution of a global information state or "wave". Formally, this distinction is based on whether the tensor product (i.e. the symmetric monoidal structure) in the underlying category is interpreted as a coproduct (particle style) or as a product (wave style). This computational distinction between coproduct and product interpretations of the same underlying network geometry turned out to have been partially anticipated, in a rather di#erent context, in a pioneering paper by E. S. Bainbridge (Bainbridge 1976), as observed by Dusko Pavlovic. These two forms of interpretation, and ways of combining them, have also been studied recently in (Stefanescu 2000). He uses the terminology "additive" for coproduct-based (i.e. our "particle-style") and "multiplicative" for product-based (i.e. our "wave-style"); this is not suitable for our purposes, because of the clash with Linear Logic term...
Interactive Foundations of Computing
, 1997
"... : The claim that interactive systems have richer behavior than algorithms is surprisingly easy to prove: Turing machines cannot model interaction machines because: interaction is not expressible by a finite initial input string. Interaction machines extend the Chomsky hierarchy, are modeled by inte ..."
Abstract
-
Cited by 59 (7 self)
- Add to MetaCart
: The claim that interactive systems have richer behavior than algorithms is surprisingly easy to prove: Turing machines cannot model interaction machines because: interaction is not expressible by a finite initial input string. Interaction machines extend the Chomsky hierarchy, are modeled by interaction grammars, and precisely capture fuzzy concepts like open systems and empirical computer science. Part I of this paper examines extensions to interactive models for algorithms, machines, grammars, and semantics, while part II considers the expressiveness of different forms of interaction. Interactive identity machines are already more powerful than Turing machines, while noninteractive parallelism and distribution are algorithmic. The extension of Turing to interaction machines parallels that of the lambda to the pi calculus, but the ability to model shared state allows interaction machines to express more powerful behavior than calculi. Asynchronous and nonserializable interaction ar...
Information-Flow Security for Interactive Programs
"... Interactive programs allow users to engage in input and output throughout execution. The ubiquity of such programs motivates the development of models for reasoning about their information-flow security, yet no such models seem to exist for imperative programming languages. Further, existing langua ..."
Abstract
-
Cited by 44 (14 self)
- Add to MetaCart
Interactive programs allow users to engage in input and output throughout execution. The ubiquity of such programs motivates the development of models for reasoning about their information-flow security, yet no such models seem to exist for imperative programming languages. Further, existing language-based security conditions founded on noninteractive models permit insecure information flows in interactive imperative programs. This paper formulates new strategybased information-flow security conditions for a simple imperative programming language that includes input and output operators. The semantics of the language enables a fine-grained approach to the resolution of nondeterministic choices. The security conditions leverage this approach to prohibit refinement attacks while still permitting observable nondeterminism. Extending the language with probabilistic choice yields a corresponding definition of probabilistic noninterference. A soundness theorem demonstrates the feasibility of statically enforcing the security conditions via a simple type system. These results constitute a step toward understanding and enforcing information-flow security in real-world programming languages, which include similar input and output operators.