563 research outputs found
Structural Operational Semantics for Stochastic Process Calculi
A syntactic framework called SGSOS, for defining well-behaved Markovian stochastic transition systems, is introduced by analogy to the GSOS congruence format for nondeterministic processes. Stochastic bisimilarity is guaranteed a congruence for systems defined by SGSOS rules. Associativity of parallel composition in stochastic process algebras is also studied within the SGSOS framework
Causality in the Semantics of Esterel: Revisited
We re-examine the challenges concerning causality in the semantics of Esterel
and show that they pertain to the known issues in the semantics of Structured
Operational Semantics with negative premises. We show that the solutions
offered for the semantics of SOS also provide answers to the semantic
challenges of Esterel and that they satisfy the intuitive requirements set by
the language designers
Analysis of Boolean Equation Systems through Structure Graphs
We analyse the problem of solving Boolean equation systems through the use of
structure graphs. The latter are obtained through an elegant set of
Plotkin-style deduction rules. Our main contribution is that we show that
equation systems with bisimilar structure graphs have the same solution. We
show that our work conservatively extends earlier work, conducted by Keiren and
Willemse, in which dependency graphs were used to analyse a subclass of Boolean
equation systems, viz., equation systems in standard recursive form. We
illustrate our approach by a small example, demonstrating the effect of
simplifying an equation system through minimisation of its structure graph
Learning nominal automata
We present an Angluin-style algorithm to learn nominal automata, which are acceptors of languages over infinite (structured) alphabets. The abstract approach we take allows us to seamlessly extend known variations of the algorithm to this new setting. In particular we can learn a subclass of nominal non-deterministic automata. An implementation using a recently developed Haskell library for nominal computation is provided for preliminary experiments
Layer by layer - Combining Monads
We develop a method to incrementally construct programming languages. Our
approach is categorical: each layer of the language is described as a monad.
Our method either (i) concretely builds a distributive law between two monads,
i.e. layers of the language, which then provides a monad structure to the
composition of layers, or (ii) identifies precisely the algebraic obstacles to
the existence of a distributive law and gives a best approximant language. The
running example will involve three layers: a basic imperative language enriched
first by adding non-determinism and then probabilistic choice. The first
extension works seamlessly, but the second encounters an obstacle, which
results in a best approximant language structurally very similar to the
probabilistic network specification language ProbNetKAT
Rate-Based Transition Systems for Stochastic Process Calculi
A variant of Rate Transition Systems (RTS), proposed by Klin and Sassone, is introduced and used as the basic model for defining stochastic behaviour of processes. The transition relation used in our variant associates to each process, for each action, the set of possible futures paired with a measure indicating their rates. We show how RTS can be used for providing the operational semantics of stochastic extensions of classical formalisms, namely CSP and CCS. We also show that our semantics for stochastic CCS guarantees associativity of parallel composition. Similarly, in contrast with the original definition by Priami, we argue that a semantics for stochastic π-calculus can be provided that guarantees associativity of parallel composition
RPO, Second-order Contexts, and Lambda-calculus
First, we extend Leifer-Milner RPO theory, by giving general conditions to
obtain IPO labelled transition systems (and bisimilarities) with a reduced set
of transitions, and possibly finitely branching. Moreover, we study the weak
variant of Leifer-Milner theory, by giving general conditions under which the
weak bisimilarity is a congruence. Then, we apply such extended RPO technique
to the lambda-calculus, endowed with lazy and call by value reduction
strategies.
We show that, contrary to process calculi, one can deal directly with the
lambda-calculus syntax and apply Leifer-Milner technique to a category of
contexts, provided that we work in the framework of weak bisimilarities.
However, even in the case of the transition system with minimal contexts, the
resulting bisimilarity is infinitely branching, due to the fact that, in
standard context categories, parametric rules such as the beta-rule can be
represented only by infinitely many ground rules.
To overcome this problem, we introduce the general notion of second-order
context category. We show that, by carrying out the RPO construction in this
setting, the lazy observational equivalence can be captured as a weak
bisimilarity equivalence on a finitely branching transition system. This result
is achieved by considering an encoding of lambda-calculus in Combinatory Logic.Comment: 35 pages, published in Logical Methods in Computer Scienc
Learning automata with side-effects
Automata learning has been successfully applied in the verification of hardware and software. The size of the automaton model learned is a bottleneck for scalability, and hence optimizations that enable learning of compact representations are important. This paper exploits monads, both as a mathematical structure and a programming construct, to design and prove correct a wide class of such optimizations. Monads enable the development of a new learning algorithm and correctness proofs, building upon a general framework for automata learning based on category theory. The new algorithm is parametric on a monad, which provides a rich algebraic structure to capture non-determinism and other side-effects. We show that this allows us to uniformly capture existing algorithms, develop new ones, and add optimizations
- …