Logic for Computer Science: Foundations of Automatic Theorem Proving, Second Edition (Dover Books on Computer Science)