Table of Contents

  1. Part 1 – Fundamentals of Discrete Mathematics
    1. Fundamental Principles of Counting
      1. The Rules of Sum and Product (lecture)
      2. Permutations (lecture)
      3. Combinations: The Binomial Theorem (lecture)
      4. Combinations with Repetition (lecture)
      5. An Application in the Physical Sciences (Optional)
      6. The Catalan Numbers (Optional)
      7. Summary and Historical Review
    2. Fundamentals of Logic
      1. Basic Connectives and Truth Tables
      2. Logical Equivalence: The Laws of Logic
      3. Logical Implication: Rules of Inference
      4. The Use of Quantifiers
      5. Quantifiers, Definitions, and the Proofs of Theorems
      6. Summary and Historical Review
    3. Set Theory
      1. Sets and Subsets
      2. Set Operations and the Laws of Set Theory
      3. Counting and Venn Diagrams
      4. A Word on Probability
      5. Summary and Historical Review
    4. Properties of the Integers: Mathematical Induction
      1. The Well-Ordering Principle: Mathematical Induction (lecture)
      2. Recursive Definitions (lecture)
      3. The Division Algorithm: Prime Numbers
      4. The Greatest Common Divisor: The Euclidean Algorithm
      5. The Fundamental Theorem of Arithmetic
      6. Summary and Historical Review
    5. Relations and Functions
      1. Cartesian Products and Relations
      2. Functions: Plain and One-to-One
      3. Onto Functions: Stirling Numbers of the Second Kind
      4. Special Functions
      5. The Pigeonhole Principle (lecture)
      6. Function Composition and Inverse Functions
      7. Computational Complexity
      8. Analysis of Algorithms
      9. Summary and Historical Review
    6. Languages: Finite State Machines
      1. Language: The Set Theory of Strings
      2. Finite State Machines: A First Encounter
      3. Finite State Machines: A Second Encounter
      4. Summary and Historical Review
    7. Relations: The Second Time Around
      1. Relations Revisited: Properties of Relations
      2. Computer Recognition: Zero-One Matrices and Directed Graphs
      3. Partial Orders: Hasse Diagrams
      4. Equivalence Relations and Partitions
      5. Finite State Machines: The Minimization Process
      6. Summary and Historical Review
  2. Part 2 – Further Topics In Enumeration
    1. The Principe of Inclusion and Exclusion
      1. The Principle of Inclusion and Exclusion (lecture)
      2. Generalizations of the Principle (lecture)
      3. Derangements: Nothing Is in Its Right Place (lecture)
      4. Rook Polynomials
      5. Arrangements with Forbidden Positions
      6. Summary and Historical Review
    2. Generating Functions
      1. Introductory Examples (lecture)
      2. Definition and Examples: Calculation Techniques
        1. Introductory Examples (lecture)
        2. Finite Geometric Series (lecture)
        3. Binomial and Extended Binomial Theorem (lecture)
        4. Full Practice Questions (lecture)
      3. Partitions of Integers (lecture)
      4. The Exponential Generating Function
      5. The Summary Operator
      6. Summary and Historical Review
    3. Recurrence Relations
      1. The First-Order Linear Recurrence Relation (lecture)
      2. The Second-Order Linear Homogeneous Recurrence Relation with Constant Coefficients
        1. Part 1 (lecture)
        2. Part 2 (lecture)
      3. The Nonhomogeneous Recurrence Relation
      4. The Method of Generating Functions (lecture)
      5. A Special Kind of Nonlinear Recurrence Relation (Optional)
      6. Divide-and-Conquer Algorithms (Optional)
      7. Summary and Historical Review
  3. Part 3 – Graph Theory and Applications
    1. An Introduction to Graph Theory
      1. Definitions and Examples
      2. Subgraphs, Complements and Graph Isomorphism
      3. Vertex Degree: Euler Trails and Circuits
      4. Planar Graphs
      5. Hamilton Paths and Cycles
      6. Graph Coloring and Chromatic Polynomials
      7. Summary and Historical Review
    2. Trees
      1. Definitions, Properties, and Examples
      2. Rooted Trees
      3. Tress and Sorting
      4. Weighted Trees and Prefix Codes
      5. Biconnected Components and Articulation Points
      6. Summary and Historical Review
    3. Optimization and Matching
      1. Dijkstra’s Shortest-Path Algorithm
      2. Minimal Spanning Trees: The Algorithms of Kruskal and Prim
      3. Transport Networks: The Max-Flow Min-Cut Theorem
      4. Matching Thoery
      5. Summary and Historical Review
  4. Part 4 – Modern Applied Algebra
    1. Rings and Modular Arithmetic
      1. The Ring Structure: Definition and Examples
      2. Ring Properties and Substructures
      3. The Integers Modulo n
      4. Ring Homomorphisms and Isomorphisms
      5. Summary and Historical Review
    2. Boolean Algebra and Switching Functions
      1. Switching Functions: Disjunctive and Conjunctive Normal Forms
      2. Gating Networks: Minimal Sums of Products: Karnaugh Maps
      3. Further Applications: Don’t Care Conditions
      4. The Structure of a Boolean Algebra (Optional)
      5. Summary and Historical Review
    3. Groups, Coding Theory, and Polya’s Method of Enumeration
      1. Definition, Examples, and Elementary Properties
      2. Homomorphisms, Isomorphisms, and Cyclic Groups
      3. Cosets and Lagrange’s Theorem
      4. Elements of Coding Theory
      5. The Hamming Metric
      6. The Parity-Check and Generator Matrices
      7. Group Codes: Decoding with Coset Leaders
      8. Hamming Matrices
      9. Counting and Equivalence: Burnside’s Theorem
      10. The Cycle Index
      11. The Pattern Inventory: Polya’s Method of Enumeration
      12. Summary and Historical Review
    4. Finite Fields and Combinatorial Designs
      1. Polynomial Rings
      2. Irreducible Polynomials: Finite Fields
      3. Latin Squares
      4. Finite Geometries and Affine Planes
      5. Block Designs and Projective Planes
      6. Summary and Historical Review