F11_MTS201_Logic_and_discrete_structure

=MTS201: Logic and Discrete Structure=

Program:
BS(CS)

Semester:
Fall 2011

Instructor:
Dr. N. Touheed.

**Course Lead:**
Dr. N. Touheed.

**Credit Hours:**
3 credit hours.

Prerequisite(s):
None.

Course Description:
This course is the first exposure of the students towards formal logic as encountered in discrete mathematics. The application of the knowledge imparted herein is widespread, and includes, network design, compiler automation and development as well as mathematical development of logic. The course is imparted in usual classroom lectures (28 in all), with multimedia support. First of all logic as a mathematical object is introduced, followed by algorithms involved in discrete computation. Then mathematical reasoning is taught which ends in a reasonable amount of combinatorics. Some graph theory and Boolean algebra follows.

Course Objectives:
On the culmination of the course, successful students are expected to be able to:
 * Understand mathematical logic, predicates, and quantifiers.
 * Describe and categorize logical statements and assertions.
 * Understand algorithms involved in integer computation.
 * Construct and model a logical problem related to networks, or algorithms.
 * Solve basic problems of combinatorics as are commonplace while designing computer networks.
 * Perform complexity analysis of any integer algorithms.
 * Be search-wise, i.e., be aware of where to look for a specific problem-solution if it is not already in their skill-set.

Books:
We closely follow the textbook:
 * Discrete Mathematics and Its Applications, by Kenneth H. Rosen. 6th. Edition.

Grading Policy:
The grading policy that is followed for this course is summarized below: Second Term Exam (closed book exam) Reading assignement with written report Terminal Exam (closed book compulsory exam) ||= 20 20 20 40 ||
 * **__Assessment__** ||= **__Points__** ||
 * First Term Exam (closed book exam)

**Topics Covered (Salient Outlines) **
The following is a rough dissemination of topics into an approximate number of lectures. Logic Propositional Equivalences. Predicates and Quantifiers. Sets, and set operations. Functions. ||= 4 || Algorithms. Complexity of algorithms. The integers and divisions. Integers and algorithms. Matrices. ||= 4 || Methods of proof. Mathematical induction. Recursive definitions and algorithms. ||= 3 || The Integers and Division Divides, Factor, Multiple Prime Numbers Fundamental Theorem of Arithmetic Relative Primality The mod operator Modular Congruence Euclid’s Algorithm for GCD Cryptology Modular Exponentiation Problem Linear Congruences, Inverses Chinese Remainder Theorem Computer Arithmetic with Large Integers Pseudoprimes The RSA Algorithm ||= 7 || Graph terminology. Representing graphs and graph isomorphism. Connectivity. Euler and Hamilton paths. Shortest path problems. ||= 8 || Boolean functions. Representing Boolean functions. Logic gates. ||= 2 ||
 * __**Topics**__ ||= __**Approximate # of lectures**__ ||
 * __**Logic, sets and functions. (Intro)**__
 * __**Algorithm, the Integers and Matrices** **(Intro)**__
 * **__Mathematical reasoning (Intro)__**
 * **__Number Theory (Intro)__**
 * __**Graphs (Intro)**__
 * __**Boolean algebra (Intro)**__