Concrete Mathematics: A Foundation for Computer Science, 2nd Edition

Book description

This book introduces the mathematics that supports advanced computer programming and the analysis of algorithms. The primary aim of its well-known authors is to provide a solid and relevant base of mathematical skills - the skills needed to solve complex problems, to evaluate horrendous sums, and to discover subtle patterns in data. It is an indispensable text and reference not only for computer scientists - the authors themselves rely heavily on it! - but for serious users of mathematics in virtually every discipline.

Concrete Mathematics is a blending of CONtinuous and disCRETE mathematics. "More concretely," the authors explain, "it is the controlled manipulation of mathematical formulas, using a collection of techniques for solving problems." The subject matter is primarily an expansion of the Mathematical Preliminaries section in Knuth’s classic Art of Computer Programming, but the style of presentation is more leisurely, and individual topics are covered more deeply. Several new topics have been added, and the most significant ideas have been traced to their historical roots. The book includes more than 500 exercises, divided into six categories. Complete answers are provided for all exercises, except research problems, making the book particularly valuable for self-study.

Major topics include:

  • Sums

  • Recurrences

  • Integer functions

  • Elementary number theory

  • Binomial coefficients

  • Generating functions

  • Discrete probability

  • Asymptotic methods

This second edition includes important new material about mechanical summation. In response to the widespread use of the first edition as a reference book, the bibliography and index have also been expanded, and additional nontrivial improvements can be found on almost every page. Readers will appreciate the informal style of Concrete Mathematics. Particularly enjoyable are the marginal graffiti contributed by students who have taken courses based on this material. The authors want to convey not only the importance of the techniques presented, but some of the fun in learning and using them.

Table of contents

  1. Cover Page
  2. About This eBook
  3. Halftitle Page
  4. A Foundation for Computer Science
  5. Title Page
  6. Copyright Page
  7. Preface
  8. A Note on Notation
  9. Contents
  10. 1. Recurrent Problems
    1. 1.1 The Tower of Hanoi
    2. 1.2 Lines in the Plane
    3. 1.3 The Josephus Problem
    4. Exercises
  11. 2. Sums
    1. 2.1 Notation
    2. 2.2 Sums and Recurrences
    3. 2.3 Manipulation of Sums
    4. 2.4 Multiple Sums
    5. 2.5 General Methods
    6. 2.6 Finite and Infinite Calculus
    7. 2.7 Infinite Sums
    8. Exercises
  12. 3. Integer Functions
    1. 3.1 Floors and Ceilings
    2. 3.2 Floor/Ceiling Applications
    3. 3.3 Floor/Ceiling Recurrences
    4. 3.4 ‘MOD’: The Binary Operation
    5. 3.5 Floor/Ceiling Sums
    6. Exercises
  13. 4. Number Theory
    1. 4.1 Divisibility
    2. 4.2 Primes
    3. 4.3 Prime Examples
    4. 4.4 Factorial Factors
    5. 4.5 Relative Primality
    6. 4.6 ‘MOD’: The Congruence Relation
    7. 4.7 Independent Residues
    8. 4.8 Additional Applications
    9. 4.9 PHI and MU
    10. Exercises
  14. 5. Binomial Coefficients
    1. 5.1 Basic Identities
    2. 5.2 Basic Practice
    3. 5.3 Tricks of the Trade
    4. 5.4 Generating Functions
    5. 5.5 Hypergeometric Functions
    6. 5.6 Hypergeometric Transformations
    7. 5.7 Partial Hypergeometric Sums
    8. 5.8 Mechanical Summation
    9. Exercises
  15. 6. Special Numbers
    1. 6.1 Stirling Numbers
    2. 6.2 Eulerian Numbers
    3. 6.3 Harmonic Numbers
    4. 6.4 Harmonic Summation
    5. 6.5 Bernoulli Numbers
    6. 6.6 Fibonacci Numbers
    7. 6.7 Continuants
    8. Exercises
  16. 7. Generating Functions
    1. 7.1 Domino Theory and Change
    2. 7.2 Basic Maneuvers
    3. 7.3 Solving Recurrences
    4. 7.4 Special Generating Functions
    5. 7.5 Convolutions
    6. 7.6 Exponential gf’s
    7. 7.7 Dirichlet Generating Functions
    8. Exercises
  17. 8. Discrete Probability
    1. 8.1 Definitions
    2. 8.2 Mean and Variance
    3. 8.3 Probability Generating Functions
    4. 8.4 Flipping Coins
    5. 8.5 Hashing
    6. Exercises
  18. 9. Asymptotics
    1. 9.1 A Hierarchy
    2. 9.2 O Notation
    3. 9.3 O Manipulation
    4. 9.4 Two Asymptotic Tricks
    5. 9.5 Euler’s Summation Formula
    6. 9.6 Final Summations
    7. Exercises
  19. A. Answers to Exercises
  20. B. Bibliography
  21. C. Credits for Exercises
  22. Index
  23. List of Tables

Product information

  • Title: Concrete Mathematics: A Foundation for Computer Science, 2nd Edition
  • Author(s): Ronald L. Graham, Donald E. Knuth, Oren Patashnik
  • Release date: February 1994
  • Publisher(s): Addison-Wesley Professional
  • ISBN: 9780134389974