Course Number
    140
Course Name
    Discrete Structures
Credits
    4
Prerequisite
    None
Course Description
    An introduction to discrete mathematical structures and their application to computer science. Emphasis is placed on introducing students to formal mathematical notation and proofs, and concepts useful in computer science. Topics include computer related arithmetic, propositional logic, predicate logic, set theory, relations, functions, vectors, matrices, mathematical induction, and combinatorics. This course includes a laboratory component.
Course Objectives
    The successful student will learn the fundamental notation and concepts of discrete structures, learn techniques for proving things about and manipulating structures, and have an appreciation of formal axiomatic systems.
Course Outline
    1. Computer Related Arithmetic
      a. Number systems
      b. Binary numbers
      c. Integers
      d. Floating point, rational, and real numbers
    2. Propositional Logic
      a. Propositions
      b. Truth tables
      c. Conjunction, disjunction, negation
      d. Conditionals, biconditionals, valid arguments,
            converse, contrapositive
      e. Axioms and rules of inference
      f. Applications
    3. Predicate Logic
      a. Quantified statements
      b. Operations on quantified statements
      c. Bound and free variables
      d. Axioms and rules of inference
      e. Applications
    4. Sets
      a. Sets and their operations
      b. Venn diagrams
      c. Proving facts about sets
      d. Countable sets
      e. Uncountable sets
      f. Counting principles
      g. Applications
    5. Relations
      a. Ordered pairs
      b. Cartesian products
      c. Representations of Relations
      d. Properties of Relations
      e. Equivalence Relations
      f. Congruences
      g. Modular arithmetic
      h. Applications
    6. Functions
      a. Functions whose domains are numbers, strings, and
           sets
      b. Function composition
      c. Recursive functions
      d. Recurrence relations
      e. Applications
    7. Vectors and Matrices
      a. Definitions and properties
      b. Dot product
      c. Matrix multiplication and addition
      d. Inverse of a matrix
      e. Applications
    8. Mathematical Induction
      a. Definitions
      b. Steps involved
      c. Applications
    9. Combinatorics
      a. Permutations and Combinations
      b. Binomial coefficients
      c. Principle of Inclusion and Exclusion
      d. Discrete Probability
    10. Additional Topics
      a. Number Theory
      b. Graph Theory
      c. Algorithm Analysis
      d. Finite State Automata
      e. Boolean Algebra
Suggested Texts
    Discrete Mathematics and Its Applications, Kenneth H. Rosen, McGraw Hill, 1995.

    Mathematical Structures for Computer Science, Judith L. Gersting, Computer Science Press, 1993.

    Concrete Mathematics: A Foundation for Computer Science, Ronald Graham, Donald Knuth and Oren Patashik, Addison-Wesley, 1989.

    Discrete and Combinatorial Mathematics: An Applied Introduction, Ralph P. Grimaldi, Addison-Wesley, 1994.

    Fundamentals of Computing I: Logic, Problem Solving, Programs, and Computers, Allen B. Tucker, W. James Bradley, Robert D. Cupper and David Garnick, McGraw-Hill, 1992.
Related Readings
    Bavel, Zamir, Math Companion for Computer Science, Reston (Reston, VA: 1982).

    Dierker and Voxman, Discrete Mathematics, HBJ (San Diego, CA: 1986).

    Doerr and Levasseur, Applied Discrete Structures for Computer Science, SRA (Chicago: 1985).

    Molluzzo and Buckley, A First Course in Discrete Mathematics, Wadsworth (Belmont, CA: 1986).

    Polimeni and Straight, Foundations of Discrete Mathematics, Brooks/Cole (Monterey, CA: 1985).

    Roman, An Introduction to Discrete Mathematics, Saunders (Philadelphia,PA:1986).

    Sedlock, Mathematics for Computer Studies, Wadsworth (Belmont,CA: 1985).

    Skvarcius and Robinson, Discrete Mathematics with Computer Science Applications, Cummings (Menlo Park, CA: 1986).
Return to Curriculum Page