--- title: Introduction to Theory of Computing Fall 2025 --- | [HOME](http://www.raghumeka.org) | [RESEARCH](http://raghumeka.github.io/research.html) | [TEACHING](http://raghumeka.github.io/courses.html) | | -------- | -------- | -------- | --- ## Introduction The course is for introducing you to the beautiful and profundly impactful world of ***Theory of Computing*** (TOC). The following three questions encompass our main learning goals: :::spoiler 1. What is computation? How different is the iMac Pro really from Apple III? ::: :::spoiler 2. Can we compute our way out of everything? How about predicting `Stack Overflow` errors at compile time? ::: :::spoiler 3. What can we compute efficiently? The computational version of *are we there yet?* ::: At the end of the course I hope you would have learnt something about the nature of computing, universality in computing, and limitations of computing. You can check last year's version [here](http://hackmd.io/@raghum/intrototcs23). --- ## Logistics and Resources :::spoiler **Lecture hours: M-W 2-3:50:** **HAINES 00039** - [Zoom link](https://ucla.zoom.us/j/98842732823). - Lecture 10 will be held in Discussion Section, Oct 31st from 2 - 3:50 pm in Kaplan 169. - Lecture 16 will be held in Discussion Section, on Nov 21st from 2 - 3:50 pm in Kaplan 169. ::: :::spoiler **Course notes**: We will use [ScribbleTogether] (https://scribbletogether.com/) (Click on triangle to expand menu). - Note that each lecture will be on a different sheet within the files. You can access last year's notes on last year's webpage for a preview. - [Week 10](https://scribbletogether.com/whiteboard/F91AD8A1-E546-4D74-AF83-BDFD804C3DE3) - [Week 9](https://scribbletogether.com/whiteboard/20E4E9DE-30A6-4513-9CE1-CEE188542721) - [Week 8](https://scribbletogether.com/whiteboard/28251BE7-0D98-4C4A-A9EE-5653E7051F44) - [Week 7](https://scribbletogether.com/whiteboard/31ED42F8-039D-488D-B98B-9B079828608E) - [Week 6](https://scribbletogether.com/whiteboard/D8957FF0-E26D-4B21-A332-297F96F05C55) - [Week 5](https://scribbletogether.com/whiteboard/51AA95D6-4A99-44A9-B8B8-8AF914EAFD83) - [Week 4](https://scribbletogether.com/whiteboard/B23A859B-3C2B-4D38-85FD-3FC5506225A5) - [Week 3](https://scribbletogether.com/whiteboard/29373D56-14E7-4CA2-BA40-2FB48FB2D1E2) - [Week 2](https://scribbletogether.com/whiteboard/62FBCE9F-8B8E-4538-A92D-735FFB60F6C0) - [Week 1](https://scribbletogether.com/whiteboard/6A5DB2A7-29AA-4806-89E1-BD3AE3109A6F) ::: :::spoiler **Course team**: - Kobe(Yimeng) Wang: Hi all! I'm a PhD student interested in problems related to Theoretical Computer Science and Combinatorics. In my spare time, I like to read and to watch/play sports. Feel free to talk to me about anything. Email me at: kobewang1998@gmail.com - Arvind Vepa: Hi! I'm a PhD student focused on applications of AI in healthcare, specifically data-efficient learning and multimodal LLMs. In my spare time, I like to go to the gym, play ping-pong and pickleball, go to museums, try out different restaurants, and generally explore southern california. You can email me at: arvind.m.vepa@gmail.com - Yiwen Kou: Hi! I’m a fourth-year PhD student in Computer Science at UCLA. My research focuses on theoretical computer science and the foundations of machine learning. Outside of research, I like to relax by listening to music and watching TV. I can be reached at evankou@g.ucla.edu. ::: :::spoiler **Discussion Sections Hours**: Fridays. Expand for hours. - 1A: F 2pm-3:50pm. Renee and David Kaplan Hall 169 (Yiwen) - 1B: F 2pm-3:50pm. Renee and David Kaplan Hall 135 (Arvind) - 1C: F 2pm-3:50pm. Renee and David Kaplan Hall A65 (Kobe) ::: :::spoiler **Office Hours:** Exploit these! 1. **Instructor office hours**: M: 12 - 1; W: 12 - 1. Engineering VI 463. 2. **TA office hours**: - Kobe: M: 4:30-5:30; F: 4:30 - 5:30 Engineering VI 495. - Arvind: M: 1-2; W: 1230-1300 3551 Boelter Hall 3286, Zoom link: https://ucla.zoom.us/j/97881407276?pwd=QmltaWxTSjZwNmJucXhESjVQbnA2QT09 - Yiwen: Tue: 1-2; Thu: 1-2; Engineering VI 495. ::: :::spoiler **edStem:** Our online space for asking, answering questions, and posting links to class material. Register [here](https://edstem.org/us/join/HzJTVc) (this is critical). We will make use of edStem extensively. It will be our main way for communicating with each other. Please ask questions here so that others may also benefit from the knowledge. We will also use it for releasing homework solutions. Homeworks themselves will be posted on the class website. Register using the link emailed to your address on file (with CCLE). You can also register via the link above along with the code provided in first lecture. ::: :::spoiler **Homework submission**: Homework will be released on Gradescope and you will have to submit via Gradescope; Due 9:59PM (Pacific time) on due date. We will use Gradescope for homework and they have to be submitted by 10PM on their due date. Things to keep in mind: 1) Within a week of the course, you should receive a registration link from Gradescope. If you don't receive it before the first homework, contact the TAs immediately; this will give you access to the website. 2) Watch [this](https://www.youtube.com/watch?v=u-pK4GzpId0) one-minute video with complete instructions. Follow them to the letter! The simple guidelines make the process considerably smoother. 3) Make sure you start each problem of a homework on a new page. 4) To generate a PDF scan of the assignments, you can follow the instructions [here](https://raghumeka.github.io/CS180/submitting_hw_guide.pdf); you can also use the scanners in the library. ::: :::spoiler **Homework writing**: LaTeX recommended highly It is strongly recommended to use LaTeX or other word processing software for submitting the homework. Grades will take into account both the correctness and the quality of the solutions. Correctness is a prerequisite but clarity is also important: you are responsible for communicating your solution in a legible and understandable way. Some helpful guidelines: (1) Start early to use office hours. (2) Serious/honest attempts count - there will be reasonable partial credit for attempts that show understanding of the problem/concepts involved. ::: :::spoiler **Textbook**: [Introduction to Theoretical Computer Science by Boaz Barak](https://introtcs.org/public/index.html) The textbook is available for free on the web with many other very useful resources. We will follow this very closely. Another great textbook to peruse is the classical [Introduction to Theory of Computation](https://www.cengage.com/c/introduction-to-the-theory-of-computation-3e-sipser/9781133187790/) by Michael Sipser. If you are interested in learning more about TOC, for advanced but high-level overview these [two](https://www.cambridge.org/core/books/quantum-computing-since-democritus/197A4CD13738E10AAD787DBB78D8E92C) [books](https://www.math.ias.edu/avi/book) are highly recommended. ::: --- ## Homeworks on Gradescope --- ## Grading ::: spoiler **Homeworks: 6 x 4 pts**. All Homeworks are except HW4 are released on Monday (by 7PM Pacific); HW4 is released on Wednesday due to Veterans day holiday. All homeworks will be due by 9:59 PM Pacific on the due date. ::: ::: spoiler **Homework Coverage and Dates**: Expand to see details. - HW 1 Oct 6 - 13: Lectures 1,2,3,4. - HW 2 Oct 20 - 27: Lectures 5,6,7,8. - HW 3 Nov 3 - Nov 10: Lectures 9,10,11. - HW 4 Nov 10 - 17: Lectures 12,13,14. - HW 5 Nov 24 - Dec 1: Lectures 15,16,17. - HW 6 Dec 1 - Dec 6: Lectures 18,19,20 ::: ::: spoiler **Exams: 25, 25, 26 pts**. We will have three non-cumulative exams in the course. **Exams 1, 2 will be held in class on Oct 29, Nov 19 respectively**. Exam 3 will be held on Dec 9th from 8-10 AM in Kaplan Hall A51 (as per university calendar) and will also only be for 110 minutes. ::: ::: spoiler **Exam Coverage and Dates**: Expand to see details. - Exam 1 Oct 29, 2 - 3:50 (Lecture hours): Lectures 1,2,3,4,5,6,7,8. - Exam 2 Nov 19, 2-3:50 (Lecture hours): Lectures 9,10,11,12,13,14. - Exam 3 Dec 9, 8 - 10 am (university schedule): Lectures 15,16,17,18,19,20. Kaplan Hall A51 ::: --- ## Syllabus Broad outline of the course content. - Introduction: 2 Lectures (Chapters 0,1,2) - Circuits: 3 Lectures (Chapter 3,5) - Automata: 4 Lectures (Chapter 6) - Turing Machines: 3 Lectures (Chapter 7,8) - Universality and Computability: 3 Lectures (Chapter 9) - Restricted Models of Computation: 2 Lectures (Chapter 10) - Special topic: Quantum computing or Recursion theorem or Godel's Incompleteness - 3 lectures --- ## Course Policies - There will be no makeup exams for the course. If the above dates do not work for you, you need to talk to me within the first week of classes. - Regrade requests need to be submitted electronically on Gradescope within a week of receiving the graded work. Requests later than a week will not be handled (mainly to keep things flowing). - If you are unsatisfied with the online response for your regrade request, bring it up during TA office hours. If that also does not resolve it, and only then, you can bring it up during instructor office hours (so that we have time to discuss course material during the limited office hours). - We will use edStem for questions and discussions. Please ask questions related to assignments on that platform and not via email. Use this platform so that others can also benefit from your questions; if you want to communicate a private question, you can also do that on edStem. - Collaboration on homeworks is encouraged, but each student must write their solutions independently and should clearly mention the collaborators. Keep in mind that just attempting the homeworks itself will get you reasonable partial credit and will go a long way towards better performance in the exams (which carry significantly more weight). You should never share your written solutions with someone else or copy from someone else's written solutions. Under no circumstances may you use solution sets to problems from previous year courses or from similar courses elsewhere or other resources on the web.