Natural and formal languages I'm going to have to take the course Logic for Computer Science at some point and everyone says both the book and the lectures are horrible.
I'm looking for a book that covers the course material in a manner understandable to a first / second year compSci student :

Topics: Introduction – natural and formal languages; The propositional
  language; Propositional calculus; The predicate language; Predicate
  calculus and its completeness; The incompleteness of arithmetic;
  Multi-sorted logic and second-order logic; Herbrand term models;
  Logical foundation for databases; Modal and temporal logic for program
  verification.

 A: Computability and Logic by Boolos, Burgess, and Jefferey covers all of the material in your course and is written for people without a strong background or interest in mathematics. It's also very popular. I've personally only skimmed parts of it. A list of errata and hints for odd-numbered solutions is available from one of the authors.
The best introduction to logic that you could hope for is Hodges' Logic. He's hilarious, an amazing expositor, and there are solutions to every problem in the back, so it's perfect for self-study. It covers propositional and predicate logic and a few other topics, which is a big chunk of your course but not all of it. It is, however, the first chunk and the most important to understand well. I would get this and read it for fun before looking at any others. It's ~$13, small, and reads very quickly.
If you mention some textbooks or authors that you have enjoyed, I can possibly make more recommendations.
Cheers, Rachel
A: Check this book by Howard Pospesel and Functional Programming by Greg Michaelson. I know these are good.  
