Modular Checking with Model Checking

  • Authors:
  • Yuusuke Hashimoto;Shin Nakajima

  • Affiliations:
  • The Graduate University for Advanced Studies and NEC Corporation, Tokyo, Japan;National Institute of Informatics and The Graduate University for Advanced Studies, Tokyo, Japan

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Automatic static checkers based on model checking, particularly SAT-based bounded model checkers, are used in industry, but they sometimes suffer from the scalability problem. Scalability can be achieved with the notions of Design by Contract(DbC) and modular checking. However, modular checking with DbC still have some problems. The method is insufficient for handling pointers to functions (function-pointers) which are abundantly used in C programs, defensive programming which is widely adopted in industrial software development projects, and re-entrancy which sometimes occurs in programs using callback functions. This paper proposes a DbC notation for the above problems and a checking method that uses behavioral subtyping to clarify the exact location where an error occurs.