Stateful Structural Operational Semantics

Authors Sergey Goncharov , Stefan Milius , Lutz Schröder , Stelios Tsampas , Henning Urbat

Thumbnail PDF


  • Filesize: 0.79 MB
  • 19 pages

Document Identifiers

Author Details

Sergey Goncharov
  • Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany
Stefan Milius
  • Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany
Lutz Schröder
  • Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany
Stelios Tsampas
  • Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany
Henning Urbat
  • Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany

Cite AsGet BibTex

Sergey Goncharov, Stefan Milius, Lutz Schröder, Stelios Tsampas, and Henning Urbat. Stateful Structural Operational Semantics. In 7th International Conference on Formal Structures for Computation and Deduction (FSCD 2022). Leibniz International Proceedings in Informatics (LIPIcs), Volume 228, pp. 30:1-30:19, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2022)


Compositionality of denotational semantics is an important concern in programming semantics. Mathematical operational semantics in the sense of Turi and Plotkin guarantees compositionality, but seen from the point of view of stateful computation it applies only to very fine-grained equivalences that essentially assume unrestricted interference by the environment between any two statements. We introduce the more restrictive stateful SOS rule format for stateful languages. We show that compositionality of two more coarse-grained semantics, respectively given by assuming read-only interference or no interference between steps, remains an undecidable property even for stateful SOS. However, further restricting the rule format in a manner inspired by the cool GSOS formats of Bloom and van Glabbeek, we obtain the streamlined and cool stateful SOS formats, which respectively guarantee compositionality of the two more abstract equivalences.

Subject Classification

