“…A technique that has received particular attention is that of finite state or typestate verification (e.g., see [24,23,19,5,7,3,8,12,11,16,1]). In this model, objects of a given type may exist in one of several states; the operations permitted on an object depend on the state of the object, and the operations may potentially alter the state of the object.…”