This is a neat, complete text. The author is especially sensitive to the needs of the beginner in discrete maths who needs to get used to abstract concepts. This transition is handled very well. There is enough explanation to make you understand what is going on behind the mathematical symbols and at the same time it is not wordy. Despite this simplicity in the teaching approach, the author is able to take the reader from the elementary to quite advanced levels in each topic. There are interesting applications to the field of computer science and programming.
The exercises are designed to test your understanding and a few challenge problems are thrown in. This type of accessible difficulty in the problems builds your confidence. The solutions are quite elaborate and therefore make the book more useful.
On the whole a good, self contained book written such that you will understand each page and concept if you have a reasonable attention span. The author has made it as easy as possible