Instructor:
Shunichi Toida, Professor
Department of Computer Science, ODU
Office: Room 252-4, Education
Phone: 683-3392
e-mail: toida@cs.odu.edu
Textbook:
Kenneth H. Rosen,
Discrete Mathematics and Its Applications, Fourth Ed.
McGraw-Hill, New York, NY, 1999
Grading:
Homework
20%
Test
30%
Final Exam
50%
All tests and exam are closed book and
calculators are not allowed.
Important Note:
Lying, cheating, plagiarism and failure to report such cases
all constitute
violation of the Honor System.
Office Hours:
Tuesdays and Thursdays 4:30 - 5:30 p.m.
During these hours you can communicate with me by telephone: (757)683-3392;
e-mail (immediate reply unless I am occupied with other students):
toida@cs.odu.edu; or NetMeeting (128.82.4.37).
You may also walk in, e-mail, telephone or NetMeeting any other time.
Course Objectives:
The main objectives of this course are
First we learn a general methodology for solving problems. This methodology is going to be followed in solving problems, and in proving theorems throughout this course.
The next subject is logic. It is covered in Chapter 1 of the textbook. It is a language that captures the essence of our reasoning, and correct reasoning must follow the rules of this language. We start with logic of sentences called propositional logic, and study elements of logic, (logical) relationships between propositions, and reasoning. Then we learn a little more powerful logic called predicate logic. It allows us to reason with statements involving variables among others.
In Chapter 1 we also study sets, relations between sets, and operations on sets. Just about everything is described based on sets, when rigor is required. It is the basis of every theory in computer science and mathematics.
In Chapter 3 we learn mathematical reasoning, in particular induction. There are sets, operations and functions that can be defined precisely by recursive definitions. Properties of those recursively defined objects can be established rigorously using proof by induction.
Then in Chapters 6 we study relations. They are one of the key concepts in the discussion of many subjects on computer and computation. For example a database is viewed as a set of relations and database query languages are constructed based on operations on relations and sets. Graphs are also covered briefly here. They are an example of discrete structures and they are one of the most useful models for computer scientists and engineers in solving problems. More in-depth coverage of graph can be found in Chapter 7.
Finally back in Chapter 1
we study
functions and their asymptotic behaviors.
Functions are a special type of relation and basically
the same kind of concept as the ones we see in calculus.
However, function is one of the most important concepts in the discussion of many subjects on computer
and computation such as data structures, database,
formal languages and automata, and analysis of algorithms which is briefly
covered in Chapter 2.