remove cruft
clean
notation to look like program
better proof