[pdf] Stephen Diehl – Reasoning about Program Behavior Algebraically | Hacker News Reader