Author_Institution :
Dept. of Comput. Sci. & Technol., Nanjing Univ., Nanjing, China
Abstract :
Instead of encoding the bounded state space of a linear hybrid automaton(LHA) in given threshold k into SMT formulas then solving them by SMT solvers, the authors proposed a different approach to handle the bounded reachability verification(BMC) of LHA in the previous work. First, the reachability specification along one abstract path in LHA can be checked by linear programming (LP). Then, all the abstract paths under the threshold can be checked one by one by depth-first-search (DFS) traversing. This approach was implemented in a prototype tool BACH, and the experiment result shows it is efficient. As BACH uses DFS to traverse the bounded state space, clearly, if DFS traverses more quickly, the BMC can be finished more efficiently. Nevertheless, in many cases, the path segments which make the system infeasible are hidden “deeply” in the model or have many entry points which makes the DFS difficult to find them or has to traverse them many times. This burdens the DFS-style BMC approach a lot. To handle this problem, in this paper, the authors propose a backward-DFS BMC approach for LHA. First, reverse the graph structure of LHA. Then, conduct the DFS-style BMC on the reversed LHA. In this way, the “deep” path segments in the forward-DFS can be found very quickly to prune the DFS tree which is needed to be traversed. This backward-DFS approach is implemented into BACH. The experiment shows the performance of BACH is optimized significantly to handle large cases.
Keywords :
automata theory; formal verification; graph theory; linear programming; reachability analysis; state-space methods; tree searching; BACH performance; DFS traversing; DFS tree; DFS-style BMC approach; LHA graph structure; SMT formulas; SMT solvers; abstract paths; backward bounded model checking; backward-DFS BMC approach; bounded reachability verification; bounded state space encoding; deep path segments; depth-first-search traversing; forward bounded model checking; linear hybrid automata; linear programming; prototype tool BACH; reachability specification; Abstracts; Automata; Computational modeling; Design automation; Linear programming; Model checking; Vehicles;