Skip to main content

Integrated Simulation and Formal Verification of a Simple Autonomous Vehicle

  • Conference paper
  • First Online:
Software Engineering and Formal Methods (SEFM 2017)

Abstract

This paper presents a proof-of-concept application of an approach to system development based on the integration of formal verification and co-simulation. A simple autonomous vehicle has the task of reaching an assigned straight path and then follow it, and it can be controlled by varying its turning speed. The correctness of the proposed control law has been formalized and verified by interactive theorem proving with the Prototype Verification System. Concurrently, the system has been co-simulated using the Prototype Verification System and the MathWorks Simulink tool: The vehicle kinematics have been simulated in Simulink, whereas the controller has been modeled in the logic language of the Prototype Verification System and simulated with the interpreter for the same language available in the theorem proving environment. With this approach, co-simulation and formal verification corroborate each other, thus strengthening developers’ confidence in their analysis.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

References

  1. Attarzadeh-Niaki, S.H., Sander, I.: Co-simulation of embedded systems in a heterogeneous MoC-based modeling framework. In: 2011 6th IEEE International Symposium on Industrial and Embedded Systems, pp. 238–247, June 2011. https://doi.org/10.1109/SIES.2011.5953667

  2. Bernardeschi, C., Cassano, L., Domenici, A., Sterpone, L.: ASSESS: a simulator of soft errors in the configuration memory of SRAM-based FPGAs. IEEE Trans. Comput. Aided Des. Integr. Circ. Syst. 33(9), 1342–1355 (2014). https://doi.org/10.1109/TCAD.2014.2329419

    Article  Google Scholar 

  3. Bernardeschi, C., Cassano, L., Cimino, M.G., Domenici, A.: GABES: a genetic algorithm based environment for SEU testing in SRAM-FPGAs. J. Syst. Archit. 59(10, Part D), 1243–1254 (2013). https://doi.org/10.1016/j.sysarc.2013.10.006

    Article  Google Scholar 

  4. Bernardeschi, C., Domenici, A.: Verifying safety properties of a nonlinear control by interactive theorem proving with the Prototype Verification System. Inf. Process. Lett. 116(6), 409–415 (2016). https://doi.org/10.1016/j.ipl.2016.02.001

    Article  MathSciNet  MATH  Google Scholar 

  5. Bernardeschi, C., Domenici, A., Masci, P.: A PVS-simulink integrated environment for model-based analysis of cyber-physical systems. IEEE Trans. Softw. Eng. PP(99), 1 (2017). https://doi.org/10.1109/TSE.2017.2694423

    Article  Google Scholar 

  6. Blochwitz, T., Otter, M., Arnold, M., Bausch, C., Clauß, C., Elmqvist, H., Junghanns, A., Mauß, J., Monteiro, M., Neidhold, T., Neumerkel, D., Olsson, H., Peetz, J.V., Wolf, S.: The functional mockup interface for tool independent exchange of simulation models. In: Proceedings of the 8th International Modelica Conference, pp. 105–114. Linköping University Electronic Press (2011). https://doi.org/10.3384/ecp11063105

  7. Carreño, V., Muñoz, C.: Aircraft trajectory modeling and alerting algorithm verification. In: Aagaard, M., Harrison, J. (eds.) TPHOLs 2000. LNCS, vol. 1869, pp. 90–105. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-44659-1_6

    Chapter  Google Scholar 

  8. Di Vito, B.: Manip User’s Guide, Version 1.3. http://shemesh.larc.nasa.gov/people/bld/ftp/manip-guide-1.3.pdf. Accessed 18 Aug 2015

  9. Dutertre, B.: Elements of mathematical analysis in PVS. In: Goos, G., Hartmanis, J., van Leeuwen, J., von Wright, J., Grundy, J., Harrison, J. (eds.) TPHOLs 1996. LNCS, vol. 1125, pp. 141–156. Springer, Heidelberg (1996). https://doi.org/10.1007/BFb0105402

    Chapter  Google Scholar 

  10. Fitzgerald, J.S., Larsen, P.G., Verhoef, M.: Vienna Development Method. Wiley, Hoboken (2007). https://doi.org/10.1002/9780470050118.ecse447

    Google Scholar 

  11. Fulton, N., Mitsch, S., Quesel, J.-D., Völp, M., Platzer, A.: KeYmaera X: an axiomatic tactical theorem prover for hybrid systems. In: Felty, A.P., Middeldorp, A. (eds.) CADE 2015. LNCS (LNAI), vol. 9195, pp. 527–538. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21401-6_36

    Chapter  Google Scholar 

  12. Gomes, C., Thule, C., Broman, D., Larsen, P.G., Vangheluwe, H.: Co-simulation: state of the art. ACM Comput. Surv. (2017, to appear)

    Google Scholar 

  13. Gottliebsen, H.: Transcendental functions and continuity checking in PVS. In: Aagaard, M., Harrison, J. (eds.) TPHOLs 2000. LNCS, vol. 1869, pp. 197–214. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-44659-1_13

    Chapter  Google Scholar 

  14. Karnopp, D., Rosenberg, R.: Analysis and Simulation of Multiport Systems; The Bond Graph Approach to Physical System Dynamics. M.I.T. Press, Cambridge (1968)

    Google Scholar 

  15. Larsen, P.G., Fitzgerald, J., Woodcock, J., Fritzson, P., Brauer, J., Kleijn, C., Lecomte, T., Pfeil, M., Green, O., Basagiannis, S., Sadovykh, A.: Integrated tool chain for model-based design of Cyber-Physical Systems: the INTO-CPS project. In: 2016 2nd International Workshop on Modelling, Analysis, and Control of Complex CPS (CPS Data), pp. 1–6, April 2016. https://doi.org/10.1109/CPSData.2016.7496424

  16. Larsen, P.G., Gamble, C., Pierce, K., Ribeiro, A., Lausdahl, K.: Support for co-modelling and co-simulation: the crescendo tool. In: Fitzgerald, J., Larsen, P.G., Verhoef, M. (eds.) Collaborative Design for Embedded Systems. Co-modelling and Co-simulation, pp. 97–114. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-54118-6_5

    Chapter  Google Scholar 

  17. Lee, E.A., Sangiovanni-Vincentelli, A.: A framework for comparing models of computation. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. 17(12), 1217–1229 (1998). https://doi.org/10.1109/43.736561

    Article  Google Scholar 

  18. Masci, P., Oladimeji, P., Zhang, Y., Jones, P., Curzon, P., Thimbleby, H.: PVSio-web 2.0: joining PVS to HCI. In: Kroening, D., Păsăreanu, C.S. (eds.) CAV 2015. LNCS, vol. 9206, pp. 470–478. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21690-4_30

    Chapter  Google Scholar 

  19. Muñoz, C.: Rapid prototyping in PVS. Technical Report, NIA 2003-03, NASA/CR-2003-212418, National Institute of Aerospace, Hampton, VA, USA (2003)

    Google Scholar 

  20. Muñoz, C., Narkawicz, A., Hagen, G., Upchurch, J., Dutle, A., Consiglio, M.: DAIDALUS: detect and avoid alerting logic for unmanned systems. In: Proceedings of the 34th Digital Avionics Systems Conference (DASC 2015) (2015)

    Google Scholar 

  21. Oladimeji, P., Masci, P., Curzon, P., Thimbleby, H.: PVSio-web: a tool for rapid prototyping device user interfaces in PVS. In: FMIS2013, 5th International Workshop on Formal Methods for Interactive Systems, London, UK, 24 June 2013. https://doi.org/10.14279/tuj.eceasst.69.963.944

  22. Owre, S., Rajan, S., Rushby, J.M., Shankar, N., Srivas, M.: PVS: combining specification, proof checking, and model checking. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 411–414. Springer, Heidelberg (1996). https://doi.org/10.1007/3-540-61474-5_91

    Chapter  Google Scholar 

  23. Owre, S., Rushby, J.M., Shankar, N., Srivas, M.K.: A tutorial on using PVS for hardware verification. In: Kumar, R., Kropf, T. (eds.) TPCD 1994. LNCS, vol. 901, pp. 258–279. Springer, Heidelberg (1995). https://doi.org/10.1007/3-540-59047-1_53

    Chapter  Google Scholar 

  24. Platzer, A.: Logics of dynamical systems. In: Proceedings of the 2012 27th Annual IEEE/ACM Symposium on Logic in Computer Science, LICS 2012, pp. 13–24. IEEE Computer Society, Washington (2012). https://doi.org/10.1109/LICS.2012.13

  25. Sanders, W.H., Meyer, J.F.: Stochastic activity networks: formal definitions and concepts*. In: Brinksma, E., Hermanns, H., Katoen, J.-P. (eds.) EEF School 2000. LNCS, vol. 2090, pp. 315–343. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44667-2_9

    Chapter  Google Scholar 

  26. Smullyan, R.M.: First-Order Logic. Dover Publications, New York (1995)

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andrea Domenici .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Domenici, A., Fagiolini, A., Palmieri, M. (2018). Integrated Simulation and Formal Verification of a Simple Autonomous Vehicle. In: Cerone, A., Roveri, M. (eds) Software Engineering and Formal Methods. SEFM 2017. Lecture Notes in Computer Science(), vol 10729. Springer, Cham. https://doi.org/10.1007/978-3-319-74781-1_21

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-74781-1_21

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-74780-4

  • Online ISBN: 978-3-319-74781-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics