*A Problem-Solving Primer*

**Author**: Tom Jenkyns

**Publisher:** Springer Science & Business Media

**ISBN:**

**Category:** Computers

**Page:** 416

**View:** 706

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.

This is a new edition of a successful introduction to discrete mathematics for computer scientists, updated and reorganised to be more appropriate for the modern day undergraduate audience. Discrete mathematics forms the theoretical basis for computer science and this text combines a rigorous approach to mathematical concepts with strong motivation of these techniques via practical examples. Key Features Thorough coverage of all area of discrete mathematics, including logic, natural numbers, coding theory, combinatorics, sets, algebraic functions, partially ordered structures, graphs, formal machines & complexity theory Special emphasis on the central role of propositional & predicate logic Full chapters on algorithm analysis & complexity theory Introductory coverage of formal machines & coding theory Over 700 exercises Flexible structure so that the material can be easily adapted for different teaching styles. New to this Edition Improved treatment of induction Coverage of more 'basic' algebra List of symbols including page references for definition/explantion Modern text design and new exercises to aid student comprehension 0201360616B04062001

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.

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.

This book covers elementary discrete mathematics for computer science and engineering. It 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.

John Vince describes a range of mathematical topics to provide a foundation for an undergraduate course in computer science, starting with a review of number systems and their relevance to digital computers, and finishing with differential and integral calculus. Readers will find that the author's visual approach will greatly improve their understanding as to why certain mathematical structures exist, together with how they are used in real-world applications. Each chapter includes full-colour illustrations to clarify the mathematical descriptions, and in some cases, equations are also coloured to reveal vital algebraic patterns. The numerous worked examples will consolidate comprehension of abstract mathematical concepts. Foundation Mathematics for Computer Science covers number systems, algebra, logic, trigonometry, coordinate systems, determinants, vectors, matrices, geometric matrix transforms, differential and integral calculus, and reveals the names of the mathematicians behind such inventions. During this journey, John Vince touches upon more esoteric topics such as quaternions, octonions, Grassmann algebra, Barycentric coordinates, transfinite sets and prime numbers. Whether you intend to pursue a career in programming, scientific visualisation, systems design, or real-time computing, you should find the author’s literary style refreshingly lucid and engaging, and prepare you for more advanced texts.

A more intuitive approach to the mathematical foundation of computer science Discrete mathematics is the basis of much of computer science, from algorithms and automata theory to combinatorics and graph theory. This textbook covers the discrete mathematics that every computer science student needs to learn. Guiding students quickly through thirty-one short chapters that discuss one major topic each, this flexible book can be tailored to fit the syllabi for a variety of courses. Proven in the classroom, Essential Discrete Mathematics for Computer Science aims to teach mathematical reasoning as well as concepts and skills by stressing the art of proof. It is fully illustrated in color, and each chapter includes a concise summary as well as a set of exercises. The text requires only precalculus, and where calculus is needed, a quick summary of the basic facts is provided. Essential Discrete Mathematics for Computer Science is the ideal introductory textbook for standard undergraduate courses, and is also suitable for high school courses, distance education for adult learners, and self-study. The essential introduction to discrete mathematics Features thirty-one short chapters, each suitable for a single class lesson Includes more than 300 exercises Almost every formula and theorem proved in full Breadth of content makes the book adaptable to a variety of courses Each chapter includes a concise summary Solutions manual available to instructors

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.

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.