VVZ API is not affiliated with ETH Zurich. Data might be outdated or incorrect. Please view the official ETHZ Vorlesungsverzeichnis for binding information.

151-9904-00L 4 Credits MSC , DR D-ITET , D-BAUG , D-MAVT , D-INFK
You're viewing possible stale or outdated data. Please check the latest semester for more up-to-date information.

Applied Compositional Thinking for Engineers I

Lecturers & Examiners: Dr. Andrea Censi, Dr. Jonathan Lorand
VVZ CR 3.6

Last Updated: 2026-02-05 16:08:29

Abstract

This course is an introduction to Applied Category Theory and related techniques specifically targeted at persons with an applied background. We focus on the benefits of Applied Category Theory for thinking explicitly about abstraction and compositionality. The course will favor a computational/constructive approach, with concrete exercises in the Python language.

Objective

In many domains of engineering and applied sciences it would be beneficial to think explicitly about abstraction and compositionality, to improve both the understanding of the problem and the design of the solution. However, the problem is that the type of math which could be useful to applications is not traditionally taught. Applied Category Theory is a new field of mathematics which could help a lot, but it is quite unreachable by non-mathematicians. Recently, many good options appeared for learning applied category theory; but none satisfy the two properties of 1) being approachable; and 2) highlighting how applied category theory can be used to formalize and solve concrete applied problems. This course will fill this gap. This course's goal is not to teach category theory for the sake of it. Rather, we will teach the "compositionality way of thinking"; category theory will be just the means towards it. This implies that the presentation of materials sometimes diverges from the usual way to teach category theory; and some common concepts might be de-emphasized in favor of more obscure concepts that are more useful for applications. The course will favor a computational/constructive approach: each concept is accompanied by concrete exercises in the programming language Python. Throughout the course, we will discuss many examples related to autonomous robotics, because it is at the intersection of many branches of engineering: we can talk about hardware (sensing, actuation, communication) and software (perception, planning, learning, control) and their composition. ### Intended learning outcomes ### The student is able to recognize algebraic structure for a familiar engineering domain. The student is able to translate such algebraic structure in a concrete implementation using a programming language for the purpose of solving a computational problem. The student can understand when there is a functorial structure between instances of a problem and solutions of the problem, and use such structure to write programs that use these compositionality structures to achieve either more elegance or efficiency (or both). The student is able to recognize structures in concrete scenarios at different levels of abstractions.

Content

* Review of basic algebraic structures: - Sets and relations, relations - Semigroups, monoids, groups - Homomorphisms - Actions - Graphs * Posets and lattices * (Semi)Categories * Categories of algebraic structures * Categories useful in applications * Categories of processes and procedures * Isomorphisms * Universal properties * Functors * Embeddings * Monotone co-design theory * Monoidal categories, traced monoidal categories

Resources

Lecture Notes

Slides and notes will be provided.

Literature

Course book: A. Censi, J. Lorand, G. Zardini, "Applied Compositional Thinking for Engineers" Available online at https://applied-compositional-thinking.engineering/ Note: book includes materials for both ACT4E I and ACT4E II (Fall 2022).

General Information

Language
English
Levels
MSC , DR
Frequency
Yearly recurring

Examination

Type
session examination
Mode
written 150 minutes
Aids
Everything allowed (open book, own notes, etc.).
Grade percentage:- 50%: a final written exam- 50%: compulsory continuous performance assessmentThe compulsory continuous performance assessment tasks need not be passed on its own; it is awarded a grade which counts proportionally towards the total course unit grade.If a student does not submit any of the work for the compulsory continuous performance assessment tasks, then for this part of the performance assessment they will receive the grade “1”.

Course Components

Type Title Time & Place Hours
lecture with exercise Applied Compositional Thinking for Engineers I
  • Mon 12:15-14:00 (ML F 39)
  • Wed 12:15-13:00 (ML F 39)
3 h weekly

Offered In