Princeton University
Computer Science Department

Computer Science 240
Reasoning about Computation

Ran Raz

Fall 2024


Directory
General Information | Schedule | Policies

Lectures

You are required to attend the lectures. Your lecture attendance and participation are important to your success in the course.

Some of the material covered in lectures may not be covered in the textbooks or precepts. Some exam questions may reward your lecture attendance.


Precepts

You are required to attend the precepts. We also encourage you to participate actively in the precepts by listening attentively, asking helpful questions occasionally, answering questions occasionally, and so forth. Your precept attendance and participation are important to your success in the course and may also affect your grade (see also the Grading section of the Policies). They also are important to the success of the course as a whole.

Some of the material covered in precepts may not be covered in the textbooks or lectures.

You should attend your precept, that is, the precept for which you are registered in Princeton's TigerHub system.

Concerning attending another precept instead of your precept:

Generally it is not acceptable to attend another precept instead of your precept. However, it is acceptable to attend another precept instead of your precept occasionally if a conflict with your precept arises (indeed you should do so). In that case, as soon as you become aware of the conflict, send e-mail to your Preceptor and the other Preceptor. Note that this mechanism is intended to address occasional conflicts; it does not provide license to attend precepts other than your precept on a regular basis.

Concerning attending another precept in addition to your precept:

Generally it is not acceptable to attend another precept in addition to your precept. After all, if even a small fraction of the course's students did that routinely, then some precepts would be very large (or even overflow) routinely. Precepts containing a large number of students are less effective than those containing a small number. However, it could be acceptable to attend another precept in addition to your own occasionally. In that case, send e-mail to your Preceptor and the other Preceptor the day before the precept, asking permission to attend. The Preceptors then will make the decision and let you know.


Announcements

Course announcements are distributed through the course's Piazza account (Signup link).


Electronic Communication

These are the course's policies concerning electronic communication:

In the context of electronic communication, the phrase "any part of your assignment solution" includes:


Assignment Conduct

Unless an assignment is marked as a no-collaboration assignment in which case you may only discuss the problems in that assignment with course staff, you may collaborate in groups of at most three students of the course to solve assignment problems. In the case of assignments that allow collaboration, the same group of (at most three) students of the course should collaborate in all problems of that assignment. After discussing with your collaborators, you must type your own solutions. You must write all the names of your collaborators at the start of your solutions for that assignment. If you did not collaborate with anyone, you must clearly state it at the start of your solutions for that assignment, writing for example ''Collaborators: None'' at the start of your solutions for that assignment. You are not allowed to discuss your solutions outside of your group. However, you may discuss your solutions with the Professor of the course, any of the Preceptors of the course and the Lab TAs; see the course's General Information web page for information on the teaching staff of the course. Any notes taken during your discussions should be discarded after the discussions are over and before you write your solution. After you finished your discussions, you should write your own solutions in isolation. Being together (even in an online setting and with your group members or other students of the course) and writing/typing solutions is strictly prohibited.

You may consult the course reading material (distributed only in this semester's course Piazza account) to solve assignment problems. Furthermore you can consult external sources to learn the course material and to solve assignments, with the understanding that:

Sharing your assignment solutions with another student is an especially egregious violation of course policies. Do not give hard copy of your work to anyone. Do not e-mail your work to anyone. Do not make your work available to anyone via the web.

There will be several problems in each assignment. You must type your solutions to the problems of the assignment on one PDF file. You may use the provided LaTeX templates to type in your solutions. Write your name, assignment number, and names of your collaborators at the start of the PDF file containing your solutions for the assignment.

Concerning retaking COS 240:

If you took COS 240 (or part of it) during a previous semester, then you may use your work on assignments from that previous semester. However:


Exam Conduct

Conduct during in-class exams is covered by the University Honor Code. If we suspect a student of inappropriate conduct during an in-class exam, we will refer the case to the Honor Committee. If the Honor Committee finds the student guilty of inappropriate conduct, the standard penalty is automatic failure of the COS 240 course. The Honor Committee may impose additional penalties.


Submitting Assignments

You must submit all your solutions to an assignment electronically as one PDF file using the link to the TigerFile service posted in the relevant Piazza thread.


Assignment Late Submission

You may use up to 4 late days throughout the semester, but not more than 2 days on a given assignment. Using one late day on an assignment extends the due date/time of that assignment by 24 hours. Using two late days on an assignment extends the due date/time of that assignment by 48 hours. On each instance, you may only use an integer number of late days. Your late days' usage up to and including the current assignment is posted on Canvas after you submit your solutions to the problems of that assignment.

Outside of this policy, no late submissions will be accepted unless there are extraordinary circumstances involved. We will grant extensions only in the case of illness (with a doctor's note) or other extraordinary circumstances. If illness or other extraordinary circumstances will cause you to submit an assignment late, then you should discuss the matter with your preceptor as soon as possible (before that assignment's deadline has passed). Please plan your work on the assignments so that travel, religious holidays, etc. do not cause you to submit it late. Heavy workload is not an extraordinary circumstance.

If you wish to remove an assignment file you submitted, you can only do so before 48 hours have passed after this assignment's deadline. This time period you have to remove an assignment file you submitted is not affected by any late days you may have used on this assignment.


Grading

Your final grade for the course will be calculated as the maximum of: the grading scheme in Table A (50% assignments and 50% Exams) and the grading scheme in Table B (50% assignments and 45% Exams and 5% Attendance).

Table A
Component Weight
Assignments (see below for calculation) 50%
Exams (Midterm and Final, see below for calculation) 50%
Table B
Component Weight
Assignments (see below for calculation) 50%
Exams (Midterm and Final, see below for calculation) 45%
Participation (see below for calculation) 5%

The Exams Grade will be calculated as follows. It will be the maximum of: (60% final exam + 40% midterm exam) and (80% final exam + 20% midterm exam).

There will be 5 Assignments (Problem Sets). Each Assignment will consist of multiple problems. The total number of problems across all assignments will be approximately 30. One Assignment will be a no-collaboration assignment (the first one). The Assignments' score will be calculated as follows: (0.25 * Your Lowest Assignment Score + Sum of your Remaining Assignment Scores) / 4.25.

Your Participation score will be the maximum possible if you attend at least 18 Lectures and 7 Precepts. Your Participation score will be 0 if you attend less than 13 Lectures or less than 6 Precepts. Note that if you attend on 5 or more occasions Precepts that you are not enrolled at your Participation score will be 0, since this implies that you attended Precepts other than your own on a regular basis contrary to the rules in the Precepts section of the Policies.