A Bisimulation-based Method for Proving the Validity of Equations in GSOS Languages (original) (raw)
Related papers
Proving the validity of equations in GSOS languages using rule-matching bisimilarity
Mathematical Structures in Computer Science, 2012
This paper presents a bisimulation-based method for establishing the soundness of equations between terms constructed using operations whose semantics is specified by rules in the GSOS format of Bloom, Istrail and Meyer. The method is inspired by de Simone's FH-bisimilarity and uses transition rules as schematic transitions in a bisimulation-like relation between open terms. The soundness of the method is proven and examples showing its applicability are provided. The proposed bisimulation-based proof method is incomplete, but the article offers some completeness results for restricted classes of GSOS specifications. An extension of the proof method to the setting of GSOS languages with predicates is also offered.
Axiomatizing GSOS with Predicates
Electronic Proceedings in Theoretical Computer Science, 2011
In this paper, we introduce an extension of the GSOS rule format with predicates such as termination, convergence and divergence. For this format we generalize the technique proposed by Aceto, Bloom and Vaandrager for the automatic generation of ground-complete axiomatizations of bisimilarity over GSOS systems. Our procedure is implemented in a tool that receives SOS specifications as input and derives the corresponding axiomatizations automatically. This paves the way to checking strong bisimilarity over process terms by means of theorem-proving techniques.
Towards Automatic Bisimilarity Checking in the Spi Calculus
2002
The spi calculus by Abadi and Gordon, an extension of Robin Milner's π-calculus, is designed to model cryptographic protocols. Classic security properties are easily expressed in spi using the notion of testing equivalence by De Nicola and Hennessy. However, proving processes testing equivalent is a daunting task. Thus framed bisimilarity, a bisimulation method implying testing equivalence, has been proposed by Abadi and Gordon. Unfortunately the definition of framed bisimilarity uses several levels of quantification over infinite domains and is therefore not effective. In this paper we define fenced bisimilarity, a concept similar to framed bisimilarity in which one of these quantifiers has been replaced by an effective condition, and show that fenced bisimilarity coincides with framed bisimilarity.
Axiomatization of Bisimulation Based Relations
2005
The question of when two systems are behaviourally equal has occupied a large part of the literature on verification and has yielded various equivalences (and congruences). These equivalence relations are most useful in comparing systems whose executions are not necessarily finite. An axiomatization of these equivalences gives us both, a nice algebraic handle on processes, and a proof system for checking the equality of two processes. Comparison of efficiency of non-terminating processes like an operating system has been largely untackled. We have presented here, an axiomatization for a certain subset of ordering induced bisimilarities. This axiomatization yields the axiomatization for equivalences like observational equivalence and inefficiency bisimulation as special cases. The axiomatization has been proven to be complete for finite state processes, and can be used as a proof system for checking the equality of systems.
Notions of bisimulation and congruence formats for SOS with data
Information and Computation/information and Control, 2005
While studying the specification of the operational semantics of different programming languages and formalisms, one can observe the following three facts. First, Plotkin’s style of Structural Operational Semantics has become a standard in defining operational semantics. Second, congruence with respect to some notion of bisimilarity is an interesting property for such languages and it is essential in reasoning. Third, there are numerous languages that contain an explicit data part in the state of the operational semantics. The first two facts have resulted in a line of research exploring syntactic formats of operational rules to derive the desired congruence property for free. However, the third point (in combination with the first two) is not sufficiently addressed and there is no standard congruence format for operational semantics with an explicit data state. In this article, we address this problem by studying the implications of the presence of a data state on the notion of bisimilarity. Furthermore, we propose a number of formats for congruence.
Bisimulation as a Logical Relation
ArXiv, 2020
We investigate how various forms of bisimulation can be characterised using the technology of logical relations. The approach taken is that each form of bisimulation corresponds to an algebraic structure derived from a transition system, and the general result is that a relation RRR between two transition systems on state spaces SSS and TTT is a bisimulation if and only if the derived algebraic structures are in the logical relation automatically generated from RRR. We show that this approach works for the original Park-Milner bisimulation and that it extends to weak bisimulation, and branching and semi-branching bisimulation. The paper concludes with a discussion of probabilistic bisimulation, where the situation is slightly more complex, partly owing to the need to encompass bisimulations that are not just relations.
New bisimulation semantics for distributed systems
Formal Techniques for …, 2007
Abstract. Bisimulation semantics are a very pleasant way to define the semantics of systems, mainly because the simplicity of their definitions and their nice coalgebraic properties. However, they also have some dis-advantages: they are based on a sequential ...
Logical Bisimulations and Functional Languages
Lecture Notes in Computer Science
Developing a theory of bisimulation in higher-order languages can be hard. Particularly challenging can be the proof of congruence and, related to this, enhancements of the bisimulation proof method with "up-to context" techniques. We present logical bisimulations, a form of bisimulation for higherorder languages, in which the bisimulation clause is somehow reminiscent of logical relations. We consider purely functional languages, in particular untyped call-by-name and call-by-value lambda-calculi, and, in each case: we present the basic properties of logical bisimilarity, including congruence; we show that it coincides with contextual equivalence; we develop some up-to techniques, including up-to context, as examples of possible enhancements of the associated bisimulation method.