Welcome to CSE 105! This course will help you answer fundamental questions about computing:
What problems are computers capable of solving?
What resources are needed to solve a problem?
Are some problems harder than others?
In this course, we will explore what it means to be "computable". We begin with a very simple model of computation, and work our way to the most powerful, the Turing machine, named after Alan Turing, who formalized the notion of "algorithm" in this last model even before there were any physical computers. You'll also learn about the relationship of these models to some essential tools in a computer scientist's toolkit, such as regular expressions and context-free grammars. Finally, you'll develop your technical communication skills in writing formal arguments and proofs.
Michael Sipser, Introduction to the Theory of Computation, 3rd ed.
We will use the international edition, which is much more affordable. It is available on Amazon for about $19, or the bookstore for $17.50.
See also the errata for a list of known typos/errors in the book.
Grading
The final grade will be composed as follows:
Final exam: 40% (must pass to pass class)
Midterms: 30% (2 midterms; lowest grade dropped)
Homework: 20% (7 homeworks; the lowest grade is dropped)
Participation: 10% (see explanation below)
A passing grade in the final exam (at least 50%) is required to pass the class. Letter grades will be assigned as follows:
A range (A-,A,A+): 88.0% - 100%
B range (B-,B,B+): 75.0% - 87.9%
C range (C-,C,C+): 60.0% - 74.9%
D: 50.0% - 59.9%
F: below 50.0%
The designation of +/- inside a grade range is based on the instructor discretion. It will depend on the grade distribution as well as your particiaption in class
and discussion, coming to office hours, and improvement throughout the class.
Homework
Homework is 20% of the final grade. There will be 7 homeworks, your lowest grade will be dropped.
Homework is due on Mondays 11pm, except for weeks with midterms. Submission is online via Gradescope
(you should already be enrolled; if not, enroll using your @ucsd.edu email and the code MYRWVG).
Instructions:
Homework should be solved in groups of 3-4 students (you can change groups for different homeworks; students may be in different sections).
Submit only one submission per group.
No collaboration or discussion outside the groups is allowed (but if you are stuck on a problem, please come to discussion or office hours).
Participation
Participation is 10% of the total grade. For full participation grade, you need to collect 20 participation points. There are several ways in which you can get particiaption points:
1 point: coming to lecture and participating in clicker discussions (max 2 per week, not including midterms)
1 point: coming to discussion section (max 1 per week)
2 points: solving the weekly review quiz
i-Clicker
Please register your i-Clicker here.
Please use the following options when registering: (1) iClicker classic (2) My institution does not use an LMS. If you are asked to pay a fee when registering, please use instead this form, and we will update your information manually.
Discussion forums
We use Piazza for discussion forums: any questions that you have on the material, and finding other students for group study and homework.
Podcast
You can access all previous classes through podcast.