CS46: Theory of Computation
Spring 2016

Announcements | Class Info | Introduction | Goals | Grading and Late Policy | Assignments | Schedule | Feedback

This is a living document. Please check back regularly for updates!

Announcements

    So long and good luck!

Class info

Instructor: Sindhu Kutty
Lecture Room: Science Center 199
Lecture Time: MWF 11:30–12:20
Lab A: Th 1:05–2:45 SCI 240
Lab B: Th 2:45– 4:15 SCI 240

Textbook

Introduction to the Theory of Computation, Third Edition. Michael Sipser.

Schedule

Introduction

This course is an introduction to the ‘science’ part of computer science. In the sciences we typically study the world through the lens of some model. For instance, in biology courses, you may have seen cellular models, in physics courses, you may been introduced to the standard model of particle physics. In computer science, we study the model of computation and classify and solve problems in that model. While computers are now ubiquitous and the idea of an algorithm seems natural, where did these ideas originate? Why, for instance, do we have memory on our machines? Is it necessary for computation, or simply a convenience? We will study these and other such fundamental questions in this course. We will also ask if there are problems that are inherently hard or simply unsolvable. We will examine the limits of computers and computation and then consider the consequences of these limits. In doing so, we will study cryptographic protocols and approximation algorithms. I hope you will come away from this course excited by the foundational ideas of computer science and equipped to apply these techniques to solve a wide variety of problems.

I hope you will have fun with this!

Goals for the course

By the end of this course, you will:

Student Responsibilities

Grade Distribution

Grades will be weighted as follows:

Homework Policy

Assignments. Homework assignments will be due roughly every week. The assigned problems will be posted on the schedule on the course webpage on Wednesday. The first homework will be an individual assignment; starting with the next assignment, you will work in groups of 3 or 4. Each group (or student for individual assignments) will be required to hand in a hardcopy of the assignment at the beginning of class on Wednesday. Most homework assignments will be similar in spirit to lab assignments in other group 1 CS classes or to problem sets you've been assigned in some math classes. You are strongly encouraged (but not required) to typeset your homework solutions using LaTeX. Please indicate your remaining late days on every assignment submission. All homeworks assignments will have the same weight and I will drop the lowest homework score when calculating your grade.

Late Policy. Each student will be given 2 late days for the semester. A day is defined as a 24-hour period. These can be used to hand in assignments late, and can be used for any reason---illness, interviews, paper deadlines, hackathons, etc. For group assignments, all group members need to have late days to use them. If one member has no late days remaining, you cannot use late days for the assignment. You can use at most 1 late day per assignment. Please use these wisely! I will not accept any submissions beyond 24 hours after an assignment is due. Once you use up your late days, further late assignments will not be accepted.

You do not need to notify me ahead of time to use a late day. Just hand me your solutions when you have finished, or leave them in my mailbox if I am not around. Even if you do not fully complete an assignment, you may submit what you have done to receive partial credit.

Academic Accommodations

If you believe that you need accommodations for a disability, please contact Leslie Hempling in the Office of Student Disability Services (Parrish 113) or email lhempli1@swarthmore.edu arrange an appointment to discuss your needs. As appropriate, she will issue students with documented disabilities a formal Accommodations Letter. Since accommodations require early planning and are not retroactive, please contact her as soon as possible. For details about the accommodations process, visit the Student Disability Service Website. You are also welcome to contact me [the faculty member] privately to discuss your academic needs. However, all disability-related accommodations must be arranged through the Office of Student Disability Services.

Academic Integrity

Note: in the following paragraphs, "code" refers to all homework solutions, including written programs but also proofs, analysis, written reports, etc.

Academic honesty is required in all your work. Under no circumstances may you hand in work done with (or by) someone else under your own name. Your code should never be shared with anyone; you may not examine or use code belonging to someone else, nor may you let anyone else look at or make a copy of your code. This includes, but is not limited to, obtaining solutions from students who previously took the course or code that can be found online. You may not share solutions after the due date of the assignment.

Discussing ideas and approaches to problems with others on a general level is fine (in fact, we encourage you to discuss general strategies with each other), but you should never read anyone else's code or let anyone else read your code. All code you submit must be your own with the following permissible exceptions: code distributed in class, code found in the course text book, and code worked on with an assigned partner. In these cases, you should always include detailed comments that indicates on which parts of the assignment you received help, and what your sources were.

Failure to abide by these rules constitutes academic dishonesty and will lead to a hearing of the College Judiciary Committee. According to the Faculty Handbook: "Because plagiarism is considered to be so serious a transgression, it is the opinion of the faculty that for the first offense, failure in the course and, as appropriate, suspension for a semester or deprivation of the degree in that year is suitable; for a second offense, the penalty should normally be expulsion."

Please contact me if you have any questions about what is permissible in this course.

Feedback

Have something to say? Send me (anonymous) feedback!