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.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call