More Scalable LTL Model Checking via Discovering Design-Space Dependencies (Artifact)

2018-04-12T10:23:08Z (GMT) by Rohit Dureja Kristin Yvonne Rozier
<div>This record contains a single artifact in compressed .tar.gz format, holding software and models to run the Discover Design-Space Dependencies (D<sup>3</sup>) algorithm for scalable Linear Temporal Logic (LTL) model checking on two benchmarks derived from real-world case studies. </div><div><br></div>The artifact relates to the TACAS 2018 paper:<div>Dureja, R., Rozier, K.Y.: <i>More Scalable LTL Model Checking via Discovering Design-Space Dependencies (D<sup>3</sup>)</i>. In: TACAS (2018)</div><div><br></div><div>The artifact includes the benchmarks evaluated, source code, and scripts to efficiently reproduce the results reported in the paper. Please refer to the README contained within the artifact for more detailed information.</div><div><br></div><div>The <b>D3_Artifacts </b>subdirectory contains tools, scripts, results, plots and models for experiments to demonstrate the industrial scalability of D<sup>3</sup> on NASA’s NextGen air</div><div>traffic control system (modelled by a set of 1,620 real-life, publicly-available SMV-language benchmark models with LTL specifications) and to evaluate the property-dependence analysis on real-life models of Boeing AIR Wheel Braking System.</div><div><br></div><div>D3 is implemented as a preprocessing script in ~2,000 lines of Python code (.py files). Other file types include SMV-language (.smv), related metadata files (.xml) and mapping (.map) files, command scripts (.cmd), plots in .jpg image format and documents in .html and graphical .svg formats.<br></div><div><br></div><div><div>The artifact has been thoroughly tested on the Ubuntu Virtual Machine (VM) available at:</div><div><br></div><div>Hartmanns, Arnd; Wendler, Philipp (2018). figshare. <a href=""></a><p></p></div></div><div><br></div><div><b>Background</b></div><div>Modern system design often requires comparing several models over a large design space. Different models arise out of a need to weigh different design choices, to check core capabilities of versions with varying features, or to analyze a future version against previous ones. Model checking can compare different models; however, applying model checking off-the-shelf may not scale due to the large size of the design space for today’s complex systems. We exploit relationships between different models of the same (or related) systems to optimize the modelchecking search. Our algorithm, D<sup>3</sup>, preprocesses the design space and checks fewer model-checking instances, e.g., using nuXmv. It automatically prunes the search space by reducing both the number of models to check, and the number of LTL properties that need to be checked for each model in order to provide the complete model-checking verdict for every individual model-property pair. We formalize heuristics that improve the performance of D<sup>3</sup>. We demonstrate the scalability of D<sup>3</sup> by extensive experimental evaluation, e.g., by checking 1,620 real-life models for NASA’s NextGen air traffic control system.<br></div>