CS173: Discrete Structures
Tutorials and Study Problems


Tutorials

Many of our tutorial problems will be taken from this manual of discussion problems. Additional problems will be posted below, as needed. Answers to tutorial problems will be posted Friday evening. If you miss tutorial, feel free to consult with friends and staff.

Tutorial groups will be assigned randomly and stay stable for the whole term. If your group is working out badly, please contact your instructor.

Study problems

Each week, you should do the study problems listed below. You should write up a solution to each problem on your own, as if you were taking an exam or turning in a graded homework, before checking your answers against the posted solutions. Writing up the answers is important, since it forces you to work through the details and practice composing a polished proof.

As motivation, you will need to submit a typed answer to one study problem. These answers will be typed directly into a moodle editing window (not uploaded as pdf) so that you can get used to the editor before you have to use it on examlets. Although study problems come with answers, we're expecting to see your answer written in your own words. This will be graded for good-faith completion, not correctness. We'll give you some choice about which problem to write up, but we will exclude some easy warm-up problems.

When writing equations in Prairielearn, it's often helpful to know some basic latex commands. Here is a brief guide

You may freely consult friends and/or course staff for help checking your answers and for hints if you get stuck. You can also post questions on piazza. However, significant pieces of solutions should be posted only privately to the course staff.

Additional practice problems, sample exams, etc may be found on the web pages for previous offerings of this course. There are differences from term to term and online exams are obviously a bit different from paper ones, but you'll find that the basic techniques and concepts are similar.

Schedule

This schedule is somewhat tentative: tutorial problems will appear and study problems will be finalized around the start of each week. Study problems are due on the Sunday at the end of each week. Given the double speed pacing of the class, there will often be more suggested tutorial problems than you can complete in one hour. Treat the rest as extra study problems (in the literal sense that you can use to study them -- not the 'submit as study problem' sense).


 
Week Topic Study Problems Tutorial problems Comments
Week 1 Prerequisites, Logic, Proofs, and Number Theory math prerequisites
logic
proofs
number theory
Get to know the rest of your (temporary) team.

Do either 1.2bc or 1.3d in the discussion manual (solutions)
Do this problem  ( solution )
Do problems 1.4a, 2.2ab, 2.3a, and 2.4a in the discussion manual. (solutions)

Type up and submit one tutorial problem.

Don't worry if you don't finish - treat the rest as extra study problems (but don't turn them in)
For your study problem submission, turn in a logic, proof, or number theory problem (other than number theory problems 1 or 6), not a prerequisites problem.

Note: This first tutorial will be online only and on Thursday due to Juneteenth. Because there cannot be an official tutorial that day, there will be no points awarded for tutorial attendance or tutorial problem submission. There will be credit for the weekly study problem! 
Week 2

Modular Arithmetic, Set theory,
and Relations


modular arithmetic
set theory
relations

Get to know the rest of your (official) team

Do 2.1 in the discussion manual. For 2.1a, include at least three positive and three negative values. 
Do 3.1, 3.2, and 3.3b in the discussion manual
(solutions)
Do these relation problems 
(solutions)
Do these set problems (if you have extra time)

Type up and submit one tutorial problem.

For your study problem submission, choose one of: 

Set theory problem 2, 3, or 4

Any relation problem
Week 3 Functions, Graphs,
Two-way bounding
functions
graphs
two-way bounding

Do discussion manual problems 5.1bd, 5.2, 5.4, 7.3, 7.5c
Do this problem (solutions)
Do these discussion manual problems (it looks like a lot but most are much shorter problems than usual): 8.1a, 8.3b, 8.4, 8.5, 9.1b, 9.2bc, 9.3a, 10.2d, 10.1b (solutions)
Choose one of:

Any function problem

Any graph problem
Week 4 Induction and Recursion easy induction
unrolling
 
Do these discussion manual problems: 11.1bc, 11.2, 11.4, 12.2ac
Do this problem
Do this problem (solutions)
Choose any problem
Week 5 Recursive Definition, Trees, Grammars, and Big O

induction
tree induction
inequality induction
recursion trees
 

Do these discussion manual problems: 12.1
Do this problem
Do discussion manual problem 12.3abcd
Do this problem
(solution)
Discussion manual problems: 13.3b, 13.2a, 13.4
(solution)
For tutorial problems, do any problem except 12.1

Study problems choose any problem
Week 6 Algorithms, NP, and Contradiction algorithms
contradiction
Do these discussion manual problems: 15.5, 15.3, 15.2, 15.4 (solutions)
Do these discussion manual problems: 2.2a (justify your answer using proof by contradiction), 16abc (solutions)
 
Choose any problem
Week 7 Collection of Sets and State Diagrams
state diagrams
collections of sets

Do these discussion manual problems from section 17: 1a-e, 2a, 3abc, 4a-f, 5ae, 6ab
Do these problems
(solutions)
Do these discussion manual problems: 18.1, 18.2
Do this problem
(solutions)

Choose any problem
Week 8 Countability
countability
 

Do these discussion manual problems: 19.1, 19.2
Do this problem
(solutions)

Don't turn in anything (these problem are just provided to help you practice for the final).