Abstract
The mCRL2 language is a formal specification language that is used to specify, model, analyze and verify behavioral properties for distributed systems and protocols. The semantics of the mCRL2 language is defined formally using Structural Operational Semantics (SOS). In [32] we propose an approach that takes the SOS of a formal language, along with a concrete model, that serves as an initialization, and transforms it to a Linear Process Specification (LPS). In this paper we extend the approach and show that it can be applied to a formal language that in practice is used to specify and model discussed systems. Hence, we take mCRL2's own operational semantics and transform it into an mCRL2 specification. In essence, this means that we are feeding the mCRL2 toolset its own formal language definition. This semantic dogfooding approach validates the implemented behavior for the mCRL2 language against its formal definition. By performing this exercise we revealed gaps between the defined and implemented semantics. These gaps have subsequently been resolved.
Original language | English |
---|---|
Title of host publication | 2012 IEEE 35th Software Engineering Workshop (SEW 2012, Heraclion, Crete, Greece, October 12-13, 2012) |
Publisher | Institute of Electrical and Electronics Engineers |
Pages | 90-99 |
Number of pages | 10 |
ISBN (Print) | 978-076954947-7 |
DOIs | |
Publication status | Published - 2012 |
Event | 35th IEEE Software Engineering Workshop (SEW-35), October 12-13, 2012, Heraklion, Greece - Heraklion, Greece Duration: 12 Oct 2012 → 13 Oct 2012 |
Workshop
Workshop | 35th IEEE Software Engineering Workshop (SEW-35), October 12-13, 2012, Heraklion, Greece |
---|---|
Abbreviated title | SEW-35 |
Country/Territory | Greece |
City | Heraklion |
Period | 12/10/12 → 13/10/12 |
Other | Workshop co-located with the 5th International Symposium on Leveraging Applications of Formal Methods (ISoLA 2012) |