Handbook of Practical Logic and Automated Reasoning by John Harrison