**Author**: J. K. Truss

**Publisher:**Addison Wesley Publishing Company

**ISBN:**

**Category :**Computer science

**Languages :**en

**Pages :**592

**Book Description**

KainStory.com

eBook Download Site [PDF/EPUB/KINDLE]

Discrete Mathematics for Computer Science: An Example-Based Introduction is intended for a first- or second-year discrete mathematics course for computer science majors. It covers many important mathematical topics essential for future computer science majors, such as algorithms, number representations, logic, set theory, Boolean algebra, functions, combinatorics, algorithmic complexity, graphs, and trees. Features Designed to be especially useful for courses at the community-college level Ideal as a first- or second-year textbook for computer science majors, or as a general introduction to discrete mathematics Written to be accessible to those with a limited mathematics background, and to aid with the transition to abstract thinking Filled with over 200 worked examples, boxed for easy reference, and over 200 practice problems with answers Contains approximately 40 simple algorithms to aid students in becoming proficient with algorithm control structures and pseudocode Includes an appendix on basic circuit design which provides a real-world motivational example for computer science majors by drawing on multiple topics covered in the book to design a circuit that adds two eight-digit binary numbers Jon Pierre Fortney graduated from the University of Pennsylvania in 1996 with a BA in Mathematics and Actuarial Science and a BSE in Chemical Engineering. Prior to returning to graduate school, he worked as both an environmental engineer and as an actuarial analyst. He graduated from Arizona State University in 2008 with a PhD in Mathematics, specializing in Geometric Mechanics. Since 2012, he has worked at Zayed University in Dubai. This is his second mathematics textbook.

This book serves as an introduction to computer sciences students in the undergraduate levels. It will be used as the foundation to understand the discrete mathematic in developing the logic of computer programs. Since there are also similar undergraduate computer science programmes in other local and overseas institutions, this book is expected to find wider local and international readership. Topics covered in this book include set theory and relations, functions sequence and string, propositional logic, predicate logic, matrices, graph theory and trees. As the book serves as an introductory level to computer science students, it is expected that once the students are already familiar with the presented contents, it will enable them to understand the advanced topics in computer science such as advanced theory of computer science and computational complexity theories. The chapters in this book have been organized for the students to learn and understand the main concepts of discrete mathematics for developing computer applications during the period of their studies. In information technology (IT) and computer science fields, most of information is represented in digital electronics based on the basic knowledge of discrete mathematics. Therefore, discrete mathematics is one of the relevant courses to support students for better learning and understanding the nature of computer science and IT. It is expected that by using the materials presented in this book students should be able to write statements using mathematical language, develop mathematical arguments using logic, apply the concept of integers and its role in modeling and solving problems in IT, and apply the concept of graph and tree for modeling and solving problems related to real situations.

This textbook provides an engaging and motivational introduction to traditional topics in discrete mathematics, in a manner specifically designed to appeal to computer science students. The text empowers students to think critically, to be effective problem solvers, to integrate theory and practice, and to recognize the importance of abstraction. Clearly structured and interactive in nature, the book presents detailed walkthroughs of several algorithms, stimulating a conversation with the reader through informal commentary and provocative questions. Features: no university-level background in mathematics required; ideally structured for classroom-use and self-study, with modular chapters following ACM curriculum recommendations; describes mathematical processes in an algorithmic manner; contains examples and exercises throughout the text, and highlights the most important concepts in each section; selects examples that demonstrate a practical use for the concept in question.

Stein/Drysdale/Bogart's Discrete Mathematics for Computer Scientists is ideal for computer science students taking the discrete math course. Written specifically for computer science students, this unique textbook directly addresses their needs by providing a foundation in discrete math while using motivating, relevant CS applications. This text takes an active-learning approach where activities are presented as exercises and the material is then fleshed out through explanations and extensions of the exercises.

Discrete Mathematics for Computer Science Students emphasizes mathematical definitions and proofs as well as applicable methods. Topics include formal logic notation, proof methods; induction, well-ordering; sets, relations; elementary graph theory; integer congruences; asymptotic notation and growth of functions; permutations and combinations, counting principles; discrete probability. Further selected topics may also be covered, such as recursive definition and structural induction; state machines and invariants; recurrences; generating functions.

This textbook presents fundamental topics in discrete mathematics introduced from the perspectives of a pure mathematician and an applied computer scientist. The synergy between the two complementary perspectives is seen throughout the book; key concepts are motivated and explained through real-world examples, and yet are still formalized with mathematical rigor. The book is an excellent introduction to discrete mathematics for computer science, software engineering, and mathematics students.The first author is a leading mathematician in the area of logic, computability, and theoretical computer science, with more than 25 years of teaching and research experience. The second author is a computer science PhD student at the University of Washington specializing in database systems. The father-and-daughter team merges two different views to create a unified book for students interested in learning discrete mathematics, the connections between discrete mathematics and computer science, and the mathematical foundations of computer science.Readers will learn how to formally define abstract concepts, reason about objects (such as programs, graphs and numbers), investigate properties of algorithms, and prove their correctness. The textbook studies several well-known algorithmic problems including the path problem for graphs and finding the greatest common divisor, inductive definitions, proofs of correctness of algorithms via loop invariants and induction, the basics of formal methods such as propositional logic, finite state machines, counting, probability, as well as the foundations of databases such as relational calculus.

Relational methods can be found at various places in computer science, notably in data base theory, relational semantics of concurrency, relationaltype theory, analysis of rewriting systems, and modern programming language design. In addition, they appear in algorithms analysis and in the bulk of discrete mathematics taught to computer scientists. This book is devoted to the background of these methods. It explains how to use relational and graph-theoretic methods systematically in computer science. A powerful formal framework of relational algebra is developed with respect to applications to a diverse range of problem areas. Results are first motivated by practical examples, often visualized by both Boolean 0-1-matrices and graphs, and then derived algebraically.