Week by Week
Links to the problem sheets and their solutions will appear here as the unit progresses.
Each week there will be exactly one theory problem sheet and at most one practical problem sheet. This is a 20cp unit, so you should expect to spend about a third of your week working on these problem sheets (2 hours of which will be working on them in the lab).
Brischeme prototype coursework (not assessed in 2025/26): Brischeme
| University Week |
Monday Lecture (PHYS G.42, 3pm) |
Tuesday Lecture (PHYS G.42, 10am) |
Thursday Lab (MVB 2.11/1.15, 3pm) |
|
|---|---|---|---|---|
| Welcome Week | ||||
| Week 1 | Intro and Strings | Context-Free Grammars |
Theory: qns
/ ans
Practice: qns / ans |
|
| Week 2 | Grammar Design | LL(1) for Parsing |
Theory: qns
/ ans
Practice: qns / ans |
|
| Week 3 | No Lecture | Implementation |
Theory: qns
/ ans
Practice: qns / ans |
|
| Week 4 | Obtaining LL(1) | Abstract Syntax |
Theory: qns
/ ans
Practice: qns / ans |
|
| Week 5 | Denotational Semantics | Structural Induction |
Theory: qns
/ ans
|
|
| Revision Week (Syntax Revision qns / ans ) | ||||
| Week 7 | Operational Semantics | Hoare Logic (pt1) |
Theory: qns
/ ans
|
|
| Week 8 | Hoare Logic (pt2) | Invariants |
Theory: qns
/ ans
|
|
| Week 9 | Computability and decidability | Encoding first-order data |
Theory: qns
|
|
| Week 10 | While Eats Itself | The Halting Problem |
|
|
| Week 11 | Reductions I | Reductions II and Rice's Theorem |
|
|
| Revision Week | ||||