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