EN FR
EN FR


Section: New Results

Component-Based Architectures for On-the-Fly Verification

Compositional Model Checking

Participants : Frédéric Lang, Radu Mateescu.

We have continued our work on partial model checking following the approach proposed in [29] . Given a temporal logic formula ϕ to be evaluated on a set S of concurrent processes, partial model checking consists in transforming ϕ into another equivalent formula ϕ ' to be evaluated on a subset of S. Formula ϕ is constructed incrementally by choosing one process P in S and incorporating into ϕ the behavioral information corresponding to P – an operation called quotienting. Simplifications must be applied at each step, so as to maintain formulas at a tractable size.

In 2012, we have continued the development of our prototype tools for partial model checking of the regular alternation-free μ-calculus supporting all features of the input language of EXP.OPEN 2.1. We have also extended our work to handle useful fairness operators of alternation depth 2 in linear time, without developing the complex machinery that would be necessary to evaluate general μ-calculus formulas of alternation depth 2. A paper has been published in an international conference [15] and an extended version has been submitted to an international journal.

On-the-Fly Test Generation

Participants : Radu Mateescu, Wendelin Serwe.

In the context of the collaboration with STMicroelectronics (see §  6.5.1 and §  7.1 ), we studied techniques for testing if a (hardware) implementation is conform to a formal model written in LNT. Our approach is inspired by the theory of conformance testing [59] , as implemented for instance in TGV [51] and JTorX [33] .

We developed two prototype tools supporting conformance testing. The first tool implements a dedicated OPEN/CAESAR-compliant compiler for the particular asymmetric synchronous product of the model and the test purpose. This tool is a generic component for on-the-fly graph manipulation, taking as input two graphs and producing as output the graph of the asymmetric synchronous product. The second tool generates the complete test graph, which can be used to extract concrete test cases or to drive the test of the implementation. This tool was built from (slightly extended) existing generic components for on-the-fly graph manipulation (τ-compression and τ-confluence reductions, determinization, resolution of Boolean equation systems). The main advantage of our approach compared to existing tools is the use of LNT for test purposes, which facilitates the manipulation of data values.