15-251 aims to give students a thorough introduction to the basics of computer science related mathematics, from set theory to probability to computability and complexity.

- 40% Assignments
- 30% Midterms
- 30% Final

Homeworks are due at 11:59PM US Eastern Time unless otherwise noted on the assignment. Most homework assignments will be released on Wednesday nights (or Thursday mornings), and will be due the following Wednesday.

Late assignments will be accepted, subject to the following rules:

- Each student will be granted a pool of
**four**slop days per semester. - Slop days will be used automatically, and will result in no grade penalty.
- Once all of a student's slop days have been used, each day that an assignment is late will deduct 20% of the total value of the assignment from the assignment's score.
- Regardless of how slop and penalty days are used, no assignment may be submitted more than two days late.

Please note that your slop days are meant to account for most circumstances, including illness such as the cold and flu, athletic and academic events, and procrastination. Therefore, please do not ask for an extension unless in extenuating circumstances (such as a major illness or injury involving hospitalization). Note that all requests for extensions must be granted by a course instructor (Dr.Sutner or Dr.Sleator)

All students are expected to be familiar with, and to comply with, the University Policy on Cheating and Plagiarism.

Any work you submit as part of this class must be entirely your own. No part may be derived from outside sources, including textbooks, other students' work (current, past, or future students), internet sources, other courses (including prior instances of this course), or other people, without the express permission of an instructor or TA. Any material found on this site is permitted.

That being said, 15-251 is a collaborative course, and we encourage students to work in small groups. By "small groups", we mean that each student may work with at most four other students. Note that "working with" is taken to be both a symmetric and transitive relation. Thus, every member of a group works with every other member of the group. Every student must note the names and Andrew IDs of every other student that they worked with on their assignment. Groups may change between assignments. Working with more than four other students, or failing to note your collaborators on your assignment will be regarded as a violation of the academic integrity policy.

Every student must submit their own written up solutions for each assignment. Additionally, students in the same group may not work together in creating the final, written solutions for any problem, and should wait a reasonable amount of time after collaboration before writing up solutions. By "reasonable amount of time", we mean that each student should be able to thoroughly explain a solution well after they have stopped thinking about it. We reserve the right to check that a student understands the solutions they have submitted by asking for oral explanations of their solution if we suspect a violation of this policy.