While the first computers in the history of computing were fully dedicated to numerical applications, computer science nowadays mainly focuses on textual information storage and handling. However, in certain fields, the actual numerical compute power of modern machines is still needed and gets leveraged in novel applications such as machine and deep learning. This course gives an overview of the hardware and, in particular, software techniques used for applied numerical computing: how long integers can be stored and manipulated inside a computer, e.g. to allow for strong asymmetric encryption, how real numbers can be represented and manipulate, for example in graphical processing, how signals can be represented and manipulated in software systems, how basic and advanced linear algebra software packages can be designed and then utilized to solve real-life problems such as compressed sensing, dictionary learning or medical imaging, MP3 and JPEG data compression, ADSL transmission, 5G mobile service etc.
An info flyer can be found here.
The syllabus can be found here.
We have a git to share code and other things here.
There will be 2 main Homework Assignments in this class:
Copyright (C) 2025 Christoph Lauter