ACM Subject Classification
  • Theory of computation → Categorical semantics
  • Structural Operational Semantics
  • Rule Formats
  • Distributive Laws


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Faris Abou-Saleh and Dirk Pattinson. Towards effects in mathematical operational semantics. In Michael W. Mislove and Joël Ouaknine, editors, Mathematical Foundations of Programming Semantics, MFPS 2011, volume 276 of Electron. Notes Theor. Comput. Sci., pages 81-104. Elsevier, 2011. URL:
  2. Faris Abou-Saleh and Dirk Pattinson. Comodels and effects in mathematical operational semantics. In Frank Pfenning, editor, Foundations of Software Science and Computation Structures - 16th International Conference, FOSSACS 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Rome, Italy, March 16-24, 2013. Proceedings, volume 7794 of Lecture Notes in Computer Science, pages 129-144. Springer, 2013. URL:
  3. Thorsten Altenkirch, Nils Danielsson, and Nicolai Kraus. Partiality, revisited - the partiality monad as a quotient inductive-inductive type. In Javier Esparza and Andrzej Murawski, editors, Foundations of Software Science and Computation Structures, FOSSACS 2017, volume 10203 of Lecture Notes Comput. Sci., pages 534-549, 2017. Google Scholar
  4. Michael Barr. Coequalizers and free triples. Math. Z., 116:307-322, 1970. Google Scholar
  5. Falk Bartels. On generalised coinduction and probabilistic specification formats: Distributive laws in coalgebraic modelling. PhD thesis, Vrije Universiteit Amsterdam, 2004. Google Scholar
  6. Karen L. Bernstein. A congruence theorem for structured operational semantics of higher-order languages. In Thirteenth Annual IEEE Symposium on Logic in Computer Science, Indianapolis, Indiana, USA, June 21-24, 1998, pages 153-164. IEEE Computer Society, 1998. URL:
  7. Bard Bloom. Structural operational semantics for weak bisimulations. Theor. Comput. Sci., 146(1&2):25-68, 1995. URL:
  8. Bard Bloom, Sorin Istrail, and Albert R. Meyer. Bisimulation can't be traced. J. ACM, 42(1):232-268, 1995. URL:
  9. Bard Bloom and Frits Vandraager. Sos rule formats for parameterized and state-bearing processes, 1994. URL:
  10. Stephen D. Brookes. Full abstraction for a shared variable parallel language. In Proceedings of the Eighth Annual Symposium on Logic in Computer Science (LICS '93), Montreal, Canada, June 19-23, 1993, pages 98-109. IEEE Computer Society, 1993. URL:
  11. James Chapman, Tarmo Uustalu, and Niccolò Veltri. Quotienting the delay monad by weak bisimilarity. Mathematical Structures in Computer Science, 29(1):67-92, 2019. Google Scholar
  12. Marcelo P. Fiore and Sam Staton. A congruence rule format for name-passing process calculi from mathematical structural operational semantics. In 21th IEEE Symposium on Logic in Computer Science (LICS 2006), 12-15 August 2006, Seattle, WA, USA, Proceedings, pages 49-58. IEEE Computer Society, 2006. URL:
  13. Matthew Hennessy and Gordon D. Plotkin. Full abstraction for a simple parallel programming language. In Jirí Becvár, editor, Mathematical Foundations of Computer Science 1979, Proceedings, 8th Symposium, Olomouc, Czechoslovakia, September 3-7, 1979, volume 74 of Lecture Notes in Computer Science, pages 108-120. Springer, 1979. URL:
  14. Tom Hirschowitz and Ambroise Lafont. A categorical framework for congruence of applicative bisimilarity in higher-order languages. CoRR, abs/2103.16833, 2021. URL:
  15. Douglas J. Howe. Proving congruence of bisimulation in functional programming languages. Inf. Comput., 124(2):103-112, 1996. URL:
  16. Bart Jacobs. Introduction to Coalgebra: Towards Mathematics of States and Observation, volume 59 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 2016. URL:
  17. Alan Jeffrey and Julian Rathke. Java Jr: Fully abstract trace semantics for a core Java language. In Shmuel Sagiv, editor, 14th European Symposium on Programming, volume 3444 of Lecture Notes in Computer Science, pages 423-438. Springer, 2005. URL:
  18. Gilles Kahn. Natural semantics. In Franz-Josef Brandenburg, Guy Vidal-Naquet, and Martin Wirsing, editors, STACS 87, 4th Annual Symposium on Theoretical Aspects of Computer Science, Passau, Germany, February 19-21, 1987, Proceedings, volume 247 of Lecture Notes in Computer Science, pages 22-39. Springer, 1987. URL:
  19. Bartek Klin. Bialgebras for structural operational semantics: An introduction. Theor. Comput. Sci., 412(38):5043-5069, 2011. URL:
  20. Bartek Klin and Beata Nachyla. Presenting morphisms of distributive laws. In 6th Conference on Algebra and Coalgebra in Computer Science, CALCO 2015, June 24-26, 2015, Nijmegen, The Netherlands, pages 190-204, 2015. URL:
  21. Bartek Klin and Vladimiro Sassone. Structural operational semantics for stochastic process calculi. In Roberto M. Amadio, editor, Foundations of Software Science and Computational Structures, 11th International Conference, FOSSACS 2008, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2008, Budapest, Hungary, March 29 - April 6, 2008. Proceedings, volume 4962 of Lecture Notes in Computer Science, pages 428-442. Springer, 2008. URL:
  22. Xavier Leroy and Hervé Grall. Coinductive big-step operational semantics. CoRR, abs/0808.0586, 2008. URL:
  23. Marino Miculan and Marco Peressotti. Structural operational semantics for non-deterministic processes with quantitative aspects. Theor. Comput. Sci., 655:135-154, 2016. URL:
  24. Mohammad Reza Mousavi, Michel Reniers, and Jan Friso Groote. Congruence for sos with data. In LICS, pages 302-313. IEEE Computer Society Press, 2004. Google Scholar
  25. Keiko Nakata and Tarmo Uustalu. Trace-based coinductive operational semantics for while. In Stefan Berghofer, Tobias Nipkow, Christian Urban, and Makarius Wenzel, editors, Theorem Proving in Higher Order Logics, 22nd International Conference, TPHOLs 2009, Munich, Germany, August 17-20, 2009. Proceedings, volume 5674 of Lecture Notes in Computer Science, pages 375-390. Springer, 2009. URL:
  26. Scott Owens, Magnus O. Myreen, Ramana Kumar, and Yong Kiam Tan. Functional big-step semantics. In Peter Thiemann, editor, Programming Languages and Systems - 25th European Symposium on Programming, ESOP 2016, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2016, Eindhoven, The Netherlands, April 2-8, 2016, Proceedings, volume 9632 of Lecture Notes in Computer Science, pages 589-615. Springer, 2016. URL:
  27. Marco Patrignani and Dave Clarke. Fully abstract trace semantics for protected module architectures. Comput. Lang. Syst. Struct., 42:22-45, 2015. URL:
  28. Marco Patrignani, Dominique Devriese, and Frank Piessens. On modular and fully-abstract compilation. In IEEE 29th Computer Security Foundations Symposium, CSF 2016, Lisbon, Portugal, June 27 - July 1, 2016, pages 17-30. IEEE Computer Society, 2016. URL:
  29. Maciej Piróg and Jeremy Gibbons. Monads for behaviour. In Mathematical Foundations of Programming Semantics, MFPS 2013, volume 298 of Electron. Notes Theor. Comput. Sci., pages 309-324, 2015. Google Scholar
  30. Andrew M. Pitts. Operational semantics and program equivalence. In Gilles Barthe, Peter Dybjer, Luís Pinto, and João Saraiva, editors, Applied Semantics, International Summer School, APPSEM 2000, Caminha, Portugal, September 9-15, 2000, Advanced Lectures, volume 2395 of Lecture Notes in Computer Science, pages 378-412. Springer, 2000. URL:
  31. Andrew M. Pitts and Ian D. B. Stark. Operational reasoning for functions with local state. In Andrew D. Gordon and Andrew M. Pitts, editors, Higher Order Operational Techniques in Semantics, pages 227-274. Cambridge University Press, New York, NY, USA, 1998. Google Scholar
  32. Gordon D. Plotkin. A structural approach to operational semantics. J. Log. Algebr. Program., 60-61:17-139, 2004. Google Scholar
  33. Jan J. M. M. Rutten. A note on coinduction and weak bisimilarity for while programs. ITA, 33(4/5):393-400, 1999. URL:
  34. Jan J. M. M. Rutten. Universal coalgebra: a theory of systems. Theoretical Computer Science, 249(1):3-80, 2000. Google Scholar
  35. Stelios Tsampas, Andreas Nuyts, Dominique Devriese, and Frank Piessens. A categorical approach to secure compilation. In Daniela Petrisan and Jurriaan Rot, editors, Coalgebraic Methods in Computer Science - 15th IFIP WG 1.3 International Workshop, CMCS 2020, Colocated with ETAPS 2020, Dublin, Ireland, April 25-26, 2020, Proceedings, volume 12094 of Lecture Notes in Computer Science, pages 155-179. Springer, 2020. URL:
  36. Stelios Tsampas, Christian Williams, Andreas Nuyts, Dominique Devriese, and Frank Piessens. Abstract congruence criteria for weak bisimilarity. In Filippo Bonchi and Simon J. Puglisi, editors, 46th International Symposium on Mathematical Foundations of Computer Science, MFCS 2021, August 23-27, 2021, Tallinn, Estonia, volume 202 of LIPIcs, pages 88:1-88:23. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2021. URL:
  37. Daniele Turi. Categorical modelling of structural operational rules: Case studies. In Category Theory and Computer Science, 7th International Conference, CTCS '97, Santa Margherita Ligure, Italy, September 4-6, 1997, Proceedings, pages 127-146, 1997. URL:
  38. Daniele Turi and Gordon D. Plotkin. Towards a mathematical operational semantics. In Proceedings, 12th Annual IEEE Symposium on Logic in Computer Science, Warsaw, Poland, June 29 - July 2, 1997, pages 280-291, 1997. URL:
  39. Rob J. van Glabbeek. On cool congruence formats for weak bisimulations. Theor. Comput. Sci., 412(28):3283-3302, 2011. URL:
  40. Hiroshi Watanabe. Well-behaved translations between structural operational semantics. Electr. Notes Theor. Comput. Sci., 65(1):337-357, 2002. URL: