About this book
Introduction
Mathematics plays a key role in computer science, some researchers would consider computers as nothing but the physical embodiment of mathematical systems. And whether you are designing a digital circuit, a computer program or a new programming language, you need mathematics to be able to reason about the design  its correctness, robustness and dependability. This book covers the foundational mathematics necessary for courses in computer science.
The common approach to presenting mathematical concepts and operators is to define them in terms of properties they satisfy, and then based on these definitions develop ways of computing the result of applying the operators and prove them correct. This book is mainly written for computer science students, so here the author takes a different approach: he starts by defining ways of calculating the results of applying the operators and then proves that they satisfy various properties. After justifying his underlying approach the author offers detailed chapters covering propositional logic, predicate calculus, sets, relations, discrete structures, structured types, numbers, and reasoning about programs.
The book contains chapter and section summaries, detailed proofs and many endofsection exercises  key to the learning process. The book is suitable for undergraduate and graduate students, and although the treatment focuses on areas with frequent applications in computer science, the book is also suitable for students of mathematics and engineering.Keywords
Bibliographic information
 Book Title Mathematics of Discrete Structures for Computer Science

Authors
Gordon J. Pace
 DOI https://doi.org/10.1007/9783642298400
 Copyright Information SpringerVerlag Berlin Heidelberg 2012
 Publisher Name Springer, Berlin, Heidelberg
 eBook Packages Computer Science Computer Science (R0)
 Hardcover ISBN 9783642298394
 Softcover ISBN 9783642429880
 eBook ISBN 9783642298400
 Edition Number 1
 Number of Pages XVI, 296
 Number of Illustrations 0 b/w illustrations, 0 illustrations in colour

Topics
Mathematics of Computing
Theory of Computation
Mathematical Logic and Foundations
 Buy this book on publisher's site
Reviews
From the reviews:
"Pace’s Mathematics of Discrete Structures for Computer Science is a delightful book, written to be read and enjoyed as it moves from justifying the central place of maths in computing, through the usual set theory and logic, on to numbers, types and the halting problem." [Harold Thimbleby, Times Higher Education Supplement, 06/13]
“Discrete mathematics is as essential for computer science as calculus is for physics. … this book by Pace (Univ. of Malta) focuses on topics which are central to computer science, including the formal definition of data types and the use of induction to prove correctness. … is most useful for future courses in programming languages, particularly those that use a language like Haskell. The book includes many helpful worked examples. Summing Up: Recommended. Lowerdivision undergraduates through researchers/faculty.” [P. Cull, Choice, Vol. 50 (8), April, 2013]
“There is no doubt that discrete mathematics is a mandatory component of any good computer science program. Therefore, a textbook for this area is always very useful. … this book particularly emphasizes the difference between the algorithmic and the descriptive approach. … topics are well presented and can be used immediately for teaching such a course. It is also very helpful that many exercises are included into the text and support the learning process.” [Christian Posthoff, Zentralblatt MATH, Vol. 1254, 2013]
“The overwhelming majority of the subjects is discussed from an algorithmic viewpoint, considering how we could use this or that result while writing code for a computer. … you want to teach a course focusing on how to use discrete structures in computer science, then the book is a concise, lowcost alternative to textbooks in discrete mathematics.” (Miklós Bóna, MAA Reviews, December, 2012)
“The standard topicsincluding propositional logic, predicate calculus, sets, relations, discrete structures, defining new structured types, numbers, and reasoning about programsare covered … . As such, the book is suitable for students who understand algebra and can program. … Teachers who use this text have noted how enthusiastically their students discuss its ideas in class. … Overall, the book is well made.” [Richard Botting, ACM Computing Reviews, December, 2012]
"Profound knowledge and skills in discrete mathematics are mandatory for a well educated computer scientist. Therefore a corresponding curriculum typically requires at least a basic course on this subject. This textbook, which is based on the lectures given by the author at the University of Malta, is a perfect companion for every student taking such a course. ... Besides a thorough formal presentation the book always gives a convincing motivation for studying the corresponding structures and explains the main ideas using illustrations. A well chosen set of exercises rounds off each topic. After studying the presented material a computer science student will be well prepared for further, more specialized courses." [Martin Leucker, Lübeck]