202 research outputs found
Meta SOS - A Maude Based SOS Meta-Theory Framework
Meta SOS is a software framework designed to integrate the results from the
meta-theory of structural operational semantics (SOS). These results include
deriving semantic properties of language constructs just by syntactically
analyzing their rule-based definition, as well as automatically deriving sound
and ground-complete axiomatizations for languages, when considering a notion of
behavioural equivalence. This paper describes the Meta SOS framework by
blending aspects from the meta-theory of SOS, details on their implementation
in Maude, and running examples.Comment: In Proceedings EXPRESS/SOS 2013, arXiv:1307.690
Robustness of Equations Under Operational Extensions
Sound behavioral equations on open terms may become unsound after
conservative extensions of the underlying operational semantics. Providing
criteria under which such equations are preserved is extremely useful; in
particular, it can avoid the need to repeat proofs when extending the specified
language.
This paper investigates preservation of sound equations for several notions
of bisimilarity on open terms: closed-instance (ci-)bisimilarity and
formal-hypothesis (fh-)bisimilarity, both due to Robert de Simone, and
hypothesis-preserving (hp-)bisimilarity, due to Arend Rensink. For both
fh-bisimilarity and hp-bisimilarity, we prove that arbitrary sound equations on
open terms are preserved by all disjoint extensions which do not add labels. We
also define slight variations of fh- and hp-bisimilarity such that all sound
equations are preserved by arbitrary disjoint extensions. Finally, we give two
sets of syntactic criteria (on equations, resp. operational extensions) and
prove each of them to be sufficient for preserving ci-bisimilarity.Comment: In Proceedings EXPRESS'10, arXiv:1011.601
Bisimilarity of Open Terms in Stream GSOS
Stream GSOS is a specification format for operations and calculi on infinite
sequences. The notion of bisimilarity provides a canonical proof technique for
equivalence of closed terms in such specifications. In this paper, we focus on
open terms, which may contain variables, and which are equivalent whenever they
denote the same stream for every possible instantiation of the variables. Our
main contribution is to capture equivalence of open terms as bisimilarity on
certain Mealy machines, providing a concrete proof technique. Moreover, we
introduce an enhancement of this technique, called bisimulation up-to
substitutions, and show how to combine it with other up-to techniques to obtain
a powerful method for proving equivalence of open terms
The Way We Were: Structural Operational Semantics Research in Perspective
This position paper on the (meta-)theory of Structural Operational Semantic
(SOS) is motivated by the following two questions: (1) Is the (meta-)theory of
SOS dying out as a research field? (2) If so, is it possible to rejuvenate this
field with a redefined purpose?
In this article, we will consider possible answers to those questions by
first analysing the history of the EXPRESS/SOS workshops and the data
concerning the authors and the presentations featured in the editions of those
workshops as well as their subject matters.
The results of our quantitative and qualitative analyses all indicate a
diminishing interest in the theory of SOS as a field of research. Even though
`all good things must come to an end', we strive to finish this position paper
on an upbeat note by addressing our second motivating question with some
optimism. To this end, we use our personal reflections and an analysis of
recent trends in two of the flagship conferences in the field of Programming
Languages (namely POPL and PDLI) to draw some conclusions on possible future
directions that may rejuvenate research on the (meta-)theory of SOS. We hope
that our musings will entice members of the research community to breathe new
life into a field of research that has been kind to three of the authors of
this article.Comment: In Proceedings EXPRESS/SOS2023, arXiv:2309.0578
Bisimulation of Labeled State-to-Function Transition Systems of Stochastic Process Languages
Labeled state-to-function transition systems, FuTS for short, admit multiple
transition schemes from states to functions of finite support over general
semirings. As such they constitute a convenient modeling instrument to deal
with stochastic process languages. In this paper, the notion of bisimulation
induced by a FuTS is proposed and a correspondence result is proven stating
that FuTS-bisimulation coincides with the behavioral equivalence of the
associated functor. As generic examples, the concrete existing equivalences for
the core of the process algebras ACP, PEPA and IMC are related to the
bisimulation of specific FuTS, providing via the correspondence result
coalgebraic justification of the equivalences of these calculi.Comment: In Proceedings ACCAT 2012, arXiv:1208.430
Lean and Full Congruence Formats for Recursion
In this paper I distinguish two (pre)congruence requirements for semantic
equivalences and preorders on processes given as closed terms in a system
description language with a recursion construct. A lean congruence preserves
equivalence when replacing closed subexpressions of a process by equivalent
alternatives. A full congruence moreover allows replacement within a recursive
specification of subexpressions that may contain recursion variables bound
outside of these subexpressions.
I establish that bisimilarity is a lean (pre)congruence for recursion for all
languages with a structural operational semantics in the ntyft/ntyxt format.
Additionally, it is a full congruence for the tyft/tyxt format.Comment: To appear in: Proc. LICS'17, Reykjavik, Iceland, IEE
A Coalgebraic Semantics for Imperative Programming Languages
In the theory of programming languages, one often takes two complementary perspectives. In operational semantics, one defines and reasons about the behaviour of programs; and in denotational semantics, one abstracts away implementation details, and reasons about programs as mathematical objects or denotations. The denotational semantics should be compositional, meaning that denotations of programs are determined by the denotations of their parts. It should also be adequate with respect to operational equivalence: programs with the same denotation should be behaviourally indistinguishable. One often has to prove adequacy and compositionality independently for different languages, and the proofs are often laborious and repetitive. These proofs were provided systematically in the context of process algebras by the mathematical operational semantics framework of Turi and Plotkin – which represented transition systems as coalgebras, and program syntax by free algebras; operational specifications were given by distributive laws of syntax over behaviour. By framing the semantics on this abstract level, one derives denotational and operational semantics which are guaranteed to be adequate and compositional for a wide variety of examples.
However, despite speculation on the possibility, it is hard to apply the framework to programming languages, because one obtains undesirably fine-grained behavioural equivalences, and unconventional notions of operational semantics. Moreover, the behaviour of these languages is often formalised in a different way – such as computational effects, which may be thought of as an interface between programs and external factors such as non-determinism or a variable store; and comodels, or transition systems which implement these effects.
This thesis adapts the mathematical operational semantics framework to provide semantics for various classes of programming languages. After identifying the need for such an adaptation, we show how program behaviour may be characterised by final coalgebras in suitably order- enriched Kleisli categories. We define both operational and denotational semantics, first for languages with syntactic effects, and then for languages with effects and/or comodels given by a Lawvere theory. To ensure adequacy and compositionality, we define concrete and abstract operational rule-formats for these languages, based on the idea of evaluation-in-context; we give syntactic and then categorical proofs that those properties are guaranteed by operational specifications in these rule-formats.Open Acces
A Declarative Validator for GSOS Languages
Rule formats can quickly establish meta-theoretic properties of process
algebras. It is then desirable to identify domain-specific languages (DSLs)
that can easily express rule formats. In prior work, we have developed
Lang-n-Change, a DSL that includes convenient features for browsing language
definitions and retrieving information from them. In this paper, we use
Lang-n-Change to write a validator for the GSOS rule format, and we augment
Lang-n-Change with suitable macros on our way to do so. Our GSOS validator is
concise, and amounts to a few lines of code. We have used it to validate
several concurrency operators as adhering to the GSOS format. Moreover, our
code expresses the restrictions of the format declaratively.Comment: In Proceedings PLACES 2023, arXiv:2304.0543
- …