I have to read Logic in Computer Science: Modelling and Reasoning about Systems by M. Huth and M. Ryan for a class next semester. However Amazon reviews say it's hard to read unless you're an advanced student and I'm very new to computer science. Is there any other book I may read before I approach this one that would make it easier to understand?
From the Preface of the 2nd Edition:
The book requires that students know the basics of elementary arithmetic and naive set theoretic concepts and notation. The core material of Chapter 1 (everything except Sections 1.4.3 to 1.6.2) is essential for all of the chapters that follow. Other than that, only Chapter 6 depends on Chapter 3 and a basic understanding of the static scoping rules covered in Chapter 2 – although one may easily cover Sections 6.1 and 6.2 without having done Chapter 3 at all.
Of course, having elementary prerequisites and being easy are two different things. I've only read the first two chapters as a way to self-teach some logic so I can't comment on the 'latter' material.
The cool thing is that you're only obligated to read the first chapter and then you can proceed to read most of the other chapters in whichever order suits you. If you want a free supporting material, there's the Stanford Logic MOOC and the Mathematics for Computer Science course from MIT.