**Instructor:**Joe Halpern, 414 Gates, halpern@cs.cornell.edu, 5-9562**Admin:**Randy Hess, 401 Gates, rbhess@cs.cornell.edu, 5-0985;**Classes:**Monday, Wednesday, Friday 10:10-11:00, Olin 165**Staff and office hours:**Can be found here**Prerequisites:**The official prerequisite for course is a programming course, but it's not critical. If you are taking CS 1110 or CS 2110 concurrently, that's fine. If not, and you haven't taken any programming courses, speak to Prof. Halpern.**Text:***Mathematics for Computer Science*by Eric Lehmann, Albert Meyer, and Tom Leighton is the text, and we'll be following it fairly closely. It can be freely downloaded here. Two useful backup texts, which are good sources for (simple) problems if you need practice, are*Discrete Algorithmic Mathematics*(3rd edition), Stephen B. Maurer and Anthony Ralston, A. K. Peters and*Discrete Mathematics and its Applications*by Kenneth Rosen.**Coverage:**Discrete mathematics covers a lot of topics, which I'll try to tie together. Many of you will have seen at least some of them in high school, but I suspect we'll be doing things in much more depth. Here is a rough course outline (the fact that a chapter is listed does not mean that we'll cover every topic in the chapter)- Proving things, a little logic, and induction: Chapters 1, 3, 5, 8
- Number Theory: Chapter 9
- Combinatorics: Chapter 15
- Probability: Chapters 17 - 20
- Graph Theory: Chapters 10, 12, 13
- Automata Theory: not covered in the text; we'll take this material from Rosen
- A little more logic (not really covered in the book well, but it will be only a few lectures)

**Grading:**There will be two prelims, scheduled by Cornell for the evenings of Thursday March 5 and Thursday April 9 from 7:30-9. There will also be a final, which will be on May 15 at 2-4:30 PM. If you have a conflict with the prlim or exam times, let me know as soon as possible. I don't promise to be able to do something about it, but the sooner you tell me, the more likely it is that I will be able to do something about it. I believe that doing homework regularly is the best way to learn the material, and the grading reflects that. Homework, midterm, and exams will be weighted roughly as follows:- Problems sets: 25%
- Midterms: 40%
- Final: 35%
- Note that I've switched the percentages for the midterms and the final, since the midterms have a total length of 3 hours and the final has a total length of 1 hour.

**Piazza:**Please enroll in Piazza for course announcements and discussion (although some will also be posted on the course web page).**Homework:**- Homework will be posted on Piazza and the course home page. Homework is will be handed just just every week on Monday and will be due before class (i.e., before 10 AM) the following Monday. It is possible to hand in homework late (i.e., before 5 PM on Tuesday) for a penalty of 15%. If you've got some homework done by Monday, hand in what you've got, and hand in the rest on Tuesday. The penalty applies only to what's handed in late.
- Homework will be handed in via Gradescope. Please enroll in gradescope using entry code: MNEJXP. You will need to hand in a pdf file, but it's OK if you handwrite your answers and then hand in a picture of your solutions. But two issues to keep in mind if you write solutions by hand:
- Make sure it's legible! It is not the grader's problem to decipher your handwriting.
- It's also your problem to ensure that you hand in a single pdf file.

- Homework must be handed in on time. To compute the final homework grade, I will drop your two lowest assignments. If you miss handing in an assigment (for emergency, illness, whatever), this will be among those dropped.
**Academic Integrity:**It's OK to discuss the problems with others, but you**MUST**write up solutions on your own, and understand what you are writing. You may not copy any part of someone else's code or written homework. To do so is a violation of the Academic Integrity Code. If in doubt as to what's acceptable, please ask!