Abstract
Formal verification efforts in the area of robotics are still comparatively scarce. In this paper we report on our experiences with one such effort, which was concerned with designing, implementing and certifying a safety function for autonomous vehicles and robots. We outline the algorithm which was specifically designed with safety through formal verification in mind, and present our verification methodology, which is based on formal proof and verification using the theorem prover Isabelle. The necessary normative measures that are covered are discussed. The algorithm and our methodology have been certified for use in applications up to SIL 3 of IEC61508-3 by a certification authority. Throughout, issues we recognised as being important for a successful application of formal methods in the domain at hand are highlighted. These pertain to the development process, the abstraction level at which specifications should be formulated, and the interplay between simulation and verification, among others.
This work was funded by the German Federal Ministry of Education and Research under grants 01 IM F02 A and 01IS09044B.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Barnes, J., Chapman, R., Johnson, R., Widmaier, J., Cooper, D., Everett, B.: Engineering the tokeneer enclave protection software. In: ISSSE 2006, IEEE Computer Society, Los Alamitos (2006)
Baudin, P., Filliâtre, J.-C., Marché, C., Monate, B., Moy, Y., Prevosto, V.: ACSL: ANSI C specification language (October 2008), Version 1.4, http://frama-c.cea.fr/download/acsl_1.4.pdf
Boldo, S., Filliâtre, J.-C.: Formal verification of floating-point programs. In: ARITH18, Montpellier, France, June 2007, IEEE Computer Society, Los Alamitos (2007)
Burdy, L., Cheon, Y., Cok, D.R., Ernst, M.D., Kiniry, J.R., Leavens, G.T., Leino, K.R.M., Poll, E.: An overview of JML tools and applications. Int. J. STTT 7(3), 212–232 (2005)
Cohen, E., Dahlweid, M., Hillebrand, M., Leinenbach, D., Moskal, M., Santen, T., Schulte, W., Tobies, S.: VCC: A practical system for verifying concurrent C. In: Berghofer, S., Nipkow, T., Urban, C., Wenzel, M. (eds.) Theorem Proving in Higher Order Logics. LNCS, vol. 5674, pp. 23–42. Springer, Heidelberg (2009)
Frese, U., Hausmann, D., Lüth, C., Täubig, H., Walter, D.: The importance of being formal. In: SafeCert 2008. ENTCS, Elsevier Science, Amsterdam (2008)
Haddadin, S., Albu-Schaffer, A., Hirzinger, G.: Requirements for safe robots: Measurements, analysis and new insights. Int. J. Robot. Res. 28(11-12), 1507–1527 (2009)
Heitmeyer, C., Jeffords, R., Bharadwaj, R., Archer, M.: RE theory meets software practice: Lessons from the software development trenches. In: RE 2007, pp. 265–268. IEEE Computer Society, Los Alamitos (2007)
Hoare, C.: Viewpoint retrospective: an axiomatic basis for computer programming. Commun. ACM 52(10), 30–32 (2009)
IEC. IEC 61508 – Functional safety of electrical/ electronic/ programmable electronic safety-related systems. IEC, Geneva, Switzerland (2000)
Krishna, K.M., Alami, R., Simeon, T.: Safe proactive plans and their execution. Robot. Auton. Syst. 54(3), 244–255 (2006)
Lüth, C., Walter, D.: Certifiable specification and verification of C programs. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 419–434. Springer, Heidelberg (2009)
Meikle, L.I., Fleuriot, J.D.: Mechanical theorem proving in computational geometry. In: Hong, H., Wang, D. (eds.) ADG 2004. LNCS (LNAI), vol. 3763, pp. 1–18. Springer, Heidelberg (2006)
Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL — A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002)
Peleska, J.: A unified approach to abstract interpretation, formal verification and testing of C/C++ modules. In: Fitzgerald, J.S., Haxthausen, A.E., Yenigun, H. (eds.) ICTAC 2008. LNCS, vol. 5160, pp. 3–22. Springer, Heidelberg (2008)
Tuch, H.: Formal verification of C systems code. J. Autom. Reasoning 42(2-4), 125–187 (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Walter, D., Täubig, H., Lüth, C. (2010). Experiences in Applying Formal Verification in Robotics. In: Schoitsch, E. (eds) Computer Safety, Reliability, and Security. SAFECOMP 2010. Lecture Notes in Computer Science, vol 6351. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15651-9_26
Download citation
DOI: https://doi.org/10.1007/978-3-642-15651-9_26
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-15650-2
Online ISBN: 978-3-642-15651-9
eBook Packages: Computer ScienceComputer Science (R0)