Course Syllabus

Introduction. CS 2100 provides an introduction to the discrete mathematics and structures that are at the foundation of computer science.

Instructor. Professor: Zvonimir Rakamaric. Contact: see Front Page.

Lectures. Tuesdays and Thursdays, 12:25-1:45 in WEB L101

Discussion Sections. Administered by the Professor and/or TA.

  • Section 2: Fridays, 10:45-11:35, WEB L112
  • Section 3: Fridays, 11:50-12:40, WEB L122
  • Section 4: Fridays, 12:55-1:45, WEB L122

These meetings are required, but no attendance will be taken.

Getting Help. Take advantage of the instructor office hours and the Friday problem sessions. We will work hard to be accessible to students. Please send us email if you need to meet outside of office hours. Do not be shy if you do not understand something: come to office hours, post questions to the discussion board, send email, or speak up in class!

Students are encouraged to use the discussion board for questions outside of class and office hours. For private questions or concerns, use the mailing list teach-cs2100@list.eng.utah.edu. Email sent to this address is seen only by the instructor and TAs, who will respond to each question individually.

Announcements. Important announcements, such as assignment corrections or deadline changes, will be posted to the canvas course page as public announcements. Make sure you set up canvas notifications appropriately to receive the announcements in a timely manner; ideally, you should receive an email notification as soon as an announcement gets posted.

Textbook. Discrete Mathematics: Mathematical Reasoning and Proof with Puzzles, Patterns, and Games by Ensley and Crawley. The course schedule lists the sections covered in each lecture. It is strongly recommended that you read these sections before they are covered in class.

Grading Policy. The final course grade is based on the homework (10%), 4 quizzes (best 3 out of 4 for 60% - we drop the lowest quiz grade), and the final exam (30%). The letter grading policy is as follows:

  87-89 B+ 77-79 C+ 67-69 D+  
93-100 A 83-86 B 73-76 C 63-66 D 0-59 E
90-92 A- 80-82 B- 70-72 C- 60-62 D-  


Homework assignments are due as posted on canvas at the beginning of class, and late assignments will not be graded. On homeworks, you may work with others, and we will make no attempt to hide the answers. Answers will be discussed in lectures and problem sessions. However, homeworks must be submitted as an original document in your own hand writing (i.e., pen or pencil). No photocopies or printouts are allowed. Each assignment will be graded pass/good effort/fail, where pass is most of the questions are done almost entirely correct. We will not negotiate homework grades. If you want credit, make sure you hand in correct answers.

Quizzes and the final exam are closed book/closed notes. Please make sure to check the quiz/exam dates on the web page for the course and verify that you will be in attendance on those days. Only pen/pencil can be used during exams. No calculators, iphones, ipods, walkmans, mobile phones, etc. can be used. Once the exam is started, students may leave only after handing in their exam. If you believe there is an error in grading the quizzes or final, you may request a regrading within one week of receiving your grade. Requests must be made in writing, explaining clearly why you think your answer is correct. Of course, there must be no collaboration during examinations. If a student is caught cheating on a homework or exam, they will receive a failing grade for the course and be reported to the department. For a detailed description of the School of Computing's policy on cheating, please see our Policy Statement on Academic Misconduct.

Students with Disabilities. The University of Utah seeks to provide equal access to its programs, services, and activities for people with disabilities. If you need accommodations in this class, reasonable prior notice needs to be given to the Center for Disability Services, 162 Olpin Union Building, 581-5020 (V/TDD). CDS will work with you and the instructor to make arrangements for accommodations.

Syllabus. The following topics will be covered (see the course modules for a detailed schedule):

  • Mathematical Reasoning (Chapters 1 and 2): Introduction to formal mathematical statements, logic, theorems, and proofs. We will cover several fundamental strategies for proving mathematical statements.
  • Set Theory and Boolean Logic (Chapter 3): Introduction to sets, set operations, proving set properties, and Boolean Logic.
  • Relations and Functions (Chapter 4): Introduction to relations, equivalence relations, functions, and properties of functions.
  • Counting and Probability (Chapters 5 and 6): Basic combinatorics, counting principles, and an introduction to discrete probability.
  • Graphs and Trees (Chapter 7): Formal properties of graphs and trees and formal reasoning including proofs.

Course Summary:

Date Details