This clearly written and enlightening textbook/reference provides a concise, introductory guide to the key mathematical concepts and techniques used by computer scientists. Spanning a wide range of topics – from number theory to software engineering – the book demonstrates the practical computing applications behind seemingly abstract ideas. The work of important figures such as Alan Turing and Robert Floyd are also discussed, highlighting how the theory has been informed by historical developments.
Topics and features: ideal for self-study, offering many pedagogical features such as chapter-opening key topics, chapter introductions and summaries, review questions, and a glossary; places our current state of knowledge within the context of the contributions made by early civilizations, such as the ancient Babylonians, Egyptians and Greeks; examines the building blocks of mathematics, including sets, relations and functions; presents an introduction to logic, formal methods and software engineering; explains the fundamentals of number theory, and its application in cryptography; describes the basics of coding theory, language theory, and graph theory; discusses the concept of computability and decideability; includes concise coverage of calculus, probability and statistics, matrices, complex numbers and quaternions.
This engaging and easy-to-understand book will appeal to students of computer science wishing for an overview of the mathematics used in computing, and to mathematicians curious about how their subject is applied in the field of computer science. The book will also capture the interest of the motivated general reader.
Dr. Gerard O'Regan is a CMMI software process improvement consultant with research interests including software quality and software process improvement; mathematical approaches to software quality; and the history of computing. He is the author of the Springer titles "A Brief History of Computing", "Introduction to Software Process Improvement", "Mathematical Approaches to Software Quality" and "A Practical Approach to Software Quality".