Simulations Up-to and Canonical Preorders

David de Frutos Escrig, Carlos Gregorio Rodríguez
2007 Electronical Notes in Theoretical Computer Science  
In this paper we define simulations up-to a preorder and show how we can use them to provide a coinductive, simulation-like, characterization of semantic preorders for processes. The result applies to a wide class of preorders, in particular to all semantic preorders coarser than the ready simulation preorder in the linear time-branching time spectrum. An interesting but unexpected result is that, when built from an equivalence relation, the simulation up-to is a canonical preorder whose kernel
more » ... is the given equivalence relation. These canonical preorders have several nice properties, the main being that since all of them are defined in a homogeneous way, their properties can be proved in a generic way. In particular, we present an axiomatic characterization of each of these canonical preorders, that is obtained just by adding a single axiom to the axiomatization of the original equivalence relation. This gives us an alternative axiomatization for every axiomatizable preorder in the linear time-branching time spectrum, whose correctness and completeness can be proved once and for all. Open access under CC BY-NC-ND license. to define an abstract semantics by associating to each term the equivalence class to which it belongs. Process algebras have been largely used to specify and study the behaviour of reactive systems and have given rise to well known languages such as CSP, CCS or ACP. Many different semantics and their respective equivalence relations have been proposed for reactive systems. Most of them were collected in the linear timebranching time spectrum (ltbt for short), which was thoroughly studied by Van Glabbeek [9] . There he presented a nearly exhaustive collection of semantics, each of which was characterized by a natural testing scenario, a modal logic to identify the set of equivalent processes, and a finite axiomatization to compare any pair of finite processes. Bisimulation semantics is the strongest of all the equivalence semantics in the spectrum and also one of the most important. Bisimulation equivalence can be easily defined due to its coinductive flavour and thus coalgebraic techniques can be applied, which provides a fruitful alternative to the classic approach based on induction and continuity arguments. Besides, bisimilarity can be easily established by an efficient algorithm based on which several tools that can effectively check process bisimilarity [5] have been developed. Despite the fact that bisimulation has been thoroughly studied since it was proposed by David Park [21] (see [24] for a recent historic presentation on the subject), it is still the topic of quite a number of recent papers such as [17] . But sometimes bisimulation equivalence is too strong and many other interesting semantics weaker than bisimilarity have been proposed, most of them appearing in the ltbt spectrum. Traces, for instance, is the weakest reasonable semantics for processes. However, non-deterministic behaviours are not properly described by means of traces, since deadlock information is not accurately captured. Failure semantics were proposed in [12] to solve this problem. An even finer semantics is that defined by readiness. Failures and ready sets can be combined with traces, thus getting stronger semantics as described in [9] . Unfortunately, in general these equivalences cannot be so easily studied as the bisimulation semantics, mainly because of their lack of a direct coalgebraic definition. However, it is possible to relate bisimulation and the rest of the semantics so that these coalgebraic techniques can be of use for their study. In [6] we have proved that all the semantics in the ltbt spectrum can be characterized as quotients of bisimulation. This is done by relaxing the proof obligations of bisimulation, so that when playing the new game the defender can modify the following transitions of the process when he makes his move, thus becoming easier to prove the corresponding equivalence. Preorders and equivalence relations are closely related, the latter being just a particular (symmetric) case of the former, while any preorder defines an induced equivalence relation by means of its kernel. Although semantics of processes are defined by equivalence relations, we need also order relations to compare nonequivalent processes that correspond to several order relations such as "is an implementation of" [3] , "is faster than" [16], or "has less amortised cost than" [14] .
doi:10.1016/j.entcs.2007.08.014 fatcat:gncifvcymvadndypvuwungymwe