SOS formats and meta-theory: 20 years after

In 1981 Structural Operational Semantics (SOS) was introduced as a systematic way to define operational semantics of programming languages by a set of rules of a certain shape [G.D. Plotkin, A structural approach to operational semantics, Technical Report DAIMI FN-19, Computer Science Department, Aarhus University, Aarhus, Denmark, September 1981]. Subsequently, the format of SOS rules became the object of study. Using so-called Transition System Specifications (TSS's) several authors syntactically restricted the format of rules and showed several useful properties about the semantics induced by any TSS adhering to the format. This has resulted in a line of research proposing several syntactical rule formats and associated meta-theorems. Properties that are guaranteed by such rule formats range from well-definedness of the operational semantics and compositionality of behavioral equivalences to security-, time- and probability-related issues. In this paper, we provide an overview of SOS rule formats and meta-theorems formulated around them.

[1]  Bernard Lang,et al.  Metal: A Formalism to Specify Formalisms , 1983, Sci. Comput. Program..

[2]  Corrado Priami,et al.  Enhanced operational semantics: a tool for describing and analyzing concurrent systems , 2001, CSUR.

[3]  Frits W. Vaandrager,et al.  Expressive Results for Process Algebras , 1992, REX Workshop.

[4]  Rob J. van Glabbeek,et al.  The Linear Time - Branching Time Spectrum I , 2001, Handbook of Process Algebra.

[5]  Mohammad Reza Mousavi,et al.  Congruence for Structural Congruences , 2005, FoSSaCS.

[6]  Peter D. Mosses,et al.  Modular structural operational semantics , 2004, J. Log. Algebraic Methods Program..

[7]  Gérard Boudol Towards a Lambda-Calculus for Concurrent and Communicating Systems , 1989, TAPSOFT, Vol.1.

[8]  Rob J. van Glabbeek Full Abstraction in Structural Operational Semantics (Extended Abstract) , 1993, AMAST.

[9]  Irek Ulidowski,et al.  Equivalences on observable processes , 1992, [1992] Proceedings of the Seventh Annual IEEE Symposium on Logic in Computer Science.

[10]  J. Meseguer,et al.  Security Policies and Security Models , 1982, 1982 IEEE Symposium on Security and Privacy.

[11]  Erik P. de Vink,et al.  Probabilistic Automata: System Types, Parallel Composition and Comparison , 2004, Validation of Stochastic Systems.

[12]  Reiko Heckel,et al.  Compositional SOS and beyond: a coalgebraic view of open systems , 2002, Theor. Comput. Sci..

[13]  Frits W. Vaandrager,et al.  Expressiveness results for process algebras , 1993 .

[14]  Karl-Heinz Buth,et al.  Using SOS Definitions in Term Rewriting Proofs , 1992, Larch.

[15]  Kim G. Larsen,et al.  Bisimulation through Probabilistic Testing , 1991, Inf. Comput..

[16]  Simone Tini,et al.  Rule formats for compositional non-interference properties , 2004, J. Log. Algebraic Methods Program..

[17]  Rob van Glabbeek On Cool Congruence Formats for Weak Bisimulations (Extended Abstract) , 2005 .

[18]  Robert E. Tarjan,et al.  Three Partition Refinement Algorithms , 1987, SIAM J. Comput..

[19]  Iain C. C. Phillips,et al.  Reversing algebraic process calculi , 2007, J. Log. Algebraic Methods Program..

[20]  Joachim Parrow The expressive power of parallelism , 1990, Future Gener. Comput. Syst..

[21]  Alex K. Simpson,et al.  Sequent calculi for process verification: Hennessy-Milner logic for an arbitrary GSOS , 2004, J. Log. Algebraic Methods Program..

[22]  José Meseguer,et al.  Mapping Modular SOS to Rewriting Logic , 2002, LOPSTR.

[23]  David Sands From SOS rules to proof principles: an operational metatheory for functional languages , 1997, POPL '97.

[24]  Erik P. de Vink,et al.  Axiomatizing GSOS with Termination , 2002, STACS.

[25]  Frits W. Vaandrager,et al.  Turning SOS rules into equations , 1992, [1992] Proceedings of the Seventh Annual IEEE Symposium on Logic in Computer Science.

[26]  Bent Thomsen A Theory of Higher Order Communicating Systems , 1995, Inf. Comput..

[27]  Frits W. Vaandrager,et al.  On the relationship between process algebra and input/output automata , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[28]  Marco Kick,et al.  Bialgebraic Modelling of Timed Processes , 2002, ICALP.

[29]  D. Turi,et al.  Functional Operational Semantics and its Denotational Dual , 1996 .

[30]  Teodor C. Przymusinski The Well-Founded Semantics Coincides with the Three-Valued Stable Semantics , 1990, Fundam. Inform..

[31]  Rance Cleaveland,et al.  A Front-End Generator for Verification Tools , 1995, TACAS.

[32]  Jan Friso Groote,et al.  The Meaning of Negative Premises in Transition System Specifications , 1991, ICALP.

[33]  R. J. vanGlabbeek Bounded nondeterminism and the approximation induction principle in process algebra , 1987 .

[34]  Matthew Hennessy,et al.  The Power of the Future Perfect in Program Logics , 1985, Inf. Control..

[35]  K. Larsen Context-dependent bisimulation between processes , 1986 .

[36]  Luca Aceto,et al.  Conservative Extension in Structural Operational Semantics , 1999, Bull. EATCS.

[37]  Alberto Verdejo,et al.  Implementing CCS in Maude 2 , 2002, Electron. Notes Theor. Comput. Sci..

[38]  Irek Ulidowski,et al.  Ordered SOS process languages for branching and Eager bisimulation , 2002 .

[39]  Rocco De Nicola,et al.  Testing Equivalences for Processes , 1984, Theor. Comput. Sci..

[40]  Mohammad Reza Mousavi,et al.  Prototyping SOS Meta-theory in Maude , 2006, Electron. Notes Theor. Comput. Sci..

[41]  Jan Friso Groote,et al.  Structured Operational Semantics and Bisimulation as a Congruence , 1992, Inf. Comput..

[42]  Sam Staton,et al.  A Congruence Rule Format for Name-Passing Process Calculi from Mathematical Structural Operational Semantics , 2006, 21st Annual IEEE Symposium on Logic in Computer Science (LICS'06).

[43]  Erik P. de Vink,et al.  A hierarchy of probabilistic system types , 2003, CMCS.

[44]  Wan Fokkink,et al.  Precongruence formats for decorated trace semantics , 2002, TOCL.

[45]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[46]  Chris Verhoef,et al.  A Congruence Theorem for Structured Operational Semantics with Predicates and Negative Premises , 1994, Nord. J. Comput..

[47]  Robin Milner,et al.  Algebraic laws for nondeterminism and concurrency , 1985, JACM.

[48]  David Park,et al.  Concurrency and Automata on Infinite Sequences , 1981, Theoretical Computer Science.

[49]  Jan A. Bergstra,et al.  Syntax and defining equations for an interrupt mechanism in process algebra , 1985 .

[50]  Xinxin Liu,et al.  Compositionality through an Operational Semantics of Contexts , 1990, Journal of Logic and Computation.

[51]  D. A. Turner,et al.  Miranda: A Non-Strict Functional language with Polymorphic Types , 1985, FPCA.

[52]  J. C. M. Baeten,et al.  Process Algebra: Bibliography , 1990 .

[53]  Dov M. Gabbay,et al.  Handbook of Philosophical Logic Vol. 10 , 2001 .

[54]  Irek Ulidowski,et al.  Process languages with discrete relative time based on the Ordered SOS format and rooted eager bisimulation , 2004, J. Log. Algebraic Methods Program..

[55]  Joseph Sifakis,et al.  The Algebra of Timed Processes, ATP: Theory and Application , 1994, Inf. Comput..

[56]  Mohammad Reza Mousavi,et al.  SOS for Higher Order Processes , 2005, CONCUR.

[57]  Douglas J. Howe Proving Congruence of Bisimulation in Functional Programming Languages , 1996, Inf. Comput..

[58]  Wan Fokkink,et al.  Ntyft/Ntyxt Rules Reduce to Ntree Rules , 1996, Inf. Comput..

[59]  Robin Milner,et al.  The Polyadic π-Calculus: a Tutorial , 1993 .

[60]  Irek Ulidowski Priority Rewrite Systems for OSOS Process Languages , 2003, CONCUR.

[61]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[62]  Dale Miller,et al.  A proof theory for generic judgments , 2005, TOCL.

[63]  Robin Milner,et al.  A Modal Characterisation of Observable Machine-Behaviour , 1981, CAAP.

[64]  Simone Tini,et al.  Probabilistic Congruence for Semistochastic Generative Processes , 2005, FoSSaCS.

[65]  Bernhard Steffen,et al.  Reactive, generative, and stratified models of probabilistic processes , 1990, [1990] Proceedings. Fifth Annual IEEE Symposium on Logic in Computer Science.

[66]  Simon L. Peyton Jones,et al.  Imperative functional programming , 1993, POPL '93.

[67]  J. Meseguer,et al.  Rewriting Logic as a Logical and Semantic Framework , 1996 .

[68]  Kees Middelburg,et al.  Variable binding operators in transition system specifications , 2000, J. Log. Algebraic Methods Program..

[69]  Simone Tini,et al.  Rule Formats for Non Interference , 2003, ESOP.

[70]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[71]  Jan A. Bergstra,et al.  Verification of an alternating bit protocol by means of process algebra , 1985, Mathematical Methods of Specification and Synthesis of Software Systems.

[72]  Matthew Hennessy,et al.  Full Abstraction for a Simple Parallel Programming Language , 1979, MFCS.

[73]  Bard Bloom,et al.  Structural Operational Semantics for Weak Bisimulations , 1995, Theor. Comput. Sci..

[74]  Gordon D. Plotkin,et al.  The origins of structural operational semantics , 2004, J. Log. Algebraic Methods Program..

[75]  Fabio Gadducci,et al.  A causal semantics for CCS via rewriting logic , 2002, Theor. Comput. Sci..

[76]  Jan Friso Groote,et al.  Notions of bisimulation and congruence formats for SOS with data , 2005, Inf. Comput..

[77]  Robert de Simone,et al.  Process Calculi, from Theory to Practice: Verification Tools , 1989, Automatic Verification Methods for Finite State Systems.

[78]  Faron Moller,et al.  A Temporal Calculus of Communicating Systems , 1990, CONCUR.

[79]  Stephen J. Garland,et al.  Larch: Languages and Tools for Formal Specification , 1993, Texts and Monographs in Computer Science.

[80]  Paul Klint,et al.  Compiling language definitions: the ASF+SDF compiler , 2000, TOPL.

[81]  Wan Fokkink,et al.  A Conservative Look at Operational Semantics with Variable Binding , 1998, Inf. Comput..

[82]  Wan Fokkink The Tyft/Tyxt Format Reduces to Tree Rules , 1994, TACS.

[83]  Jcm Jos Baeten,et al.  Processen en procesexpressies , 1987 .

[84]  D. Walker,et al.  A Calculus of Mobile Processes, Part I , 1989 .

[85]  Chris Verhoef,et al.  A General Conservative Extension Theorem in Process Algebra , 1994, PROCOMET.

[86]  Jan A. Bergstra,et al.  Real time process algebra , 1991, Formal Aspects of Computing.

[87]  Karl-Heinz Buth,et al.  Simulation of SOS Definitions with Term Rewriting Systems , 1994, ESOP.

[88]  Luca Aceto,et al.  Deriving Complete Inference Systems for a Class of GSOS Languages Generation Regular Behaviours , 1994, CONCUR.

[89]  Kees Middelburg An alternative formulation of operational conservativity with binding terms , 2003, J. Log. Algebraic Methods Program..

[90]  Wan Fokkink,et al.  Rooted Branching Bisimulation as a Congruence , 2000, J. Comput. Syst. Sci..

[91]  Irek Ulidowski,et al.  Axiomatisations of Weak Equivalences for De Simone Languages , 1995, CONCUR.

[92]  Robert de Simone,et al.  Higher-Level Synchronising Devices in Meije-SCCS , 1985, Theor. Comput. Sci..

[93]  Patrick Borras,et al.  Centaur: the system , 1988, Software Development Environments.

[94]  Falk Bartels,et al.  GSOS for Probabilistic Transition Systems , 2002, CMCS.

[95]  Jan A. Bergstra,et al.  Process Algebra for Synchronous Communication , 1984, Inf. Control..

[96]  Irek Ulidowski,et al.  Finite axiom systems for testing preorder and De Simone process languages , 1996, Theor. Comput. Sci..

[97]  Wan Fokkink,et al.  Divide and Congruence Applied to eta-Bisimulation , 2006, SOS@ICALP.

[98]  Dale Miller,et al.  A Congruence Format for Name-passing Calculi , 2006, SOS@ICALP.

[99]  Karen L. Bernstein A congruence theorem for structured operational semantics of higher-order languages , 1998, Proceedings. Thirteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.98CB36226).

[100]  Gilles Kahn,et al.  Natural Semantics , 1987, STACS.

[101]  Rob J. van Glabbeek,et al.  The Linear Time - Branching Time Spectrum II , 1993, CONCUR.

[102]  Andrew M. Pitts,et al.  A new approach to abstract syntax involving binders , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[103]  Iain Phillips,et al.  Ordered Sos Rules And Weak Bisimulation , 1996 .

[104]  José Meseguer,et al.  Conditioned Rewriting Logic as a United Model of Concurrency , 1992, Theor. Comput. Sci..

[105]  José Meseguer,et al.  Modular Rewriting Semantics of Programming Languages , 2004, AMAST.

[106]  Gianna Reggio,et al.  Generalized Bisimulation in Relational Specifications , 1988, STACS.

[107]  Jan Friso Groote,et al.  A syntactic commutativity format for SOS , 2005, Inf. Process. Lett..

[108]  Rob J. van Glabbeek,et al.  The meaning of negative premises in transition system specifications II , 1996, J. Log. Algebraic Methods Program..

[109]  Jos C. M. Baeten,et al.  Process Algebra with Timing , 2002, Monographs in Theoretical Computer Science. An EATCS Series.

[110]  Iain C. C. Phillips,et al.  Formats of Ordered SOS Rules with Silent Actions , 1997, TAPSOFT.

[111]  José Meseguer,et al.  Maude Action Tool: Using Reflection to Map Action Semantics to Rewriting Logic , 2000, AMAST.

[112]  Andrew C. Myers,et al.  Language-based information-flow security , 2003, IEEE J. Sel. Areas Commun..

[113]  Mohammad Reza Mousavi,et al.  Orthogonal Extensions in Structural Operational Semantics , 2005, ICALP.

[114]  Vashti Galpin,et al.  A format for semantic equivalence comparison , 2003, Theor. Comput. Sci..

[115]  Luca Aceto,et al.  CPO Models for Compact GSOS Languages , 1996, Inf. Comput..

[116]  Peter D. Mosses Exploiting Labels in Structural Operational Semantics , 2005 .

[117]  Gérard Berry,et al.  The chemical abstract machine , 1989, POPL '90.

[118]  Albert R. Meyer,et al.  Bisimulation can't be traced , 1988, POPL '88.

[119]  L. Aceto CPO Models for GSOS Languages - Part I: Compact GSOS Languages , 1994 .

[120]  Jan Friso Groote,et al.  Completeness of Timed μCRL , 2002 .

[121]  Alberto Verdejo,et al.  Implementing CCS in Maude , 2000, FORTE.

[122]  S. P. Luttik Choice quantification in process algebra , 2002 .

[123]  Wan Fokkink,et al.  Compositionality of Hennessy-Milner logic by structural operational semantics , 2006, Theor. Comput. Sci..

[124]  J. Bergstra,et al.  Handbook of Process Algebra , 2001 .

[125]  S. Abramsky The lazy lambda calculus , 1990 .

[126]  Jan Friso Groote,et al.  Transition System Specifications with Negative Premises , 1993, Theor. Comput. Sci..

[127]  Christiano Braga,et al.  Rewriting Logic as a Semantic Framework for Modular Structural Op-erational Semantics , 2001 .

[128]  Jeff W. Sanders,et al.  Quantum Programming , 2000, MPC.

[129]  Bard Bloom,et al.  Metatheory of the $\pi$-Calculus , 1996 .

[130]  Jos C. M. Baeten,et al.  Merge and Termination in Process Algebra , 1987, FSTTCS.

[131]  Narciso Martí-Oliet,et al.  The Maude 2.0 System , 2003, RTA.

[132]  Alberto Verdejo,et al.  Building Tools for LOTOS Symbolic Semantics in Maude , 2002, FORTE.

[133]  Jos C. M. Baeten,et al.  A Congruence Theorem for Structured Operational Semantics with Predicates , 1993, CONCUR.

[134]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[135]  Cosimo Laneve,et al.  Formal molecular biology , 2004, Theor. Comput. Sci..

[136]  Scott A. Smolka,et al.  CCS expressions, finite state processes, and three problems of equivalence , 1983, PODC '83.

[137]  Pieter H. Hartel,et al.  LETOS – a lightweight execution tool for operational semantics , 1999 .

[138]  Elham Morcos-Chounet,et al.  PPML: A General Formalism to Specify PrettyPrinting , 1986, IFIP Congress.

[139]  Wan Fokkink,et al.  Structural operational semantics and bounded nondeterminism , 2003, Acta Informatica.

[140]  Davide Sangiorgi,et al.  Bisimulation for Higher-Order Process Calculi , 1994, Inf. Comput..

[141]  Mohammad Reza Mousavi,et al.  On Well-Foundedness and Expressiveness of Promoted Tyft: Being Promoted Makes a Difference , 2007, Electron. Notes Theor. Comput. Sci..

[142]  Alberto Verdejo,et al.  Two Case Studies of Semantics Execution in Maude: CCS and LOTOS , 2005, Formal Methods Syst. Des..

[143]  Iain C. C. Phillips,et al.  The Meaning of Ordered SOS , 2006, FSTTCS.

[144]  Rance Cleaveland,et al.  The concurrency workbench: a semantics-based tool for the verification of concurrent systems , 1993, TOPL.

[145]  Davide Sangiorgi,et al.  The Pi-Calculus - a theory of mobile processes , 2001 .

[146]  David Turner,et al.  Research topics in functional programming , 1990 .

[147]  Bartek Klin,et al.  From Bialgebraic Semantics to Congruence Formats , 2005, SOS@CONCUR.