Application of formal verification to the lane change module of an autonomous vehicle
Paper in proceedings, 2018

For autonomous vehicles correct behavior is of the utmost importance, as unexpected incorrect behavior can have catastrophic outcomes. However, as with any large-scale software development, it is not easy to get the system correct. As the system is made up of multiple sub-modules that interact with each other, unexpected behavior can arise from incorrect interactions when one module may have unfulfilled expectations on the other. This paper describes how formal verification was applied to the lane change module of the decision and control software (under development) for an autonomous vehicle. The module was manually modelled as an extended finite-state machine, as were some of the requirements. When applying the Supremica software to perform the formal verification, some bugs were discovered in the model. Setting up additional unit tests triggering the incorrect behavior showed that this behavior was also present within the actual code. For some of the errors, applied corrections resulted in the absence of the particular error, thus demonstrating the power of true formal verification.

Compositional verification

Model checking

Discrete event systems

Supervisory control theory


Extended finite-state machines


Anton Zita

Volvo Cars

Sahar Mohajerani

Volvo Cars

Martin Fabian

Chalmers, Electrical Engineering, Systems and control, Automation

IEEE International Conference on Automation Science and Engineering

21618070 (ISSN) 21618089 (eISSN)

Vol. 2017-August 932-937

13th IEEE Conference on Automation Science and Engineering, CASE 2017
Xi'an, China,

Subject Categories

Embedded Systems

Computer Science

Computer Systems



More information

Latest update

2/3/2020 1