Course Syllabus

CSci 2011H: Honors Discrete Structures

Section 001/002, Spring 2023
4 credits
Lectures: TTh 2:30-3:45pm, Lind Hall L120
Discussion: W 3:35-4:25, Lind Hall L120

Instructor

Nick Hopper
hoppernj AT umn edu

Teaching Assistants

Ashvin Pidaparti
pidap008 AT umn edu

Son Nguyen
nguy4309 AT umn edu

Office Hours

Office hours, with times and locations, can be found on the canvas office hours page.

Textbook

The required textbook for this class is Rosen, Discrete Mathematics and its Applications, 8th edition.  Access to an electronic copy of this textbook for 180 days has been provided for all students through the inclusive access program, resulting in an "inclusive access" fee to your student account.  If you wish to purchase the textbook through a different method and opt out of the inclusive access fee, more information about opting out is provided here.

There will be required readings from this text for each class, and lectures will not always cover all of the material from the textbook, but you will still be responsible for the information in the readings.

Course Overview

Discrete mathematics is the language used by computer scientists to precisely describe, model, and discuss the properties of programs, software, and computer problems.  The terminology, notation, conventions, concepts, and skills we will learn in this course will be fundamental to understanding nearly every course you take in computer science, and because all computer scientists are trained in discrete mathematics, will also be required skills for communicating your ideas about computing and software to other computer scientists in your future career. 

These topics include propositional and predicate logic; proof methods; sets, functions, and relations; sequences, recurrences, and summations; induction and recursion; counting methods; introductory probability; and trees and graphs.  We will also see in class and in the course readings many examples of the applications of these methods to other areas of computer science, such as robotics and artificial intelligence, programming languages, networks, databases, software engineering, cryptography and network security, and machine learning and data science.  We expect that by the end of this course you'll have gained a solid understanding of both the usefulness of these concepts and skills as well as their intellectual elegance.

Goals and Objectives

By the end of this course students should be able to:

  1. For each of the structures (e.g., sets, graphs, trees, functions) or techniques (e.g., counting methods, proof techniques) discussed in the course, the student should be able to 
    1. define the basic terminology and use it correctly; 
    2. give an explanation of why it is important, and provide and discuss specific examples of its use; 
    3. identify its important characteristics, as well as any variants or special cases; 
    4. perform the basic operations associated with it; 
    5. use it, when applicable, to analyze and solve problems. 
  2. Students should also have the following additional analysis, problem solving, and presentation skills: given a problem, students should be able to 
    1. identify which structures and/or techniques could be useful in analyzing or solving the problem, and why; 
    2. apply the appropriate problem-solving techniques to correctly solve the problem; 
    3. modify or specialize structures or techniques to make them applicable to problems that are not amenable to straightforward use of the structures or techniques; 
    4. tell whether a purported solution or analysis is accurate; 
    5. present solutions rigorously, precisely, accurately, and informatively.

Prerequisites

The official prerequisite for this course is Calculus I.  While we will not make much use of differentiation or integration in this course, students will need to be familiar with mathematical notation, and have a general level of "mathematical maturity" - sophistication in abstract thinking, some exposure to limits, functions, and other similar concepts - expected of someone who has completed Calculus I.

Lecture Schedule

The canvas site includes a schedule of lectures for this course. The schedule includes the readings related to each class. Students are responsible for reading the appropriate materials for each lecture; we may not cover all of the reading material in the lecture but it may still appear on homeworks, quizzes or exams. Lecture slides will usually be linked from the lecture schedule before class, but always within one day following the corresponding lecture.

Grading

