cs330 - Discrete Structures - Fall 2022


Goal

Quick Links

After the successful completion of this class, students should be able to:

  1. Illustrate by examples the basic terminology of functions, relations, and sets and demonstrate knowledge of their associated operations.
  2. Demonstrate in practical applications the use of basic counting principles of permutations, combinations, inclusion/exclusion principle and the pigeonhole methodology.
  3. Calculate probabilities of events and expectations of random variables for problems arising from games of chance.
  4. Establish and solve recurrence relations that arise in counting problems including the problem of determining the time complexity of recursively defined algorithms.
  5. Model logic statements arising in algorithm correctness and real-life situations and manipulate them using the formal methods of propositional and predicate logic.
  6. Outline basic proofs for theorems using the techniques of - direct proofs, proof by counterexample, proof by contraposition, proof by contradiction, mathematical induction.
  7. Relate the ideas of mathematical induction to recursion and recursively defined structures.
  8. Illustrate by example basic terminology of graph theory and model problems in computer science using graphs and trees.
  9. Deduce properties that establish particular graphs as Trees, Planar, Eulerian, and Hamiltonion.
  10. Illustrate the application of trees and graphs to data structures.
  11. Explain the basic concepts modeling computation including formal machines, languages, finite automata, Turing machines.

Before you get started

This class requires you to do a *lot* of work between reading assignments, homeworks, and two exams. The material is likely to be unfamiliar to most students who are required to take this class.

^ Top ^


Hours

Section 1
(CRN: 10273, Main Campus)
Recitation
(CRN: 11839, Main Campus)
Instructor Virgil Bistriceanu
Office hours Mon, Tue 5:30 pm - 6:15 pm
Office SB-105D
Phone (312) 567-5146
Google Chat bistriceanu@iit.edu
e-mail bistriceanu@iit.edu
Lecture Tue 6:25 pm - 9:05 pm, John T. Rettaliata Eng. Center, Room 104
Recitation Thu 6:25 pm - 7:15 pm, John T. Rettaliata Eng. Center, Room 104
Teaching Assistant
  • Name: Li Zhang
    • Office Hours: Mon, Wed 5:00 pm to 6:00pm
    • Office: SB-004
    • Phone: 305-323-9634
    • email: lzhang115 at hawk.iit.edu
    • Internet: Discord ID zl32768

^ Top ^


Books

Textbook - required

Here is how to get to your textbook:

  • Sign in or create an account at learn.zybooks.com
  • Enter zyBook code: IITcs330BistriceanuFall2022
  • Subscribe. Please note that a subscription is $58 and will last until Dec 24, 2022. You will be able to download a PDF copy of the textbook, however some of the interactivity will be lost.

It helps to read the instructions for how to use your zyBook.

^ Top ^


Grading

  • Participation Activities: 15%. Please note that participation activities do not require you to turn anything in, you just need to complete the activities by the day and time specified, typically before class.
  • Homeworks (14%) and Challenge Activities (11%) for a total of 25%. NOTE: You'll have to turn in your solution for a regular homework, typically on the Blackboard; however, since Challenge Activities are auto-graded, you'll have nothing to turn in.
  • Midterm exam: 20%
  • Final exam: 30%
  • Programming Assignment: 10%

The following grading scale will be used:

  • A: [90,100]
  • B: [80,90)
  • C: [70,80)
  • D: [60, 70)
  • E: [0,70)

All scores posted on the Blackboard will be percentages, between 0 and 100. For example, let's assume that a homework is worth 123 points and you get 97 points: what will be posted on the Blackboard is (97/123)*100 which will be rounded up -- using the round-half-up rule -- to 79.

Class participation will help settle borderline grades. While class attendance is not taken, your instructor believes that regular class attendance is important and expects students to actively participate in class. Questions and comments are always welcome.

There is no curving of grades in this class.

^ Top ^


Late Work

All assigned work must be completed by the specified date and time.

^ Top ^


Exceptional circumstances

Your teacher will try to accommodate you in those cases that are beyond your control, such as medical and personal emergencies. Please note that, based on circumstances, the teacher may decide to assign you an incomplete grade, "I", or otherwise ask you to drop the class.

^ Top ^


Incomplete (I) Grades

Yes, you can get an incomplete in this class even if you're not dealing with a personal emergency. Here are the conditions:

  • It's not automatic; you have to request an incomplete from your instructor before finals week. You request an incomplete by using the form at https://my105.iit.edu/registrar/forms/view.php?id=30257
    • This is the only way to request an incomplete, nothing else will be considered.
  • It's a single piece of work that's holding you back. For example, you forgot it's finals day and failed to take the final exam, however you've done well with all assignments. In this case, I can give you an incomplete for not showing up for the final.

