. . . . "As should now be apparent to those skilled in the art, predicate abstraction is a powerful technique for extracting finite-state models from often complex source code." .