Jpf-Concurrent: An Extension of Java PathFinder for Java.util.concurrent
One of the main challenges when verifying multithreaded Java applications is the state space explosion problem. Due to thread interleavings, the number of states that the model checker has to verify can grow rapidly and impede the feasibility of verification. In the Java language, the source of thread interleavings can be the system under test as well as the Java Development Kit (JDK) itself. In this paper, the authors a method to minimize the state space explosion problem for applications verified under the Java PathFinder (JPF) model checker. Their method is based on abstracting the state of the application to a smaller domain and implementing application behavior using the Model Java Interface (MJI) of JPF.