Syllabus#
Course description#
Topology is the study of shape. Over the last two decades, a great deal of work has gone into applying topological ideas to problems in science and engineering, and above all to data analysis; this young field goes by several names, most often computational topology, applied topology, or topological data analysis (TDA). It sits at the intersection of topology, geometry, and algorithms, and its guiding question is how to make the shape of a data set precise, computable, and statistically meaningful. Geometric data is now everywhere, and much of it lives in high-dimensional spaces while being organized around lower-dimensional patterns and structures. TDA offers principled ways to detect, summarize, and compare such structure, and to feed it into pipelines for clustering, classification, and simplification.
This course surveys the central algorithms and techniques of TDA, covering both the theoretical foundations and the practical tools that are now in wide use across many domains. Along the way we will borrow from algebraic topology, geometry, linear and abstract algebra, algorithm design, statistics, and a little sheaf theory, building up to recent research results. We will study and use efficient software for the objects discussed in class, such as persistent homology and Reeb graphs, and we will look at applications in areas including computer graphics, image analysis, sensor networks, clustering, time series analysis, and genetics.
Prerequisites#
Linear algebra, plus some familiarity with computer programming in any language. No prior exposure to topology is assumed; the topological background is developed in the course.
Everything I hand out (demos, assignment starter code, worked examples) will be in Python, mostly as Jupyter notebooks. If you have not used Python before, plan on picking up the basics early in the semester; the setup is covered in Lecture 1.
Course format and assignments#
In-class problems and presentations#
After each class meeting, I will assign one or two problems related to that day’s material. At the beginning of the next class, one or more students will present solutions and lead a brief discussion. These problems are intended to help everyone keep pace with the course and to give us regular opportunities to practice explaining mathematical and computational ideas clearly.
Each student should expect to present approximately twice during the semester, although I reserve the right to adjust this number depending on enrollment and the course schedule. Presenters should be prepared to explain their reasoning and answer questions, not merely reproduce a written solution.
Written and programming homework#
There will be written and/or programming homework approximately once every three weeks. Assignments and due dates are posted on the schedule.
Final project#
Because we will discuss current research throughout the course, the final project will be centered on one or two research papers selected by the student in consultation with me. The project may take several forms. For example:
For a theoretical paper, you may study the main definitions and results in depth, reconstruct selected proofs, fill in omitted details, or compare alternative formulations.
For an experimental or computational paper, you may reproduce selected results, examine the implementation, test the method on a new dataset, or investigate the sensitivity of the conclusions.
You may also propose a hybrid or creative project that connects the paper to another topic, develops an extension, or explores a question motivated by the work. The project will be evaluated in four stages:
Project proposal. Book a short appointment with me during the proposal window (dates on the schedule) to talk through your candidate paper, your ideas, and a realistic scope; nothing needs to be settled yet. Then submit the written proposal: the paper or papers, the main question, the scope, and a plan. Proposals are accepted only after the appointment, so book early.
Project presentation. Explain the background, the paper’s contribution, what you did, and what you learned. Questions will probe your understanding of both the source material and your own work, and passing the presentation is required for the rest of the project to be assessed (see Grading below).
Final report. A clear, self-contained account of the project, with the appropriate mathematical, computational, and bibliographic details.
Oral exam. During the exam session, a short individual oral exam (about 20 minutes) on your project: what you did, why, and how it connects to the material of the course. The proposal, presentation, report, and oral exam are not four separate tasks; they are four views of one piece of work. The oral exam is worth 5% on paper, but it examines the whole project, so prepare it by understanding what you did, not by studying for 5 points.
Grading#
Component |
Weight |
|---|---|
Written and/or programming homework |
20% |
In-class problem presentations |
20% |
Final project (proposal 10%, presentation 25%, report 20%, oral exam 5%) |
60% |
Final grades are given on the Swiss 1–6 scale, with 4.0 required to pass.
The project presentation is a gate. In the age of AI, a polished document is no longer a sufficient evidence of understanding; but a live explanation is. Passing the presentation (4.0 or higher) is required for the report to be graded and for admission to the oral exam. If the presentation does not pass, the rest of the project is not assessed and the course cannot be passed. If illness or an emergency prevents you from presenting on the scheduled date, contact me as early as possible; approved accessibility accommodations apply to the presentation and the oral exam as to everything else.
Course policies#
The full course policies live in the Course Policies section of this site: Attendance, Deadlines, and Regrades; Collaboration, Academic Integrity, and AI, which includes the rules for generative AI; Accessibility and Accommodations; and the Inclusive Classroom policies on language and caregiving. By staying enrolled in the course you agree to follow them, so please read them during the first week.