College of Basic and Applied Sciences

advertisement
FAYETTEVILLE STATE UNIVERSITY
College of Basic and Applied Sciences
Department of Mathematics and Computer Science
I.
LOCATOR INFORMATION
Semester: Fall 2006
Course Number and Name: MATH 250-01 Discrete Mathematics II
Number of Semester Hours of Credit: 3
Day/Time Class Meets: MWF 4:30-5:45pm.
Room/Bldg. Where Class Meets: SBE -117
Instructor: Dr. Chekad Sarami
E-mail address: csarami@uncfsu.edu
Office Location: SBE 334
Office Phone: 672-1129
Office Hours:
MWF 3-5pm and TR 3:30-4:30pm
II. COURSE DESCRIPTION:
A continuation of MATH 150, including qualification and further rules of inference; formal and informal proofs, machine proofs,
with attention to unification and the resolution principle; the equivalence relation as a partitioning device; further applications of
graphs and trees; automata, grammars and languages; recurrence relations with application to the analysis of Algorithms; group
codes as an application of group theory; Boolean algebras and combinatorial circuits. Online materials for the course will be
available on Blackboard. The use of Mathematica is recommended for doing the assignments and homework.
Prerequisite: MATH 150.
III. TEXTBOOK:
Richard Johnsonbaugh, Discrete Mathematics, 7th ed. Upper Saddle River: Prentice Hall, 2005.
IV. SPECIFIC COURSE OBJECTIVES
Upon the completion of this course, the student shall:
Demonstrate an understanding of matrices:
1. Use summation and product notation.
2. Construct matrix sums, products and transposes.
3. Perform boolean matrix operations on boolean matrices.
Demonstrate an understanding of the basic principles of graph theory:
1. State the definitions of graph and digraph.
2. Apply the concept of the degree of a vertex to graph problems.
3. Recognize a connected graph, a loop, and connected components.
4. Construct the adjacency matrix for a given graph or digraph.
5. Construct an isomorphism between two given graphs or digraphs.
7. Recognize cycles, paths, trails, bridges, and components within graphs.
8. Determine the number of p-walks between vertices.
9. Classify graphs as complete, planar, regular, bipartite, or none of these.
10. Use trees to solve graph problems.
11. Construct induction proofs for some tree and graph theorems.
12. Construct spanning trees for a given graph.
13. Use the concepts of indegree and outdegree to solve problems about digraphs.
14. Recognize weighted graphs and networks.
15. Be familiar with the traveling salesman problem and its solution.
16. Apply the greedy algorithm to the traveling salesman problem.
17. Utilize the concepts of planarity, graph coloring, chromatic number and their applications.
18. Construct a minimal spanning tree for a given graph.
19. Construct a binary search tree and conduct a binary tree search.
20. Construct postorder, preorder, and inorder traversals of a given binary tree.
21. Apply binary trees to problems of searching, sorting, expressions, and other problems in computer science.
22. Construct Eulerian cycles on graphs when possible.
23. Recognize a connected graph and components of graphs.
24. Apply Dijkstra's (shortest path) algorithm to graphs.
25. Apply the breadth-first and depth-first algorithms to graphs.
26. Construct the minimal spanning tree in a simple, weighted, connected graph using Prim's algorithm.
27. Apply Euler's formula to a simple, connected, planar graph.
28. Understand the role of K5 and K3,3 in graph planarity.
MATH 250
Syllabus
Fall 2006
page 1
29. Construct the adjacency matrix for a given graph or digraph.
30. Construct a pointer representation for a binary tree.
Demonstrate an understanding of the basic principles of Boolean algebra:
1. Determine whether a given structure is a Boolean algebra
2. Prove properties about Boolean algebras
3. Understand the structure preserving nature of an isomorphism
4. Construct a logic network to represent a given Boolean expression
5. Construct a Boolean expression to represent a given combinatorial circuit.
6. Construct a truth function for a given Boolean expression or combinatorial circuit.
7. Construct the canonical sum-of-products form of a given Boolean expression
8. Construct logic networks from AND, OR and NOT gates
9. Construct the dual of a given Boolean expression
10. Construct a half-adder
11. Construct a full-adder
Demonstrate an understanding of the basic principles of computer science theory:
1. Understand how finite-state machines model computation
2. Understand how Turing machines model computation
3. Understand how formal languages model natural languages
4. Understand how formal languages model computer languages
5. Trace the operation of a given finite-state machine on a given input
6. Construct a finite-state machine to recognize a given set
7. Trace the operation of a given Turing machine on a given input
8. Understand the Church-Turing thesis
9. Be familiar with the P = NP question regarding computational complexity
10. Construct the derivation of a given string in a given grammar
11. Understand the Chomsky hierarchy
12. Use the Backus-Naur form to express a given grammar
V. COURSE COMPETENCIES
DPI Standards
The DPI standards covered are listed below. Students shall:
8.1 Know the symbolism of Mathematical logic.
8.2 Demonstrate a thorough knowledge of the concepts of equivalence and implication.
8.5 Posses a thorough knowledge of the role of proof in the study and development of mathematics.
8.6 Create proofs using direct, indirect and mathematical induction.
8.7 Understand recursive definition of sequences and functions, and use recursion and technology to model and study the
properties of real world processes.
9.1 Use the set theoretic operations: union, intersection, and complementation.
9.3 Know the relationship between the logical operations and the set theoretical operations.
9.4 Demonstrate a knowledge of the concept of a function, range, domain, one-to-one, on-to, inverse functions and composition
of functions.
9.5 Know elementary concepts of networks and graphs and use graph theory as a tool in modeling and solving real world
problems.
NCATE Standards
The NCATE Standards covered in this course are listed below. Students shall:
1.1.1 Use a problem-solving approach to investigate and understand mathematical content.
1.1.2 Formulate and solve problems from both mathematical and everyday situations.
1.2.1 Communicate mathematical ideas in writing, using everyday and mathematical language, including symbols.
1.2.2 Communicate mathematical ideas orally, using both everyday and mathematical language.
1.3 Evaluation of mathematical conjectures and arguments and validation of their own mathematical thinking.
1.4.1 Interrelationship within mathematics.
1.4.2 Connection of mathematics to other disciplines and real-world situations.
1.5.1 Understanding and application of concepts of number, number theory, and number systems.
1.6.1 Use of calculators in computational and problem-solving situations.
MATH 250
Syllabus
Fall 2006
page 2
VI. EVALUATION CRITERIA/GRADING SCALE
There will be three tests, and a comprehensive final exam. The grading scale for determining the course grade is given below.
The weight given to various activities for evaluation is as follows: Tests: 55%, Homework 15%, Final Exam: 20%, Instructor
Option: 10%. To see how your grade will be calculated, suppose your test scores are 85, 72, 84, and 90, your final exam score is
88, and your instructor option score is 100. As the lowest test grade is dropped (see item 3 under COURSE REQUIREMENTS),
your grade would be calculated as follows: 0.70 x [(85 + 84 + 90) / 2] + 0.2 x 88 + 0.1 x 100= 88.03. Since 88.03 is between 83
and 91, you would receive a grade of B.
Grading Scale:
A 92 - 100% B 83 - 91%
C 73 - 82%
D 64 - 72%
F 63% or less
VII. COURSE OUTLINE *
Topics
Graph Theory 8.1 Introduction
8.2 Paths and Cycles
8.3 Hamiltonian Cycles and the Traveling Salesperson Problem
8.4 A Shortest Path Algorithm
8.5 Representations of Graphs
8.6 Isomorphisms of Graphs
8.7 Planar Graphs
Review
Homework 1 is due
Trees 9.1 Introduction 9.2 Terminology and Characterization of Trees
9.3 Spanning Trees 9.4 Minimal Spanning Trees Test 1
9.5 Binary Trees
9.6 Tree Traversals
9.7 Decision Trees and the Minimum Time for Sorting
9.8 Isomorphisms of Trees
Review
Homework 2 is due
Network Models
10.1 Introduction
10.2 A Maximal Flow Algorithm
10.3 The Max Flow, Min Cut Theorem Test 2
Boolean Algebras and Combinatorial Circuits
11.1 Combinatorial Circuits
11.2 Properties of Combinatorial Circuits
11.3 Boolean Algebras
11.4 Boolean functions and Synthesis of Circuits
Review
Homework 3 is due
12.1 Sequential Circuits and Finite-State Machines
12.2 Finite-State Automata
12.3 Languages and Grammars
12.5 Relationships between Languages and Automata
Review
Test 3, Homework 4 is due
Review
Final Exam
* This schedule is subject to change for the optimum benefit of the class as a whole. Therefore it is important to stay alert and
attend class regularly.
MATH 250
Syllabus
Fall 2006
page 3
VIII. COURSE REQUIREMENTS
1. Students are responsible for availing themselves of all class meetings, and individual help from the instructor.
2. Students are responsible for maintaining a notebook of problems selected by the instructor. Students are encouraged to
include as many additional problems as possible.
3. There will be four tests, and a final examination. Since the lowest test score will be dropped no make-up test will be given. In
case of a planned absence (e.g. a doctor's appointment or court appearance) an in-term test may be taken early if adequate notice
is given. The final exam will be comprehensive, and the final exam grade will not be dropped.
4. Students are expected to enter the classroom on time and remain until the class ends so that distractions may be kept at a
minimum. Please be considerate of your fellow students. Late arrivals and early departures will be noted in the record book.
Three late arrivals or early departures make an absence. The absence policy stated in the University Catalogue will be strictly
enforced.
5. Students must refrain from smoking, eating, and drinking in the classroom. The rights of others must be respected at all times.
6. Students are encouraged to ask questions of the instructor in class and to respond to those posed by the instructor. They should
not discourage others from asking or answering questions. Other students often have the same questions on their minds, but are
hesitant to ask.
7. Students are expected to complete all class assignments and to spend adequate time on their class work to insure that the course
outcomes are met. At least three hours of home study is expected for each class hour.
8. Talking in class between students is strictly unacceptable. Discussions should be directed to the instructor.
9. There will be no extra credit assignments, projects, etc.
10. Dishonesty on graded assignments will not be tolerated. Students must neither give nor receive help on any work to be
graded. The University policy on cheating will be applied to any violations. The minimum penalty will be a grade of zero on the
assignment.
IX. TEACHING STRATEGIES
The teaching strategies for this course will be: Lectures, Group Discussions, Student Presentations
X. REFERENCES
Aho, Alfred V. & Jeffrey D. Ullman. Foundations of Computer Science. New York: W. H. Freeman and Co., 1992.
Goodaire, Edgar G., Parmenter, Michael M. Discrete Mathematics with Graph Theory, 2nd ed. Upper Saddle River: PrenticeHall, 2002.
Grimaldi, Ralph P. Discrete and Combinatorial Mathematics. 4th ed., Reading, MA: Addison-Wesley, 1999.
Ross, Kenneth. Discrete Mathematics. 4rd ed. Upper Saddle River: Prentice-Hall, 1999.
MATH 250
Syllabus
Fall 2006
page 4
Download