Guide to Discrete Mathematics

by Gerard O'Regan

Published 26 September 2016
This stimulating textbook presents a broad and accessible guide to the fundamentals of discrete mathematics, highlighting how the techniques may be applied to various exciting areas in computing. The text is designed to motivate and inspire the reader, encouraging further study in this important skill.
Features: provides an introduction to the building blocks of discrete mathematics, including sets, relations and functions; describes the basics of number theory, the techniques of induction and recursion, and the applications of mathematical sequences, series, permutations, and combinations; presents the essentials of algebra; explains the fundamentals of automata theory, matrices, graph theory, cryptography, coding theory, language theory, and the concepts of computability and decidability; reviews the history of logic, discussing propositional and predicate logic, as well as advanced topics; examines the field of software engineering, describing formal methods; investigates probability and statistics.

    This textbook presents an introduction to the mathematical foundations of software engineering.  It presents the rich applications of mathematics in areas such as error-correcting codes, cryptography, the safety and security critical fields, the banking and insurance fields, as well as traditional engineering applications. 

    Topics and features:

    • Addresses core mathematics for critical thinking and problem solving
    • Discusses propositional and predicate logic and various proof techniques to demonstrate the correctness of a logical argument.
    • Examines number theory and its applications to cryptography
    • Considers the underlying mathematics of error-correcting codes
    • Discusses graph theory and its applications to modelling networks
    • Reviews tools to support software engineering mathematics, including automated and interactive theorem provers and model checking
    • Discusses financial software engineering, including simple and compound interest, probability and statistics, and operations research
    • Discusses software reliability and dependability and explains formal methods used to derive a program from its specification
    • Discusses calculus, matrices, vectors, complex numbers, and quaternions, as well as applications to graphics and robotics
    • Includes key learning topics, summaries, and review questions in each chapter, together with a useful glossary

    This practical and easy-to-follow textbook/reference is ideal for computer science students seeking to learn how mathematics can assist them in building high-quality and reliable software on time and on budget. The text also serves as an excellent self-study primer for software engineers, quality professionals, and software managers.