Links to the lecture slides will become live at the time of the lecture in question.
Should you wish to look at the material in advance of the lecture, feel free to look at
last year's slides
(note that the ordering of lectures here is slightly different).
Although these are not guaranteed to be identical to this year's slides,
in practice the content will be mostly the same.
| Week | Lectures | Tutorials | Practicals | Assignments | Readings |
| 1 | Sep 18: Lecture 1: Introduction and Course Administration (AS)
Sep 20: Lecture 2: Course Roadmap (JL)
Sep 21: Lecture 3: Deterministic Finite Automata (AS) |
-- |
-- |
-- |
Kozen chapter 1, 2; J&M[2nd Ed] chapter 1, 16 (intro and sec 16.1);
Wikipedia: Chomsky (see Note 1) |
| 2 | Sep 25: Lecture
4: Non-deterministic Finite Automata (AS)
Sep 27: Lecture
5: Regular Expressions and Kleene's Theorem (AS)
Sep 28: Lecture
6: Applications to Pattern Matching and Lexing (AS) |
-- |
-- |
-- |
Kozen chapter 3, 4, 11, 12, 2 |
| 3 | Oct 02: Lecture
7: Limitations of Regular Languages (AS)
Oct 04: Lecture
8: Context-free Languages (AS)
Oct 05: Lecture
9: Pushdown Automata (AS) |
Tutorial 1 |
Lab 1: Introduction to Python I |
-- |
Kozen chapter 5, 9;
J&M chapter 2; chapter 16.2;
Vidal et al. 2005 |
| 4 | Oct 09: Lecture
10: LL(1) Predictive Parsing (AS)
Oct 11: Lecture
11: Automatic Generation of LL(1) Parsers (AS)
Oct 12: Lecture
12: Fixing Problems with Grammars (AS) |
Tutorial 2 |
Lab 2: Introduction to Python II |
-- |
Earlier year's lecture notes relevant lectures 10 and 11:
Note 9,
Note 10,
Note 12.
Earlier year's tutorial sheet.
|
| 5 | Oct 16: Lecture 13:
Types and Static Type Checking (AS)
Oct 18: CAREERS LECTURE
Oct 19: Lecture 14: DFAs and Morphological Parsing (JL) |
Tutorial 3 |
Lab 3: Introduction to NLTK |
Oct 15: Assignment 1 issued |
Kozen chapters 26 and 27;
J&M sections 3.1--3.7
|
| 6 | Oct 23: Lecture
15: Parts-of-speech and the Lexicon in Natural Language (JL)
Oct 25: Lecture
16: Part-of-speech Tagging (JL)
Oct 26: Lecture
17: Phrase Structure and Parsing as Search (JL) |
Tutorial 4 |
|
-- |
J&M sections 5.1--5.5, 6.1--6.4;
NLTK: Chapters 3 and 5.
Penn Treebank tagging guide
|
| 7 | Oct 30: Lecture
18: Chart Parsing: The CYK Algorithm (JL)
Nov 01: Lecture
19: Chart Parsing: The Earley Algorithm (JL)
Nov 02: Lecture
20: Probabilistic Context-free Grammars
(JL)
|
Tutorial 5 |
-- |
-- |
J&M Chapters 13.4,
14 (up to 14.5), 16.3--16.4.
NLTK: Chapter 8. Rosenberg, The Hardest Natural Languages |
| 8 | Nov 06: Lecture
21: Parameter Estimation and Lexicalization for PCFGs (JL)
Nov 08: Lecture
22: Agreement and Types in Natural Language
(JL)
Nov 09: Lecture
23: Semantics for Natural Languages (JL) |
Tutorial 6 |
-- |
Nov 05: Assignment 1 deadline (4pm) |
J&M Chapters 12.9,
14.10, 17--18;
NLTK: Chapter 10 |
| 9 | Nov 13: Lecture
24: Computing Natural Language Semantics (JL)
Nov 14: Lecture
25: Complexity and Character of Human Languages (JL)
Nov 16: Lecture
26: Models of Human Parsing (JL) |
Tutorial 7 |
Lab 4: Support for Assignment 2 |
Nov 12: Assignment 2 issued |
Lecture Notes: Semantics; |
| 10 | Nov 20: Lecture
27: Semantics of Programming Languages (AS)
Nov 22: Lecture
28: Context-sensitive languages (AS)
Nov 23: Lecture
29: Turing Machines and Linear Bounded Automata (AS)
|
Tutorial 8 |
Lab 5: Support for Assignment 2 |
-- |
Kozen chapter 28, 29, 31, 32;
Wikipedia: CSG, Turing |
| 11 | Nov 27: Lecture 30: Undecidability (AS)
Nov 29: Lecture 31: Revision Lecture
|
Tutorial 9 |
-- |
Nov 26: Assignment 2 deadline (4pm) |
Hauser et al. (2002) |