Inductive Verification of Hybrid Automata with Strongest Postcondition Calculus

Safety verification of hybrid systems is a key technique in developing embedded systems that have a strong coupling with the physical environment. We propose an automated logical analytic method for verifying a class of hybrid automata. The problems are more general than those solved by the existing model checkers: our method can verify models with symbolic parameters and nonlinear equations as well. First, we encode the execution trace of a hybrid automaton as an imperative program. Its safety property is then translated into proof obligations by strongest postcondition calculus. Finally, these logic formulas are discharged by state-of-the-art arithmetic solvers (e.g., Mathematica). Our proposed algorithm efficiently performs inductive reasoning by unrolling the execution for some steps and generating loop invariants from verification failures. Our experimental results along with examples taken from the literature show that the proposed approach is feasible.

[1]  André Platzer,et al.  KeYmaera: A Hybrid Theorem Prover for Hybrid Systems (System Description) , 2008, IJCAR.

[2]  Larry Wos,et al.  What Is Automated Reasoning? , 1987, J. Autom. Reason..

[3]  Ashish Tiwari,et al.  Automated Symbolic Reachability Analysis; with Application to Delta-Notch Signaling Automata , 2003, HSCC.

[4]  Thomas A. Henzinger,et al.  The Algorithmic Analysis of Hybrid Systems , 1995, Theor. Comput. Sci..

[5]  Edsger W. Dijkstra,et al.  Guarded commands, nondeterminacy and formal derivation of programs , 1975, Commun. ACM.

[6]  Henny B. Sipma,et al.  Constructing invariants for hybrid systems , 2008, Formal Methods Syst. Des..

[7]  Harald Ruess,et al.  Bounded Model Checking and Induction: From Refutation to Verification (Extended Abstract, Category A) , 2003, CAV.

[8]  Erika Ábrahám,et al.  Verification of hybrid systems: formalization and proof rules in PVS , 2001, Proceedings Seventh IEEE International Conference on Engineering of Complex Computer Systems.

[9]  Ashish Tiwari,et al.  HybridSAL Relational Abstracter , 2012, CAV.

[10]  Huibiao Zhu,et al.  Complementary Methodologies for Developing Hybrid Systems with Event-B , 2012, ICFEM.

[11]  Huibiao Zhu,et al.  Formalizing Hybrid Systems with Event-B , 2012, ABZ.

[12]  Ajitha Rajan,et al.  Requirements Coverage as an Adequacy Measure for Conformance Testing , 2008, ICFEM.

[13]  André Platzer,et al.  Logical Analysis of Hybrid Systems - A Complete Answer to a Complexity Challenge , 2012, DCFS.

[14]  Thomas A. Henzinger,et al.  HYTECH: a model checker for hybrid systems , 1997, International Journal on Software Tools for Technology Transfer.

[15]  Henny B. Sipma,et al.  Deductive Verification of Hybrid Systems Using STeP , 1998, HSCC.

[16]  Ashish Tiwari,et al.  Generating Polynomial Invariants for Hybrid Systems , 2005, HSCC.

[17]  Sumit Kumar Jha,et al.  Reachability for Linear Hybrid Automata Using Iterative Relaxation Abstraction , 2007, HSCC.

[18]  Lauretta O. Osho,et al.  Axiomatic Basis for Computer Programming , 2013 .

[19]  Goran Frehse,et al.  PHAVer: algorithmic verification of hybrid systems past HyTech , 2005, International Journal on Software Tools for Technology Transfer.

[20]  Ichiro Hasuo,et al.  Exercises in Nonstandard Static Analysis of Hybrid Systems , 2012, CAV.

[21]  George J. Pappas,et al.  Discrete abstractions of hybrid systems , 2000, Proceedings of the IEEE.

[22]  Eric Goubault,et al.  HybridFluctuat: A Static Analyzer of Numerical Programs within a Continuous Environment , 2009, CAV.

[23]  Sarfraz Khurshid,et al.  Proceedings of the Third international conference on Abstract State Machines, Alloy, B, VDM, and Z , 2012 .

[24]  Thomas A. Henzinger,et al.  Hybrid Systems: Computation and Control , 1998, Lecture Notes in Computer Science.

[25]  Thomas A. Henzinger,et al.  The theory of hybrid automata , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.