Skip to main content

Abstract

Reactive synthesis guarantees correct-by-construction controllers from logical specifications, but is costly—2EXPTIME-complete in the size of the specification. In a practical setting, the desired controllers need to interact with an environment, but the more precise the model of the environment used for synthesis, the greater the cost of synthesis. This can be avoided by using suitable abstractions of the environment, but this in turn requires appropriate techniques to mediate between controllers and the real environment. Runtime verification can help here, with monitors acting as these mediators, and even as activators or orchestrators of the desired controllers. In this paper we survey literature for combinations of monitors with controller synthesis, and consider other potential combinations as future research directions.

This research is funded by the ERC consolidator grant D-SynMA under the European Union’s Horizon 2020 research and innovation programme (grant agreement No. 772459).

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 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.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.

    Some of these may be written manually, or provided a priori, and appropriately model checked.

References

  1. Ahrendt, W., Chimento, J.M., Pace, G.J., Schneider, G.: A specification language for static and runtime verification of data and control properties. In: Bjørner, N., de Boer, F. (eds.) FM 2015. LNCS, vol. 9109, pp. 108–125. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-19249-9_8

    Chapter  Google Scholar 

  2. Ahrendt, W., Chimento, M., Pace, G., Schneider, G.: Verifying data- and control-oriented properties combining static and runtime verification: theory and tools. Formal Methods Syst. Des. 51(1), 200–265 (2017). https://doi.org/10.1007/s10703-017-0274-y

    Article  MATH  Google Scholar 

  3. Azzopardi, S., Colombo, C., Pace, G.J.: A technique for automata-based verification with residual reasoning. In: MODELSWARD 2020, pp. 237–248. SCITEPRESS (2020). https://doi.org/10.5220/0008981902370248

  4. Azzopardi, S., Ellul, J., Pace, G.J.: Monitoring smart contracts: ContractLarva and open challenges beyond. In: Colombo, C., Leucker, M. (eds.) RV 2018. LNCS, vol. 11237, pp. 113–137. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03769-7_8

    Chapter  Google Scholar 

  5. Azzopardi, S., Piterman, N., Schneider, G.: Incorporating monitors in reactive synthesis without paying the price. In: Hou, Z., Ganesh, V. (eds.) ATVA 2021. LNCS, vol. 12971, pp. 337–353. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-88885-5_22

    Chapter  Google Scholar 

  6. Bloem, R., Könighofer, B., Könighofer, R., Wang, C.: Shield synthesis: - runtime enforcement for reactive systems. In: Baier, C., Tinelli, C. (eds.) TACAS 2015. LNCS, vol. 9035, pp. 533–548. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46681-0_51

    Chapter  MATH  Google Scholar 

  7. Cavezza, D.G., Alrajeh, D., György, A.: Minimal assumptions refinement for realizable specifications. In: FormaliSE’20, pp. 66–76. ACM (2020). https://doi.org/10.1145/3372020.3391557

  8. Chatterjee, K., Henzinger, T.A., Jobstmann, B.: Environment assumptions for synthesis. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 147–161. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-85361-9_14

    Chapter  Google Scholar 

  9. Chimento, J.M., Ahrendt, W., Pace, G.J., Schneider, G.: StaRVOOrS : A tool for combined static and runtime verification of Java. In: Bartocci, E., Majumdar, R. (eds.) RV 2015. LNCS, vol. 9333, pp. 297–305. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23820-3_21

    Chapter  MATH  Google Scholar 

  10. Chimento, M., Ahrendt, W., Schneider, G.: Testing meets static and runtime verification. In: FormaliSE@ICSE’18, pp. 30–39. ACM (2018). https://doi.org/10.1145/3193992.3194000

  11. Colombo, C., Pace, G.J., Schneider, G.: LARVA – safer monitoring of real-time java programs (tool paper). In: SEFM’09, pp. 33–37. IEEE Computer Society (2009)

    Google Scholar 

  12. Ehlers, R., Finkbeiner, B.: Monitoring realizability. In: Khurshid, S., Sen, K. (eds.) RV 2011. LNCS, vol. 7186, pp. 427–441. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29860-8_34

    Chapter  Google Scholar 

  13. Finkbeiner, B.: Synthesis of reactive systems. In: Esparza, J., Grumberg, O., Sickert, S. (eds.) Dependable Software Systems Engineering, NATO Science for Peace and Security Series - D: Information and Communication Security, vol. 45, pp. 72–98. IOS Press (2016). https://doi.org/10.3233/978-1-61499-627-9-72

  14. Finkbeiner, B., Klein, F., Metzger, N.: Live synthesis. In: Hou, Z., Ganesh, V. (eds.) ATVA 2021. LNCS, vol. 12971, pp. 153–169. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-88885-5_11

    Chapter  Google Scholar 

  15. Havelund, K., Goldberg, A.: Verify your runs. In: Meyer, B., Woodcock, J. (eds.) VSTTE 2005. LNCS, vol. 4171, pp. 374–383. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-69149-5_40

    Chapter  Google Scholar 

  16. Jacobs, S., Klein, F., Schirmer, S.: A high-level LTL synthesis format: TLSF v1.1. In: Piskac, R., Dimitrova, R. (eds.) Proceedings Fifth Workshop on Synthesis, SYNT@CAV 2016, Toronto, Canada, 17–18 July, 2016. EPTCS, vol. 229, pp. 112–132 (2016). https://doi.org/10.4204/EPTCS.229.10

  17. Kupferman, O., Vardi, M.Y.: Model checking of safety properties. In: Halbwachs, N., Peled, D. (eds.) CAV 1999. LNCS, vol. 1633, pp. 172–183. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48683-6_17

    Chapter  Google Scholar 

  18. Leucker, M., Schallhart, C.: A brief account of runtime verification. J. Logic Alg. Prog. 78(5), 293–303 (2009)

    Article  Google Scholar 

  19. Luttenberger, M., Meyer, P.J., Sickert, S.: Practical synthesis of reactive systems from LTL specifications via parity games. Acta Informatica 57(1–2), 3–36 (2020)

    Article  MathSciNet  Google Scholar 

  20. Majumdar, R., Piterman, N., Schmuck, A.-K.: Environmentally-friendly GR(1) synthesis. In: Vojnar, T., Zhang, L. (eds.) TACAS 2019. LNCS, vol. 11428, pp. 229–246. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17465-1_13

    Chapter  Google Scholar 

  21. Mallozzi, P.: Designing Trustworthy Autonomous Systems. Ph.D. thesis, Chalmers, Sweden (2020)

    Google Scholar 

  22. Maoz, S., Ringert, J.O.: On the software engineering challenges of applying reactive synthesis to robotics. In: RoSE’18, pp. 17–22 (2018)

    Google Scholar 

  23. Maoz, S., Ringert, J.O.: Spectra: a specification language for reactive systems. Softw. Syst. Model. 20(5), 1553–1586 (2021). https://doi.org/10.1007/s10270-021-00868-z

    Article  Google Scholar 

  24. Nahabedian, L., Braberman, V.A., D’Ippolito, N., Honiden, S., Kramer, J., Tei, K., Uchitel, S.: Dynamic update of discrete event controllers. IEEE Trans. Software Eng. 46(11), 1220–1240 (2020). https://doi.org/10.1109/TSE.2018.2876843

    Article  Google Scholar 

  25. Piterman, N., Pnueli, A., Sa’ar, Y.: Synthesis of reactive(1) designs. In: Emerson, E.A., Namjoshi, K.S. (eds.) VMCAI 2006. LNCS, vol. 3855, pp. 364–380. Springer, Heidelberg (2005). https://doi.org/10.1007/11609773_24

    Chapter  Google Scholar 

  26. Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: POPL’89, pp. 179–190. ACM Press (1989). https://doi.org/10.1145/75277.75293

  27. Sánchez, C., et al.: A survey of challenges for runtime verification from advanced application domains (beyond software). Formal Methods in System Design, pp. 1–57, August 2019. https://doi.org/10.1007/s10703-019-00337-w

  28. Sistla, A.P., Clarke, E.M.: The complexity of propositional linear temporal logics. J. ACM 32(3), 733–749 (1985). https://doi.org/10.1145/3828.3837

  29. Ulus, D., Belta, C.: Reactive control meets runtime verification: a case study of navigation. In: Finkbeiner, B., Mariani, L. (eds.) RV 2019. LNCS, vol. 11757, pp. 368–374. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-32079-9_21

    Chapter  Google Scholar 

  30. Wong, K.W., Ehlers, R., Kress-Gazit, H.: Correct high-level robot behavior in environments with unexpected events. In: Robotics: Science and Systems X (2014). https://doi.org/10.15607/RSS.2014.X.012

  31. Yoon, H., Chou, Y., Chen, X., Frew, E., Sankaranarayanan, S.: Predictive runtime monitoring for linear stochastic systems and applications to geofence enforcement for UAVs. In: Finkbeiner, B., Mariani, L. (eds.) RV 2019. LNCS, vol. 11757, pp. 349–367. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-32079-9_20

    Chapter  Google Scholar 

  32. Zudaire, S., Gorostiaga, F., Sánchez, C., Schneider, G., Uchitel, S.: Assumption monitoring using runtime verification for uav temporal task plan executions. In: ICRA 2021, pp. 6824–6830. IEEE (2021). https://doi.org/10.1109/ICRA48506.2021.9561671

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gerardo Schneider .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Azzopardi, S., Piterman, N., Schneider, G. (2022). Runtime Verification Meets Controller Synthesis. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation. Verification Principles. ISoLA 2022. Lecture Notes in Computer Science, vol 13701. Springer, Cham. https://doi.org/10.1007/978-3-031-19849-6_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-19849-6_22

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-19848-9

  • Online ISBN: 978-3-031-19849-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics