Skip to main content

A Metamodel-Based Approach for Adding Modularization to KeYmaera’s Input Syntax

  • Conference paper
  • First Online:
Perspectives of System Informatics (PSI 2019)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11964))

Abstract

The theorem prover KeYmaera allows (1) to describe Cyber-Physical Systems (CPSs) in terms of a Hybrid Program (HP), (2) to specify properties for the defined system, and (3) to formally verify these properties using a tailored logic called Differential Dynamic Logic (DDL).

The syntax of Hybrid Programs is rather poor and covers only the most basic program statements, such as assignment, test, sequential execution, and iteration. The decision to keep the syntax of HPs very simple has different consequences: An advantage is that also the verification calculus can be kept relatively simple. On the downside we have that even small programs are hard to understand and that the programmer is forced to program using a copy-and-paste style, which obviously hampers maintenance. The most significant drawback, however, is the absence of modularization and a library concept; making the development and verification of bigger systems a huge burden.

In this paper, we identify several problems of KeYmaera’s input syntax and illustrate them with examples. To overcome these problems, we first describe the original syntax in form of a metamodel. Then, we propose to extend this metamodel with established programming concepts such as subprogram and abrupt termination. We illustrate our extensions by using a new graphical concrete syntax. Examples from a recent KeYmaera tutorial serve for our paper as illustration examples.

This work was supported in part by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) - project number 415309034.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Since \( skip \) can be simulated by \(?\, true \) it is not supported by all versions of KeYmaera.

  2. 2.

    Historically, the prover KeY is the predecessor of KeYmaera.

References

  1. Ahrendt, W., Beckert, B., Bubel, R., Hähnle, R., Schmitt, P.H., Ulbrich, M. (eds.): Deductive Software Verification - The KeY Book - From Theory to Practice. LNCS, vol. 10001. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-319-49812-6

    Book  Google Scholar 

  2. Baar, T., Staroletov, S.: A control flow graph based approach to make the verification of cyber-physical systems using KeYmaera easier. Model. Anal. Inf. Syst. 25(5), 465–480 (2018)

    Article  MathSciNet  Google Scholar 

  3. Bettini, L.: Implementing Domain-Specific Languages with Xtext and Xtend, 2nd edn. Packt Publisher, Birmingham (2016)

    Google Scholar 

  4. Floyd, R.W.: Assigning meanings to programs. In: Schwartz, J.T. (ed.) Proceedings of Symposium on Applied Mathematics, pp. 19–32. Mathematical Aspects of Computer Science, American Mathematical Society (1967)

    Google Scholar 

  5. Gonzalez-Perez, C., Henderson-Sellers, B.: Metamodelling for Software Engineering. Wiley, Hoboken (2008)

    Google Scholar 

  6. Harel, D., Kozen, D., Tiuryn, J.: Dynamic Logic. Foundation of Computing. MIT Press, Cambridge (2000)

    Book  Google Scholar 

  7. Harel, D., Meyer, A.R., Pratt, V.R.: Computability and completeness in logics of programs (preliminary report). In: Hopcroft, J.E., Friedman, E.P., Harrison, M.A. (eds.) Proceedings of the 9th Annual ACM Symposium on Theory of Computing, 4–6 May 1977, Boulder, Colorado, USA, pp. 261–268. ACM (1977)

    Google Scholar 

  8. Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 12(10), 576–580 (1969)

    Article  Google Scholar 

  9. Jeannin, J.-B., et al.: A formally verified hybrid system for the next-generation airborne collision avoidance system. In: Baier, C., Tinelli, C. (eds.) TACAS 2015. LNCS, vol. 9035, pp. 21–36. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46681-0_2

    Chapter  Google Scholar 

  10. Mitsch, S.: Modeling and Analyzing Hybrid Systems with Sphinx - A User Manual. Carnegie Mellon University and Johannes Kepler University, Pittsburgh and Linz (2013). http://www.cs.cmu.edu/afs/cs/Web/People/smitsch/pdf/userdoc.pdf

    Google Scholar 

  11. Mitsch, S., Ghorbal, K., Platzer, A.: On provably safe obstacle avoidance for autonomous robotic ground vehicles. In: Newman, P., Fox, D., Hsu, D. (eds.) Robotics: Science and Systems IX, 24–28 June 2013. Technische Universität Berlin, Berlin (2013)

    Google Scholar 

  12. Platzer, A.: Logical Analysis of Hybrid Systems: Proving Theorems for Complex Dynamics. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14509-4

    Book  MATH  Google Scholar 

  13. Platzer, A.: Logical Foundations of Cyber-Physical Systems. Springer, Heidelberg (2018). https://doi.org/10.1007/978-3-319-63588-0

    Book  MATH  Google Scholar 

  14. Platzer, A., Clarke, E.M.: Formal verification of curved flight collision avoidance maneuvers: a case study. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 547–562. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-05089-3_35

    Chapter  Google Scholar 

  15. Platzer, A., Quesel, J.-D.: European train control system: a case study in formal verification. In: Breitman, K., Cavalcanti, A. (eds.) ICFEM 2009. LNCS, vol. 5885, pp. 246–265. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-10373-5_13

    Chapter  Google Scholar 

  16. Pratt, V.R.: Semantical considerations on Floyd-Hoare logic. In: 17th Annual Symposium on Foundations of Computer Science, Houston, Texas, USA, 25–27 October 1976, pp. 109–121. IEEE Computer Society (1976)

    Google Scholar 

  17. Pratt, V.: Dynamic logic: a personal perspective. In: Madeira, A., Benevides, M. (eds.) DALI 2017. LNCS, vol. 10669, pp. 153–170. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-73579-5_10

    Chapter  MATH  Google Scholar 

  18. Quesel, J.D., Mitsch, S., Loos, S., Aréchiga, N., Platzer, A.: How to model and prove hybrid systems with KeYmaera: a tutorial on safety. STTT 18(1), 67–91 (2016)

    Article  Google Scholar 

  19. Rumbaugh, J.E., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manuel - Covers UML 2.0. Addison Wesley Object Technology Series, 2nd edn. Addison-Wesley, Boston (2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Thomas Baar .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Baar, T. (2019). A Metamodel-Based Approach for Adding Modularization to KeYmaera’s Input Syntax. In: Bjørner, N., Virbitskaite, I., Voronkov, A. (eds) Perspectives of System Informatics. PSI 2019. Lecture Notes in Computer Science(), vol 11964. Springer, Cham. https://doi.org/10.1007/978-3-030-37487-7_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-37487-7_11

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-37486-0

  • Online ISBN: 978-3-030-37487-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics