After the successful completion of this class, students should be able to:
-
Illustrate by examples the basic terminology of functions, relations,
and sets and demonstrate knowledge of their associated operations.
-
Demonstrate in practical applications the use of basic counting
principles of permutations, combinations, inclusion/exclusion principle
and the pigeonhole methodology.
-
Calculate probabilities of events and expectations of random variables
for problems arising from games of chance.
-
Establish and solve recurrence relations that arise in counting problems
including the problem of determining the time complexity of recursively
defined algorithms.
-
Model logic statements arising in algorithm correctness and real-life
situations and manipulate them using the formal methods of propositional
and predicate logic.
-
Outline basic proofs for theorems using the techniques of - direct
proofs, proof by counterexample, proof by contraposition, proof
by contradiction, mathematical induction.
-
Relate the ideas of mathematical induction to recursion and recursively
defined structures.
-
Illustrate by example basic terminology of graph theory and model
problems in computer science using graphs and trees.
-
Deduce properties that establish particular graphs as Trees, Planar,
Eulerian, and Hamiltonion.
-
Illustrate the application of trees and graphs to data structures.
-
Explain the basic concepts modeling computation including formal
machines, languages, finite automata, Turing machines.
|
|