A great deal of work on software maintenance focuses on source code analysis and manipulation. Code is viewed as a static entity that is – more or less – separated from the sy...
We present a new way to define the semantics of imperative synchronous languages by means of separating the control and the data flow. The control flow is defined by predicates th...
Embedded software must meet conflicting requirements such as being highly reliable, running on resource-constrained platforms, and being developed rapidly. Static program analysi...
We present new techniques for fast, accurate and scalable static data race detection in concurrent programs. Focusing our analysis on Linux device drivers allowed us to identify th...
In this paper, we present a novel approach that establishes a synergy between static and dynamic analyses for detecting memory errors in C code. We extend the standard C type syste...
Syrine Tlili, Zhenrong Yang, Hai Zhou Ling, Mourad...