Grades for the course will be based on four components:

  • 14 Weekly Homeworks (60%): We will have weekly homeworks, to be submitted to Gradescope each Monday evening by 9pm.  Each homework will consist of five problems, graded on a 4-point scale:
    4 points - the solution is correct
    3 points - the solution needs minor corrections
    2 points - the submission shows some understanding of the problem
    1 point - a solution was submitted
    In general, we expect that you will be able to see how to solve the homework problems, but sometimes you may get stuck.  In this case, submitting a solution that explains what you need to show, what you can show, and where (and why) you got stuck will be worth 2/4 points.  More information about homework policies and submission can be found on the canvas homework page.

    Late and Missing Homeworks: Each student can miss/drop up to two homeworks for any reason whatsoever: illness, travel, job interviews, a bad week, et cetera.  In addition, each student will be allowed to submit up to eight homeworks 24 hours late with no penalty.  After that, late homeworks can be submitted up to 24 hours after the deadline with a 25% late penalty.  Homeworks submitted more than 24 hours after the deadline will receive no credit, because solutions will be posted to canvas at that time.

    Extra Credit: Homework submissions that are typeset using LaTeX will be eligible for a 0.5-point (out of 20) extra credit.  (You may find Overleaf a useful tool for getting started editing LaTeX documents; you can also find a variety of introductions to LaTeX syntax and concepts using your favorite Internet search engine)

  • Group work (10%) - In your discussion section, you will be assigned to groups and asked to work on 5-10 problems related to the previous week's lectures.   In the 8 discussions that do not end with a quiz,  TAs will collect your work at the end of the discussion; any group that correctly solves at least 4 problems will receive full credit for the week.  Group work can not be completed outside of discussion sections.

    Late or missing group work: Each student can miss/drop up to two group work submissions for any reason whatsoever.  However, since the point of the group work is that it is done in a group, no late group work will be accepted.

  • Quizzes (15%) - There will be six discussion dates (marked on the class schedule) that end with a 20-minute quiz.  These are short assessments to make sure you have understood the course material since the last quiz.

    Missing quizzes: Each student can miss/drop one quiz for any reason whatsoever.  Due to this policy, there will be no makeup quizzes.

  • Take-Home Final Exam (15%) - There will be a take-home final exam released at Noon on Tuesday, May 9th and due in gradescope by Noon on Wednesday, May 10.

Composite scores will be assigned to grades as follows:

92 - 100 A
90 ≤ score < 92 A-
87 ≤ score < 90 B+
83 ≤ score < 87 B
80 ≤ score < 83 B-
76 ≤ score < 80 C+
72 ≤ score < 76 C
68 ≤ score < 72 C-
64 ≤ score < 68 D+
60 ≤ score < 64 D
 score < 60 F

Student Workload Statement

As a 4-credit class, students should expect to spend the equivalent of 12 hours per week over a 15-week semester, or 180 hours, outside of class.  Of these, about 4-6 hours should be spent on reading and study/review, and 6-8 should be spent on homework. 

Classroom atmosphere expectations

I want this to be a class where everyone feels comfortable asking questions (which is how we learn!) and contributing to discussions.  In order for this to happen, it is important for us all to respect and learn from one another.  Here are some things to keep in mind when interacting with fellow students and course staff:

We all have different experience levels.  Some students may have encountered some materials in this class before, and might make it look like a problem is easy, where other students might find the material new and intimidating.  Please keep in mind that no one knows all of the material, and everyone struggles at some point.  When someone is struggling and you help them move forward, they will remember and you will learn more than if you try to hold them back.  When you are struggling, just remember that just because you haven't learned something yet doesn't mean you can't learn it now.

We all have different identities.  As part of respectful dialog, please think how your comments could impact others in your group. Refer to others as they prefer to be referred to (including, if referring to them in the third person, using any preferred pronoun they choose to indicate).

Part of respecting each other is helping to keep each other safe and healthy.  If you are not feeling well, please do not attend lecture.  All class lecture slides will be posted on Canvas, and lecture recordings will be posted to Canvas.

Academic Integrity Policy

Every student is expected to turn in their own work for all quizzes and exams in this class.  This is not meant to block general discussion of HOW to approach problems: you are encouraged to discuss questions that clarify what the assigned problems are asking, ask about possible errors in the problem descriptions, clarify what is expected of your solutions, and what resources you can use (for example) on Canvas.  However, it is important that you do not proceed to share solutions to the problems and it is certain that sharing or copying another student's solution, (or from another source such as the Internet) whether on an exam or homework, is prohibited.  A good rule of thumb, that I have stolen from the University's Talented Youth Mathematics Program, is as follows: if after discussing a problem, you think you understand how to solve the problem, do something else for half an hour.  Get a snack, go for a walk, work on a different class; whatever.  If you can then solve the problem without referencing any notes or from the discussion, then you must have understood the solution; if you can't, then whatever you eventually submit won't have been directly copied from your discussion.

The University Student Conduct Code defines scholastic dishonesty as: submission of false records of academic achievement; cheating on assignments or examinations; plagiarizing; altering, forging, or misusing a University academic record; taking, acquiring, or using test materials without faculty permission; acting alone or in cooperation with another to falsify records or to obtain dishonestly grades, honors, awards, or professional endorsement. In this course, a student responsible for scholastic dishonesty will be assigned a penalty of an "F" or "N" for the course. If you have any questions regarding the expectations for a specific assignment or exam, or are unsure about posting a particular answer to the class forum, please ask us first.

Required Syllabus Statements

This course conforms to the standard University policies on Student Conduct; Sexual Harrassment; Equity, Diversity, Equal Opportunity, and Affirmative Action; Disability Accommodations;  Mental Health and Stress Management; and Academic Freedom and Responsibility.

Course Summary:

Date Details Due