Formal Verification of a Rover Anti-collision System

In this paper, we integrate inductive proof, bounded model checking, test case generation and equivalence proof techniques to verify an embedded system. This approach is implemented using the Systerel Smart Solver (S3) toolset. It is applied to verify properties at system, software, and code levels. The verification process is illustrated on an anti-collision system (ARP for Automatic Rover Protection) implemented on-board a rover. Focus is placed on the verification of safety and functional properties and the proof of equivalence between the design model and the generated code.

[1]  Ning Ge,et al.  Industrial grade model checking: use Cases, constraints, tools and applications , 2016 .

[2]  Koen Claessen,et al.  SAT-Based Verification without State Space Traversal , 2000, FMCAD.

[3]  Peter Csaba Ölveczky,et al.  PALS: Physically Asynchronous Logically Synchronous Systems , 2009 .

[4]  Stavros Tripakis,et al.  From simulink to SCADE/lustre to TTA: a layered approach for distributed embedded applications , 2003 .

[5]  Kenneth L. McMillan,et al.  Interpolation and SAT-Based Model Checking , 2003, CAV.

[6]  Georg Weissenbacher,et al.  Counterexample to Induction-Guided Abstraction-Refinement (CTIGAR) , 2014, CAV.

[7]  Pierre Roux,et al.  Closed loop analysis of control command software , 2015, HSCC.

[8]  Peter Csaba Ölveczky,et al.  Formalization and Correctness of the PALS Architectural Pattern for Distributed Real-Time Systems , 2010, ICFEM.

[9]  Victor W. Marek,et al.  Satisfiability and Computing van der Waerden Numbers , 2003, Electron. J. Comb..

[10]  John M. Rushby,et al.  Integrated Formal Verification: Using Model Checking with Automated Abstraction, Invariant Generation, and Theorem Proving , 1999, SPIN.

[11]  Mary Sheeran,et al.  Checking Safety Properties Using Induction and a SAT-Solver , 2000, FMCAD.

[12]  Albert Benveniste,et al.  The synchronous approach to reactive and real-time systems , 1991 .

[13]  Eric Jenn,et al.  An Experiment on Exploiting Virtual Platforms for the Development of Embedded Equipments , 2016 .

[14]  Pascal Raymond,et al.  The synchronous data flow programming language LUSTRE , 1991, Proc. IEEE.

[15]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.