https://sigplan.org/Awards/Dissertation/2005_gulwani.pdf