Fault Localization in Multi-Threaded C Programs using Bounded Model Checking

Erickson H. da S. Alves, Lucas C. Cordeiro, Eddie B. de Lima Filho

Research output: Contribution to journalArticlepeer-review


Software debugging is a very time-consuming process, which is even worse for multi-threaded programs, due to the non-deterministic behavior of thread-scheduling algorithms. However, the debugging time may be greatly reduced, if automatic methods are used for localizing faults. In this study, a new method for fault localization, in multi-threaded C programs, is proposed. It transforms a multi-threaded program into a corresponding sequential one and then uses a fault-diagnosis method suitable for this type of program, in order to localize faults. The code transformation is implemented with rules and context switch information from counterexamples, which are typically generated by bounded model checkers. Experimental results show that the proposed method is effective, in such a way that sequential fault localization methods can be extended to multi-threaded programs.
Original languageEnglish
Pages (from-to)96-101
JournalBrazilian Symposium on Computing System Engineering : proceedings
Publication statusPublished - 2015


  • Multi-threaded Software
  • Bounded Model Checking
  • Fault Localization


Dive into the research topics of 'Fault Localization in Multi-Threaded C Programs using Bounded Model Checking'. Together they form a unique fingerprint.

Cite this