CSC 2342 Discrete Structures
Spring 2024
Instructor: |
Roger Shore |
Class Schedule: |
Office Location: |
Couch Hall 153 |
MWF 9:15AM-10:25AM CSC-2342 |
Telephone: |
841-9031 |
TTh 7:50-9:30AM CSC-4210 |
Office Hours: |
MWF 1:00-3:00PM |
TTh 9:45-11:25AM CSC-4820 |
E-Mail: rshore@highpoint.edu |
Web site: linus.highpoint.edu/~rshore |
Description: This is an introductory course in discrete mathematical structures widely used computer science. The purpose of this course is to understand and use (abstract) discrete structures that are backbones of computer science. This course teaches the students techniques in how to think logically and mathematically and apply these techniques in solving problems. In particular, this class is meant to introduce logic, proofs, sets, relations, functions, counting, and probability, with an emphasis on applications in computer science. Four Credits.
Prerequisite or Corequisite: CSC-1720
Course Materials:
Discrete Mathematics and Its Applications, 8th Edition, by Kenneth H. Rosen. McGraw Hill, 2012. ISBN 978-1-259-67651-2
Course Objectives:
Explain with examples the basic terminology of functions, relations, and sets.
Perform the operations associated with sets, functions, and relations.
Convert logical statements from informal language to propositional and predicate logic expressions.
Use the rules of inference to construct proofs in propositional and predicate logic.
Apply each of the proof techniques (direct proof, proof by contradiction, and induction) correctly in the construction of a sound argument.
Apply counting arguments, including sum and product rules, inclusion-exclusion principle and arithmetic/geometric progressions.
Compute permutations and combinations of a set, and interpret the meaning in the context of the particular application.
Solve a variety of basic recurrence relations.
Perform computations involving modular arithmetic.
Illustrate by example the basic terminology of graph theory, as well as some of the properties and special cases of each type of graph/tree.
Demonstrate different traversal methods for trees and graphs, including pre-, post-, and in-order traversal of trees.
Calculate probabilities of events and expectations of random variables for elementary problems such as games of chance.
Differentiate between dependent and independent events.
Identify a case of the binomial distribution and compute a probability using that distribution.
Identify applications of discrete structures in the field of computer science.
Assessment: The course objectives will be assessed through major tests, the final exam and problem set assignments. The final grade will be determined as follows:
Assignments/Quizzes: 20%
3 Major Tests: 60%
Cumulative Final Exam: 20%
Total: 100%
Range |
93-100 |
90-93 |
87-90 |
83-87 |
80-83 |
77-80 |
73-77 |
70-73 |
67-70 |
63-67 |
60-63 |
0-60 |
Grade |
A |
A- |
B+ |
B |
B- |
C+ |
C |
C- |
D+ |
D |
D- |
F |
You must score at least the minimum of a category to be given the associated grade, i.e. an average of 80 is a B- not a C+.
Major tests and Final Exam: All tests and final exam will consist primarily of problem solving type questions similar to the homework assignments and quizzes. No make up test will be given unless prior arrangements have been made with excusable reasons. If you miss a test your final grade will be used in place of the missed grade. This means the percentage of the final exam will increase. If you miss the final exam, a 0 will be placed in all missing tests.
Quizzes, class worksheets and assignments: In addition to the major tests and final exam, students will participate in series of problem sets to further develop skills and understanding of discrete mathematical structures found in computer science. Each assignment will focus on a collection of problems that target each learning objective individually or a combination of learning objectives. Successful completion of the assignments will prepare the student for major tests and final exam. There will be at least 12. There is no makeup for these items. For this reason, two will be dropped to accommodate an occasional absence.
Attendance: High Point University recognizes and honors the value of the face-to-face classroom experience for enhancing student engagement and academic outcomes. Attendance will be taken daily at the beginning of class. As such, you are expected to be present in every class meeting with the exception of an illness that requires quarantine or other reasons pre-approved by the instructor. In those cases online accommodations will be provided. If absent from class, you are responsible for all lectures, in-class exercises, assignments, and handouts. Caution: Being absent from class does not change the due date of assignments. Before a student is dropped for non-attendance, I will give a notification as a warning to a student that he/she is in danger of violating the attendance requirements.
Honor Code: All students are expected to follow the University Honor Code, Full details of the High Point University Honor Code are found here: http://www.highpoint.edu/studentconduct/university-honor-code All academic work should be completed with the highest level of honesty and integrity.
Professionalism: The Mission Statement of the Webb School of Engineering is: To provide an extraordinary engineering education through the delivery of a hands-on, practical education that prepares graduates for a rewarding career or admission into graduate school. The School of Engineering is committed to:
Providing an environment that encourages curiosity.
Developing technical competence within a Liberal Arts framework.
Fostering independent thought and critical thinking to solve modern engineering and computing problems in an ethical, socially-responsible, and sustainable manner.
Please treat this class as if it were a company or organization for which you are working. You can exhibit professionalism by attending consistently, arriving on time, communicating your full or partial absence in a timely fashion, completing assignments on time, maintaining engagement, and respecting your peers and the professor.
Classroom etiquette:
Cell phone usage during class is prohibited. Turn off cell phones (or place on vibrate). Please do not interrupt any aspect of the class due to your cell phone. This includes voice, text, video, data or any other current or future transmission technology.
Do not listen to your digital media during class or lab time.
Profanity will not be tolerated. Lewd remarks printed on your clothing are also not tolerated.
Hats are not to be worn during class.
Laptops are allowed during class and can only be used for class related instruction. Inappropriate use of a laptop, desktop or other electronic computing device during class will result in you being asked to leave the room.
Lab etiquette:
The labs were created with student input. Please help respect and maintain the lab.
Do not eat while sitting at a workstation. If you must eat while in the lab, sit a the larger table where no equipment may be damaged except your own. Clean up the area after you finish eating.
Clean up your area before you leave the lab. Unless you are planning to return in a few minutes, please take all books, paper, etc with you.
DO NOT lock your workstation when you leave!
Students with Disabilities: High Point University is committed to ensuring all students have equal access to all services and benefits at High Point University. If you are a student with a disability and require academic accommodations due to a diagnosed disability, you must register with the Office of Accessibility Resources and Services (OARS) and submit the appropriate documentation. Requests for accommodations should be made at the beginning of a course. Accommodations are not retroactive. Contact us at oars@highpoint.edu or by telephone at 336-841-9026, for additional information. The Office of Accessibility Resource and Services is located on the 4th Floor of Smith. Library.
Face covering: Wearing a face mask reduces the risk of COVID-19 transmission and is a step we can all take to care for the members of our HPU family. This class will abide by the guidelines that are set forth by the University. Please note this may change as the semester progresses.
Tentative Schedule of Topic Coverage
Foundations of logic and proofs 1.1-1.3
Propositional Logic
Truth Tables
Predicate Logic
Notions of Implication, Equivalence, Converse, Inverse,
Contrapositive, Negation, and Contradiction.
The Structure of Mathematical Proofs.
Boolean Algebra 12.1-12.4
Boolean functions
Representing boolean functions
Proofs by truth table and by boolean algebra rules
Application – logic gates and minimization of circuits
Test #1
Basic Structures: Sets, Functions, Sequences, Sums, and Matrices 2.1-2.4
Venn diagrams, Union, Intersection, Complement, Power Sets, etc.
Set Cardinality and Counting
Reflexivity, Symmetry, Transitivity
Equivalence Relations
Injections and Bijections
Inverses and Composition
Algorithms 3.1-3.3
Complexity
Big “Oh”, Omega and Theta notation and the growth of a function
Test #2
Induction and Recursion 5.1-5.4
Mathematical Induction
Recursive definitions and structural induction
Recursive algorithms
Basics of Counting 6.1-6.5
Sum and Product Rule
Arithmetic and Geometric Progressions
The Pigeonhole Principle
Permutations and Combinations – Basic Definitions, Pascal’s Identity, Binomial Theorem
Advanced Counting Techniques 8.1-8.2
Application or recurrence relations
Solving linear recurrence relations
Test #3
Graphs and Trees 10.1 – 10.5, 11.1-11.5
Trees
Graphs – Undirected, Directed, and Weighted
Graph Traversals – Depth First and Breath First
Tree Traversals – pre-, post-, in-, and level-ordering
Modeling Computation 13.1-13.5
Languages and Grammars
Finite-state Machines
Turing Machines
Cumulative Final Exam – All learning objectives