^ Top ^


Academic Honesty

All the work you submit must be individual, including, but not limited to, those cases when your instructor has approved pair-programming for you; in these cases the only thing that may be identical with somebody else's is code.

Academic dishonesty will not be tolerated. IIT has a strict academic honesty policy; here are the top points:

  1. The misrepresentation of any work submitted for credit as the product of a student’s sole independent effort, such as using the ideas of others without attribution and other forms of plagiarism.
  2. The use of any unauthorized assistance in taking quizzes, tests or examinations.
  3. The acquisition, without permission, of tests, answer sheets, problem solutions or other academic material when such material has been withheld from distribution by the instructor.
  4. Deliberate harmful obstruction of the studies, research or academic work of any member of the IIT community.
  5. Making material misrepresentation in any submission to or through any office of the university to a potential employer, professional society, meeting or organization.
  6. The intentional assistance of others in violation of the standards for academic honesty.

You can read the entire policy at https://web.iit.edu/student-affairs/handbook/fine-print/code-academic-honesty. You should read it until you fully understand it. A good way to test whether you understand it is to try to explain it to somebody else.

^ Top ^


Extra Credit

There is no opportunity for extra credit in this class.

^ Top ^


Exams

Exams are open-book(s), open-notes, and comprehensive. You may bring with you any notes you want, however you may not share them with anybody else during the exam.

During the exam the use of communication devices such as phones, laptops, etc. is not allowed. You may bring with you a basic calculator. This may sound like a blast from the past, but we tried being permissive with the use of computers and phones and ended up having more trouble than we thought it would be worth.

^ Top ^


Recitation

We highly encourage you to attend recitation. Attendace of recitation is an important factor when making final grade decisions, in particular if you are borderline.

^ Top ^


Communications

The first person you should contact for any questions related to assignments is your TA.

Please be descriptive in the subject line when you email your TA or instructor such that processing doesn't get delayed. At the very minimum you should indicate the class and the term, followed by a brief description of what is it that you want to communicate.

Examples of good subject lines for your email:

  • cs330, Fall 2022 - question about Hw1
  • cs330, Fall 2022 - When will the grades be posted on the Blackboard?
  • cs330, Fall 2022 - Do we have an assignment due next week?

^ Top ^


Schedule

Date Lecture Work due
8/23/22 Introduction, Logic (1.1 through 1.8)  
8/30/22 Logic (1.9 through 1.13)  
9/6/22 Proofs. Sets HW-1
9/13/22 Functions  
9/20/22 Boolean Algebra HW-2
9/27/22 Relations / Digraphs  
10/4/22 Computation HW-3
10/11/22 Midterm Exam  
10/18/22 Induction and Recursion HW-4
10/25/22 Integer Properties. Introduction to Counting  
11/1/22 Languages and Grammars - no zyBook material  
11/8/22 Discrete Probabilities  
11/15/22 Graphs Programming Assignment
11/22/22 Trees  
11/29/33 Final exam review Sort out with the TA all outstanding issues
12/6/22 Final Exam  

Your instructor reserves the right to change this schedule.

^ Top ^


Important Events

Event All sections
Last Day to Add/Drop for Full Semester Classes with No Tuition Charges 9/3/22
Spring & Spring and Summer Incomplete Grades Due 10/3/22
Midterm 10/11/22
Last Day to Withdraw for Full Semester Courses 10/31/22
Last day of Fall classes 12/3/22
Last Day to Request an Incomplete Grade 12/4/22
Final exam 12/6/22, 7:30pm - 9:30pm

For more important dates and detail go to the IIT Academit Calendar page.

^ Top ^


Americans with Disabilities Act (ADA)

Reasonable accommodations will be made for students with documented disabilities. In order to receive accommodations, students must obtain a letter of accommodation from the Center for Disability Resources. The Center for Disability Resources (CDR) is located in 3424 S. State St., room 1C3-2 (on the first floor).

^ Top ^


Varia

Unless otherwise stated all papers you turn in must be TYPED. No handwritten work is accepted.

Each page will have a header as follows:

  • The left side: your name
  • Middle: page number and the total number of pages (ex. 2/5 indicates this is page 2 out of a total of 5)
  • Right hand side: name of the assignment (ex. Homework #2)

Each page will also have a footer:

  • The left hand side will contain the following text: cs330-section: Fall 2022 where section stands for the section you are in
  • The right hand side will contain the following text: Illinois Institute of Technology - Computer Science

^ Top ^