Denotational and operational semantics for interaction languages: Application to trace analysis

被引:2
作者
Mahe, Erwan [1 ]
Gaston, Christophe [1 ]
Le Gall, Pascale [2 ]
机构
[1] Univ Paris Saclay, CEA, List, F-91120 Palaiseau, France
[2] Univ Paris Saclay, Cent Supelec, F-91192 Gif Sur Yvette, France
关键词
Interactions; Sequence diagrams; Formal language; Denotational semantics; Operational semantics; SEQUENCE DIAGRAMS;
D O I
10.1016/j.scico.2023.103034
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Graphical depictions of distributed systems' behaviors in the form of Sequence Diagrams (SD) are widely used, with formalisms such as Message Sequence Charts (MSC) or UML-SD. Yet, only restricted subsets of these languages are associated to formal semantics, most of which are given by translation towards other formalisms. These translational approaches are the only ones enabling formal verification thanks to the ecosystem and tools associated to the target formalism. However, traceability of SD concepts is lost and the translation of some operators, in particular the weakly sequential loop, is problematic. In this paper, we define an Interaction Language to encode SD and ground it formally by associating it to three different semantics which we prove to be equivalent. A "denotational" semantics, relying on composing operators over sets of traces (sequences of atomic actions) allows one to reason on algebraic properties of SD. A structural "operational" semantics apprehends SD as executable objects which can express traces one action after the other. It also bridges the gap between the two other semantics and enables proving their equivalence. A functional style "execution" semantics separates two concerns intertwined in the operational semantics that is: identifying immediately executable actions (frontier actions) and computing follow-up SD which specify continuations of behaviors. The use of positions to identify frontier actions resolves non determinism as every distinct occurrence of these actions have unique positions and are associated to a unique follow-up SD. Additionally, this enables visualizing frontier actions in SD as well as the execution of SD.These three semantics constitute a framework which enable using SD directly for formal verification. Traceability of SD concepts and executed actions is preserved and the weakly sequential loops are treated as any other operator.
引用
收藏
页数:31
相关论文
共 41 条
  • [1] Alur R, 1999, LECT NOTES COMPUT SC, V1664, P114
  • [2] Audiotranskription, 2019, Unified modeling language (UML) version 2.5.1
  • [3] Baeten J, 2000, Computing Science Reports
  • [4] Bannour B, 2011, ASIA PAC SOFWR ENG, P219, DOI [10.1109/APSC.2011.40, 10.1109/APSEC.2011.40]
  • [5] Constraint-Based Oracles for Timed Distributed Systems
    Benharrat, Nassim
    Gaston, Christophe
    Hierons, Robert M.
    Lapitre, Arnault
    Le Gall, Pascale
    [J]. TESTING SOFTWARE AND SYSTEMS (ICTSS 2017), 2017, 10533 : 276 - 292
  • [6] LSCs: Breathing life into message sequence charts
    Damm, W
    Harel, D
    [J]. FORMAL METHODS IN SYSTEM DESIGN, 2001, 19 (01) : 45 - 80
  • [7] de Bakker E.P., 1996, Control Flow Semantics
  • [8] Dershowitz Nachum, 1991, Rewrite Systems, P243
  • [9] Eichner C, 2005, LECT NOTES COMPUT SC, V3530, P133
  • [10] Firley T, 1999, LECT NOTES COMPUT SC, V1723, P645