Assignment 3

Verify your Java implementation. Use tools like, for example, (other tools may be added soon) to verify your implementation. You may also want to consider minor variations on your implementation (showing, for example, that a particular lock is essential to guarantee deadlock freedom). Write a report that discusses your verification effort.