Note that the information presented here does not necessarily reflect the most up to date syllabus or course information. Rather this information is intended to provide a general overview of course content from previous offerings.
Computing Science is mathematical science. Fundamental to all problem- solving is the ability to construct solutions, and verify their correctness. Com- puter science uses formal systems to formulate problem solutions (aka programs) and to analyse and verify them. This course focuses on the mathematical tools, primarily constructive logic and category theory, used to describe the semantics of programming languages. This firm foundation for program construction and verification supports our most important class of programs: programming lan- guage implementations. Indeed, the current trend in programming languages research is toward increasingly rigorous mechanized metatheory: “Soon, papers will be rejected from POPL because they didn’t include mechanically-checked proofs of the properties claimed.”
This course introduces the students to
Most of the material comes from the first four chapters of the textbook. Based upon interest of the students and available time, additional material from chap- ters 5 and 6 may be presented.
Instructor: Chris Dutchyn
email mailto:dutchyn@cs.usask.ca
web http://www.cs.usask.ca/faculty/cjd032
office Thorvaldson 178.2
Weekly, 3 hour meetings comprising 1.5 hours of lecture/presentation and 1.5 hours of discussion and worked exercises and examples.
Regular attendance and productive classroom participation is mandatory for this reading-group-like course. There will be four assignments, drawn from questions from the four chapters of the textbook. In addition, the students will be asked to present assignment solutions, to encourage classrom participation and develop skill in communicating deep technical material to a well-prepared audience. In addition, the students will need to read, summarize, and present a recent research paper in the area.
| Item | Description | Weighting |
|---|---|---|
| Assignments | (four @ 15%) | 60% |
| Solutions Presentation | (two @ 5%) | 10% |
| Attendance | 10% | |
| Paper Precis and Presentation | (10% and 5%) | 15% |
| Total | 100% |