Bounded model checking of C plus plus programs based on the Qt cross-platform framework

Felipe R. Monteiro, Mario A. P. Garcia, Lucas C. Cordeiro, Eddie B. de Lima Filho

Research output: Contribution to journalArticlepeer-review

181 Downloads (Pure)


The software development process for embedded systems is getting faster and faster, which generally incurs an increase in the associated complexity. As a consequence, technology companies tend to invest in fast and automatic verification mechanisms, to create robust systems and reduce product recall rates. In addition, further development‐time reduction and system robustness can be achieved through cross‐platform frameworks, such as Qt, which favor the reliable port of software stacks to different devices. Based on that, the present paper proposes a simplified version of the Qt framework, which is integrated into a checker based on satisfiability modulo theories (SMT), known as the Efficient SMT‐based Context‐Bounded Model Checker, for verifying actual Qt‐based applications, with a success rate of 89%, for the developed benchmark suite. Furthermore, the simplified version of the Qt framework, named as Qt Operational Model, was also evaluated using other state‐of‐the‐art verifiers for C++ programs. In fact, Qt Operational Model was combined with 2 different verification approaches: explicit‐state model checking and also symbolic (bounded) model checking, during the experimental evaluation, which highlights its flexibility. The proposed methodology is the first one to formally verify Qt‐based applications, which has the potential to devise new directions for software verification of portable code.
Original languageEnglish
JournalSoftware Testing, Verification and Reliability
Issue number3
Early online date2 Mar 2017
Publication statusPublished - May 2017


  • bounded model checking
  • formal verification
  • Qt framework
  • software engineering


Dive into the research topics of 'Bounded model checking of C plus plus programs based on the Qt cross-platform framework'. Together they form a unique fingerprint.

Cite this