ABSTRACT
Event-B is a formal method for modeling and reasoning about complex systems, its open toolset Rodin supports integer numbers, but does not support real numbers and mathematical notations like trigonometric functions. The mathematical software Mathematica provides built-in data types and plenty of predicates and functions. In this paper, an approach for modeling and reasoning Event-B models based on Mathematica is proposed, both integer and real numbers, built-in mathematical notations in Mathematica can be utilized directly for modeling, and the simplification and reduction functions in Mathematica are proposed to reason about the generated proof obligations. The experimental results demonstrate the practicability of modeling and reasoning Event-B models based on Mathematica.
- [n.d.]. http://www.lab205.org/home/download/hybrid/Examples.pdfGoogle Scholar
- [n.d.]. Theorem Proving. https://reference.wolfram.com/language/guide/TheoremProving.htmlGoogle Scholar
- Jean-Raymond Abrial. 2010. Modeling in Event-B - System and Software Engineering. Cambridge University Press. http://www.cambridge.org/uk/catalogue/catalogue.asp?isbn=9780521895569Google Scholar
- Jean-Raymond Abrial, Michael J. Butler, Stefan Hallerstede, Thai Son Hoang, Farhad Mehta, and Laurent Voisin. 2010. Rodin: an open toolset for modelling and reasoning in Event-B. STTT 12, 6 (2010), 447--466. https://doi.org/10.1007/s10009-010-0145-yGoogle ScholarCross Ref
- Jean-Raymond Abrial, Wen Su, and Huibiao Zhu. 2012. Formalizing Hybrid Systems with Event-B, See [5], 178--193. https://doi.org/10.1007/978-3-642-30885-7_13Google Scholar
- Andrej Bauer, Edmund M. Clarke, and Xudong Zhao. 1998. Analytica - An Experiment in Combining Theorem Proving and Symbolic Computation. J. Autom. Reasoning 21, 3 (1998), 295--325. https://doi.org/10.1023/A:1006079212546Google ScholarDigital Library
- Bruno Buchberger, Adrian Craciun, Tudor Jebelean, Laura Kovács, Temur Kutsia, Koji Nakagawa, Florina Piroi, Nikolaj Popov, Judit Robu, Markus Rosenkranz, and Wolfgang Windsteiger. 2006. Theorema: Towards computer-aided mathematical theory exploration. J. Applied Logic 4, 4 (2006), 470--504. https://doi.org/10.1016/j.jal.2005.10.006Google ScholarCross Ref
- Michael J. Butler and Issam Maamria. 2013. Practical Theory Extension in Event-B, See [8], 67--81. https://doi.org/10.1007/978-3-642-39698-4_5Google Scholar
- Carlo A. Furia and Bertrand Meyer. 2010. Inferring Loop Invariants Using Postconditions, See [9], 277--300. https://doi.org/10.1007/978-3-642-15025-8_15Google Scholar
- Mélanie Jacquel, Karim Berkani, David Delahaye, and Catherine Dubois. 2015. Verifying B proof rules using deep embedding and automated theorem proving. Software and System Modeling 14, 1 (2015), 101--119. https://doi.org/10.1007/s10270-013-0322-zGoogle ScholarDigital Library
- Laura Kovács. 2008. Aligator: A Mathematica Package for Invariant Generation (System Description), See [11], 275--282. https://doi.org/10.1007/978-3-540-71070-7_22Google Scholar
- L. Kovács. 2007. Automated Invariant Generation by Algebraic Techniques for Imperative Program Verification in Theorema. Ph.D. Dissertation. Johannes Kepler University Linz, Linz, Austria.Google Scholar
- Mengjun Li. 2012. A Practical Loop Invariant Generation Approach Based on Random Testing, Constraint Solving and Verification, See [13], 447--461. https://doi.org/10.1007/978-3-642-34281-3_31Google Scholar
- Mengjun Li. 2015. Automatic proving or disproving equality loop invariants based on finite difference techniques. Inf. Process. Lett. 115, 4 (2015), 468--474. https://doi.org/10.1016/j.ipl.2014.11.006Google ScholarDigital Library
- Wen Su, Jean-Raymond Abrial, and Huibiao Zhu. 2014. Formalizing hybrid systems with Event-B and the Rodin Platform. Sci. Comput. Program. 94 (2014), 164--202. https://doi.org/10.1016/j.scico.2014.04.015Google ScholarDigital Library
- Modeling and Reasoning Event-B Models Based on Mathematica
Recommendations
Towards the Composition of Specifications in Event-B
The development of a system can start with the creation of a specification. Following this viewpoint, we claim that often a specification can be constructed from the combination of specifications which can be seen as composition. Event-B is a formal ...
Building traceable Event-B models from requirements
Bridging the gap between informal requirements and formal specifications is a key challenge in systems engineering. Constructing appropriate abstractions in formal models requires skill and managing the complexity of the relationships between ...
Rodin: an open toolset for modelling and reasoning in Event-B
Special Section on VSTTE 2008Event-B is a formal method for system-level modelling and analysis. Key features of Event-B are the use of set theory as a modelling notation, the use of refinement to represent systems at different abstraction levels and the use of mathematical proof ...
Comments