CSE20 - Discrete Mathematics for Computer Science


If you ever wondered "What sort of mathematics do I need for computer science?", this course will provide some of the answers. In particular, you will have the opportunity to learn basic concepts about algorithms, computer arithmetic, number systems, Boolean algebras, logic, proofs, program correctness, loop invariants, modular arithmetic, linear and partial orders, recurrences, and induction, among other things. These are some of the essential ingredients in the toolkit of every computer scientist.

Please see the TED website for homework (questions, solutions, submission), online quizzes (due before each W/F class) and discussion forums (for all your questions).

Instructors

Name Role Email Office hours
Instructor Prof. Shachar Lovett slovett@cse.ucsd.edu Monday 3-5pm, CSE 4234
TA Julie Curtis jccurtis@eng.ucsd.edu Thursday 3:30-4:30pm, CSE Basement
TA Nicholas Genise ngenise@eng.ucsd.edu Friday 10-11am, CSE Basement
TA Kaave Hosseini skhossei@eng.ucsd.edu Tuesday 4-5pm, CSE Basement
Tutor Jie Sheng j3sheng@ucsd.edu Friday 11-1pm, CSE Basement
Tutor Nan Shu nashu@ucsd.edu Friday 1-3pm, CSE Basement
Tutor Andrew Wang aywang@ucsd.edu Tuesday 12-2pm, CSE Basement

Class meetings

Date Time Location
Lecture MWF 2:00pm - 2:50pm PCYNH 106
Discussion A01 F 5:00pm - 5:50pm CENTR 113
Discussion A02 F 6:00pm - 6:50pm CENTR 113
Final 3/16/2015 3:00pm - 6:00pm To be announced

Textbook

Jenkyns, Stephenson. Fundamentals of Discrete Math for Computer Science: A Problem-Solving Primer.
We will focus on sections in Chapters 1,2,3,6. Supplementary references will be provided as needed.
The full pdf of the book is available for free download from a UCSD internet connection here. It also offers a paperback version for about $25 (on-campus) or $40 (off-campus). Amazon sells the book for about $50.

Homework

Homework is due on Mondays, except for weeks with midterms. Homework should be solved in groups of 3-4 students. Submission is online (via TED), one submission per group. No collaboration or discussion is allowed outside the groups.

Grading

The final grade will be composed as follows: A passing grade in the final exam (at least 50%) is required to pass the class. Letter grades will be assigned as follows:

Schedule

NOTE: Subject to change throughout the quarter 7
Date DaySubject Reference Notes Slides
01/05/2015 Mon Algorithms JS 1.1-1.2 slides
01/07/2015 Wed Algorithms JS 1.1-1.2 slides
01/09/2015 Fri Number systems JS 1.3 slides
01/12/2015 Mon Boolean connectives JS 3.2 Homework 1 due slides
01/14/2015 Wed Predicates and Quantifiers JS 3.3 slides
01/16/2015 Fri Valid arguments, Simplifications JS 3.4 slides
01/19/2015 Mon No class (MLK day) Homework 2 due
01/21/2015 Wed Sets JS 2.1 slides
01/23/2015 Fri Sets JS 2.1 slides
01/26/2015 Mon Sequences JS 2.2 Homework 3 due slides
01/28/2015 Wed Review session
01/30/2015 Fri Proof strategies JS 3.5 slides
02/02/2015 Mon Midterm 1
02/04/2015 Wed Proof strategies JS 3.5 slides
02/06/2015 Fri Proof strategies JS 3.5 slides
02/09/2015 Mon Mathematical induction JS 3.6 Homework 4 due slides
02/11/2015 Wed Mathematical induction JS 3.6 slides
02/13/2015 Fri Strong induction JS 3.6.1 slides
02/16/2015 Mon No class (presidents day) Homework 5 due
02/18/2015 Wed Proofs for algorithms JS 3.7 slides
02/20/2015 Fri Proofs for algorithms JS 3.7 Proof workshop! slides
02/23/2015 Mon Binary relations JS 6.1 Homework 6 due slides
02/25/2015 Wed Equivalence relations JS 6.2 slides
02/27/2015 Fri Modular arithmetic JS 6.2 slides
03/02/2015 Mon Midterm 2
03/04/2015 Wed Modular arithmetic JS 6.2 slides
03/06/2015 Fri Order relations JS 6.3 slides
03/09/2015 Mon Knights and Knaves JS 6.5 Homework 7 due slides
03/11/2015 Wed Infinite set sizes slides
03/13/2015 Fri Review slides
03/16/2015 Mon Final exam