š General
š Python Tutorials
š Wikipedia
- Regular Languages
- Deterministic Context-Free Languages
- Context-Free Languages
- Recursive Language (Turing-decidable)
- Decider (a type of Turing Machine)
- Recursively-Enumerable Language (Turing-recognizable)
- Enumerator (a type of Turing Machine)
- Time Complexity
- List of Unsolved Problems in Computer Science
šŗ Videos
š Study Guides
š§© Projects
š Course Schedule
| Week | Date | Topics | Due |
|---|---|---|---|
| 1 | Feb 3rd (Tuesday) | Course Introduction / Math Review For next time: Read the syllabus, download and install Java, download JFLAP, get the textbook and read Chapter 0 (mostly focusing on 0.1 and 0.2), and brush up on Python. |
|
| Feb 5th (Thursday) | Deterministic Finite Automata (DFAs) For next time: Read 1.1 regarding DFAs. Start working on Project 1. |
|
|
| 2 | Feb 10th (Tuesday) | Nondeterministic Finite Automata (NFAs) For next time: Finish reading 1.1. Continue working on Project 1 (I strongly suggest to get started early, just in case you run into some problems with your code). Start reading 1.2. |
|
| Feb 12th (Thursday) | DFA and NFA Practice For next time: Continue working on Project 1 (I strongly suggest to get started early, just in case you run into some problems with your code). Continue reading 1.2. |
|
|
| 3 | Feb 17th (Tuesday) | Regular Expressions (REGEXs) For next time: Start reading 1.3. Finish Project 1 by Thursday night. Project 2 will be assigned next time. |
|
| Feb 19th (Thursday) | Regular Expressions (REGEXs) For next time: Continue reading 1.3. Project 2 is now assigned. Project 1 is due tonight. |
|
|
| 4 | Feb 24th (Tuesday) | Regular Expressions (REGEX) For next time: Keep working on Project 2. Finish reading 1.3. |
|
| Feb 26th (Thursday) | Nonregular Languages (The Pumping Lemma) For next time: Continue working on Project 2. Iām going to go ahead and post Project 3 for anyone that wants to get a head start on it. Start reading 1.4. |
|
|
| 5 | Mar 3rd (Tuesday) | Review for Exam 1 For next time: Continue working on Project 2. Finish reading 1.4. The study guide is posted for Exam 1. |
|
| Mar 5th (Thursday) | Context-Free Grammars (CFG) For next time: Iām moving Project 2 a bit to give you more time to work on it. Start reading 2.1. |
|
|
| 6 | Mar 10th (Tuesday) | Exam 1 For next time: Finish Project 2 by tonight. |
|
| Mar 12th (Thursday) | Context-Free Grammars (CFG) For next time: Keep working on Project 3. Finish reading 2.1. |
|
|
| 7 | Mar 17th (Tuesday) | Pushdown Automata (PDA) For next time: Keep working on Project 3. Read 2.2 |
|
| Mar 19th (Thursday) | Pushdown Automata (PDA) For next time: Project 3 is being pushed until after break. Finish reading 2.2. We will review for Exam 2 next time. |
|
|
| 8 | Mar 24th (Tuesday) | SPRING HOLIDAY - NO CLASS | |
| Mar 26th (Thursday) | SPRING HOLIDAY - NO CLASS | ||
| 9 | Mar 31st (Tuesday) | Turing Machines (TMs) For next time: Project 4 is now assigned. Finish reading 2.2. Start reading 3.1 |
|
| Apr 2nd (Thursday) | Review for Exam 2 For next time: Finish Project 3 by tonight. |
|
|
| 10 | Apr 7th (Tuesday) | Turing Machines (TMs) For next time: Exam 2 is next time. Be working on Project 4. |
|
| Apr 9th (Thursday) | Exam 2 | ||
| 11 | Apr 14th (Tuesday) | Turing Machines (TMs) For next time: Project 4 is due next time. Finish reading 3.1. Start reading 3.2 and 3.3 |
|
| Apr 16th (Thursday) | Decidability For next time: Project 4 is due tonight. Finish reading 3.2 and 3.3. I went ahead and assigned Projects 5 and 6. |
|
|
| 12 | Apr 21st (Tuesday) | Time Complexity For next time: Keep working on your final two projects. Read 4.2. |
|
| Apr 23rd (Thursday) | Complexity Classes For next time: Keep working on your final two projects. Read 7.1 and 7.2. |
|
|
| 13 | Apr 28th (Tuesday) | Reduction For next time: Keep working on your final two projects. Read 7.3 and 7.4. |
|
| Apr 30th (Thursday) |
|
||
| 14 | May 5th (Tuesday) |
|
|
| May 7th (Thursday) |
|
||
| 15 | May 14th (Thursday) | Final Exam (11:30AM - 2:00PM) |