MATH-489: Number theory II.c - CryptographyThe goal of the course is to introduce basic notions from public key cryptography (PKC) as well as basic number-theoretic methods and algorithms for cryptanalysis of protocols and schemes based on PKC
CS-457: Geometric computingThis course will cover mathematical concepts and efficient numerical methods for geometric computing. We will explore the beauty of geometry and develop algorithms to simulate and optimize 2D and 3D g
MATH-467: Probabilistic methods in combinatoricsThe 'probabilistic method' is a fundamental tool in combinatorics. The basic idea is as follows: to prove that an object (for example, graph) with certain properties exists, it suffices to prove that
CS-550: Formal verificationWe introduce formal verification as an approach for developing highly reliable systems. Formal verification finds proofs that computer systems work under all relevant scenarios. We will learn how to u
MATH-437: Calculus of variationsIntroduction to classical Calculus of Variations and a selection of modern techniques. The Calculus of Variations aims at showing the existence of minimisers (or critical points) of functionals that n
CS-250: Algorithms IThe students learn the theory and practice of basic concepts and techniques in algorithms. The course covers mathematical induction, techniques for analyzing algorithms, elementary data structures, ma
ChE-403: Heterogeneous reaction engineeringThe theoretical background and practical aspects of heterogeneous reactions including the basic knowledge of heterogeneous catalysis are introduced. The fundamentals are given to allow the design of m
BIO-341: Dynamical systems in biologyLife is non-linear. This course introduces dynamical systems as a technique for modelling simple biological processes. The emphasis is on the qualitative and numerical analysis of non-linear dynamical