South African Theory School


SATACS is a decentralised, semi-virtual, national teaching programme in theoretical and computational sciences. Our goal is to provide teaching of the highest quality and at a level similar to that found in elite postgraduate programmes around the world.

A critically important aim is to provide a pathway to this world-leading material for students who are registered at a university, with a particular emphasis on transformation. Crucially, we want to build and promote a South African community of students who will work together, learn together, and support each other through in-person and, especially, virtual platforms.

We intend for the knowledge presented in these courses to broaden and deepen the base of knowledge for students to then use to perform research of the highest quality and have a background that allows engagement with the elite research and researchers of the world. Therefore, courses are pitched at an Honours / Masters level. 

Please see the courses for 2024 below. The individual courses will only be run if there is sufficient student interest. Please click to view the courses presented in previous years.


Answer set programming – Jesse Heyninck (UCT)

Course dates:
18 March – 31 July 2024

Course outline:
Logic does not only play a foundational role in computer science, but has also been used to great success as a modelling language that allows for declarative programming, that is, solving a problem by describing it, without having to specify how to solve it. Recent years have seen impressive developments in the efficiency of solvers as well as the application of declarative programming languages such as logic programming. This course will introduce students to theoretical as well as practical aspects of logic programming.

Topics covered include:

  • Syntax and semantics of logic programs.
  • Answer set solving with CLINGO.
  • Combinatorial solving and optimization.
  • Grounding and solving algorithms.
  • Logic programming and machine learning.

Skills outcome:

  • Understanding the role of model-based techniques in the general landscape of AI.
  • Knowledge of the main theoretical constructs underlying logic programming.
  • Model computational problems in answer set programming.
  • Understand and be able to apply the basic algorithms underlying answer set grounding and solving.

Basic understanding of discrete mathematics.

Lecture format:
14 hours of lectures spread over two weeks.

Method of evaluation:
The course evaluation proceeds in the form of two homework series (one for every week) and one project.

Lecturer biography:
Jesse Heyninck | University of Cape TownJesse Heyninck has completed his PhD in Philosophy at the Faculty of Philosophy and Educational Sciences at the Ruhr University in Bochum, Germany. He is currently an assistant professor in computer science at the Open Universiteit Heerlen, the Netherlands and an honorary research associate at the Department of Computer Science at the University of Cape Town. His research expertise is in knowledge representation.

E: jesse.heyninck @  |  Website

High-Performance Computing In Rust - Fritz Solms (SU)

Course dates:
19 March-18 June 2024, every Tuesday, 17h30-18h30

Course outline:

  • Understand the capabilities, benefits and uses of Rust
    • the Rust Eco System and the core language features of Rust
    • the relative benefits of using Rust compared to other programming languages and when to consider using Rust.
  • Program in Rust
    • Basic language constructs
      • data types, scoping, flow control flow
      • basic and generic functions
    • Safe and efficient memory usage
      • data ownership, borrowing and slicing
      • smart pointers
    • Object-oriented programming
      • including structures, classes, methods, traits, polymorphism and inheritance
    • Functional programming
      • pure and higher order functions, closures, replacing iteration with recursion and lazy evaluation in Rust
    • Exception and error handling
      • errors versus exceptions
      • functions not provided unconditionally
      • raising exceptions by returning error codes
      • handling, partially handling, forwarding and mapping errors
      • panicking on unrecoverable errors
    • IO
      • Console, file and network streaming
    • Concurrency in Rust
      • Spawning and joining threads
      • Inter-thread communication (shared state and data transfer)
      • Executors, thread pooling, futures
      • Core affinity and NUMA
      • inter-process communication via messaging services
  • Organizing code and facilitating distribution and reuse
    • Packaging executables and libraries into crates
    • Modularization for name spaces and scope management
    • Generating API documentation
  • Assessing and managing code quality
    • Contract-based development in Rust
      • Defining contracts and using them for test logic
      • Unit testing by combining test logic with equivalence partition based test data
      • Integration and operational testing
    • Testing in Rust
    • Enforcing coding standards for simpler, safer and more maintainable code.


Skills outcome:
Programming in the Rust programming language.

Lecture format:
Online, Zoom-based

Method of evaluation:
An open-book exam comprising a set of conceptual questions as well as a programming task.

Lecturer biography:
Fritz SolmsAfter completing a PhD and a post-doc in Theoretical Physics, Fritz was a senior lecturer at Applied Mathematics at the University of Johannesburg. Here he founded with Prof Steeb the International School of Scientific Computing. After having been three years a quantitative analyst and software architect at Standard Corporate and Merchant Bank, Fritz formed a training and consulting company, Solms Training & Consulting ( The company provides training and consulting services around software application and software architecture design, as well as a range of software development technologies.

In 2011 he joined the Computer Science Department of the University of Pretoria where he founded and led the Software Architecture and Software Engineering Research (SESAr) Group. Subsequently he was employed as lead software architect at S-PLANE Automation. Here he developed an application server for real-time safety-critical systems, as well as infrastructure for model-based development. He has currently shifted his focus back onto

Since 2017, Fritz is also a research associate of the School of Data Science and Computational Thinking at the University of Stellenbosch, where he supervises some postgraduate students.

E: fritz @  | W:;

Logics for Artificial Intelligence - Tommie Meyer (UCT)

Course dates:
8 April to 17 May 2024

Course outline:
This course will introduce students to logics used in the area of Knowledge Representation – a subarea of Artificial Intelligence. Logic plays a central role in many areas of Artificial Intelligence.
This course will introduce students to Description Logics, a family of logics frequently used in the area of Knowledge Representation and Reasoning. Description Logics are frequently used to represent formal ontologies.

Topics covered include:

  • The Description Logic ALC.
  • Reasoning in Description Logics with Tableaux Algorithms.
  • Reasoning in the EL family of Description Logics.
  • Query Answering.

Skills outcome:
Using propositional logic and description logics as languages for representing and reasoning with knowledge.

Basic knowledge of discrete mathematics. Previous exposure to introductory logic courses will help.

Lecture format:
The course will be taught in-person at UCT. Students will also be able to attend online.

Method of evaluation:
Two assignments and one take-home exam.

Lecturer biography:
Prof Tommie MeyerI am a professor in Computer Science at the University of Cape Town (UCT) and Co-Director of the national Centre for Artificial Intelligence Research (CAIR). I am also the leader of the Knowledge Representation and Reasoning group at UCT, as well as the Director of the Artificial Intelligence Research Unit (AIRU) at UCT. Prior to this I held positions at the CSIR in Pretoria, National ICT Australia (now Data61), the University of New South Wales in Australia, the University of Pretoria, and the University of South Africa. I am recognised internationally as an expert in Knowledge Representation and Reasoning. I’m one of only three South African Computer Scientists to have obtained an A-rating from the South African National Research Foundation. I am a member of SAICSIT, AAAI, ACM, and ASSAf.

E: tmeyer @  | Website  Publications

Introduction to Pointfree Topology - Cerene Rathilal (UKZN)

Course dates:
8 April to 15 July 2024

Course outline:
In pointfree topology, the primitive object of study is the lattice of open sets of a topological space rather than the points of the space. This is often referred to in the literature as the study frames or locales. The topics covered in this course will include point-set topology, lattice theory, frames, and the relationship between pointfree and point-set topology.

Skills outcome:

  1. Gain proficiency in lattice theory, including concepts such as order relations, meet and join operations, distributivity, and complementation.
  2. Being able to abstract principles from Point-set Topology to Pointfree Topology.
  3. Understand the relationship between Pointfree Topology and traditional point-set Topology.
  4. Develop strong theoretical and abstract reasoning skills by working with the abstract structures present in pointfree topology.

General topology.

Lecture format:
One 2 hour and 15 min lecture each week ( i.e 3 standard university lecture slots).

Method of evaluation:
Weekly assignments and one presentation at the end of the course.

Lecturer biography:
Dr Cerene RathilalDr Cerene Rathilal is a senior lecturer at the University of KwaZulu-Natal. Her research interests lie in Point-set and Pointfree Topology. She founded STEM MentHER, heads the Future Mathematicians Programme Division at SAMS and spends time running various mathematics outreach activities.

E: rathilalc @  | Website

Health Insurance Mathematics - Franck Adekambi (UJ)

Course dates:
15 June – 15 July 2024

Course outline:
Topics covered:

  • Ch 1: The need for health-related insurance covers.
  • Ch 2: Products in health insurance.
  • Ch 3: Between life and non-life insurance: the actuarial structure of health insurance.
  • Ch 4: Indexation mechanisms.
  • Ch 5: Individual experience rating: some models.
  • Ch 6: The longevity risk in lifelong covers.
  • Ch 7: Life insurance models for health insurance: models without expenses.
  • Ch 8: Life insurance model for health insurance: models including expenses.
  • Ch 9: Multi-state transition models (introduction).
  • Ch 10: Advanced multi-state transition models.

Skills outcome:

  • Understand the need of health-related covers and different types of products.
  • The actuarial structure of health insurance.
  • Understand the indexation mechanisms.
  • Calculate premia and reserves of health insurance.
  • Explain the theoretical foundations of these calculations.
  • Explain the construction of life tables based on the Lee Carter method.
  • Explain Markov models in life insurance.
  • Describe the differences between classical and unit linked life insurance.

Stochastic processes.

Lecture format:
Online and in person.

Method of evaluation:
Written exam.
Team project.

Lecturer biography:
Dr Franck AdekambiDr Franck Adekambi is a Full Professor at the School of Economics at the University of Johannesburg. Upon completing his Masters’ studies, he worked for Fortis Securities and CDC IXIS Capital Markets. However, he soon realised that his true vocation lay in academia, teaching rather than working in corporate. Therefore, he enrolled in a PhD program in Actuarial Mathematics at Laval University in Canada. He relocated to South Africa to take up a position as a lecturer at the University of the Witwatersrand (WITS), teaching stochastic processes and risk theory to third year and Honours students of Actuarial Science. After leaving WITS in April 2014, he joined the University of Johannesburg. As a senior lecturer in 2014, he was promoted to associate professor in October 2017 and to full professor in May 2022. An insurance software developer (pricing tools for motor, marine, and cargo, etc), he is involved in the industry. As an actuarial science instructor, he teaches a variety of subjects.

E: fadekambi @

Linear and Longitudinal Data Modeling with R - Mohammad Arashi (UP)

Course dates:
30 June – 30 September 2024

Course outline:
Fixed-effects regression (review of regression), Mixed-effects regression (including random effect), Longitudinal data analysis (allowing correlated data), Generalized linear models (with focus on longitudinal model), Penalized linear model, Ridge regression, LASSO regression.

Skills outcome:
Familiarity with R and a broad range of linear and longitudinal data analysis techniques, including GLMs, penalized methods, and mixed effects modeling.

R coding and linear algebra.

Lecture format:
Virtually with prerecorded videos.

Method of evaluation:
Projects at the end.

Lecturer biography:
Prof Mohammad ArashiMohammad Arashi is a Professor of Statistics and Director of Data Science Laboratory at the Ferdowsi University of Mashhad in Iran and an Extraordinary Professor at the University of Pretoria. He is the authors of three books in Wiley and one edited book with Springer. He is also an elected member of the International Statistical Institute (ISI). He has published more than 160 papers, and his major includes shrinkage estimation, big data, high-dimensional statistics, graphical models and longitudinal data analysis.

E: m_arashi_stat @  |  Website

Cosmology - Amare Abebe (NWU)

Course dates:
15 July – 30 October 2024

Course outline:
The course will offer hot topics in modern cosmology:

  • The Cosmological Principle.
  • Cosmological Models.
  • Inflationary Cosmology.
  • Cosmological Perturbations and Large-scale Structure.
  • Beyond ΛCDM Cosmology.

Skills outcome:
At the end of the course, students can expect to:

  • Understand the assumptions in cosmology that led to the formulation of the standard cosmological model.
  • Derive the cosmological field equations and analyse their solutions.
  • Demonstrate length and time scales of the universe.
  • Apply the specialised and integrated knowledge of general relativity and cosmology to critically analyse the shortcomings of the Big Bang Model, and the need to introduce inflation, dark energy, and dark matter.
  • Understand the physical processes and mechanisms that lead to large-scale structure formation.
  • Critically analyse the standard cosmological model and understand the need to look at new paradigms beyond the standard model

Introduction to General Relativity.

Lecture format:
Weekly live-streamed lectures and tutorials, with the possibility of in-person discussions.

Method of evaluation:
Weekly assignments, 2-3 projects that test both theoretical and computational skills, and an exit-assessment exam.

Lecturer biography:
Prof Amare AbebeAmare Abebe received his PhD in cosmology from the University of Cape Town in 2013. He held a postdoc position at the North-West University from 2014 to 2015 after which he joined the faculty at this same institution. He is currently a Professor of Physics and his broad research interests lie in gravitation and cosmology.

E: amare.abebe @ | Website | Publications

Quantum Field Theory I - W. A. Horowitz (UCT)

Course dates:
22 July – 30 August 2024

Course outline:

  1. Postulates of QM and SR
  2. Quantizing the free scalar field
  3. Interpreting the results
  4. Connecting to experiments; in and out states; LSZ reduction
  5. Lehman-Kallen representation; Gell-Mann–Low theorem; cross sections
  6. Feynman rules for scalar fields
  7. Introduction to QED, QED Feynman rules, and trace technology for cross sections.

Skills outcome:
Students will leave the course with a deep understanding of 1) free scalar quantum field theory and 2) Feynman calculus for computing cross sections involving scalar particles.  Students should also have a good facility for computing Feynman diagrams and cross sections related to QED processes.

A course in advanced quantum mechanics and a course in which special relativity was treated in some detail.

Lecture format:
Asynchronous recordings.

Method of evaluation:
Weekly problem sets and a project.

Lecturer biography:
Prof W.A. HorowitzAssociate Professor W. A. Horowitz received his PhD in Physics from Columbia University in 2008. He held a postdoctoral research position at the Ohio State University from 2008 to 2010 before joining the faculty at the University of Cape Town.  Prof Horowitz is an expert in the use of perturbative quantum field theory and AdS/CFT methods in phenomenological high-energy quantum chromodynamics applications.

E: wa.horowitz @ | Website | Publications

Machine Learning: from Linear Regression to Deep Learning - Jonathan Shock (UCT)

Course dates:
25 July 2024 – June 2025

Course outline:

    1. Intro to machine learning
    2. Statistical theory and naive bases
    3. Regression tests and training
    4. ML models
    5. Gradient free optimisation methods
    6. Classification tasks and model evaluation
    7. Ensemble modeling
    8. Unsupervised learning: Clustering
    9. Unsupervised learning: Dimensionality Reduction
    10. Reinforcement Learning
    11. Intro to Neural Networks
    12. Pytorch
    13. Convolutional Neural Networks
    14. Recurrent Neural Networks

Skills outcome:
A practical, working knowledge of a wide variety of machine learning techniques including supervised, unsupervised and reinforcement learning.

Python, including familiarity with object oriented coding + calculus and linear algebra.

Lecture format:
Weekly discussion sessions based on guided, asynchronous video lectures.

Method of evaluation:
Weekly assignments and a project at the end.

Lecturer biography:
Jon ShockJonathan Shock is an Associate Professor at the University of Cape Town. He has a PhD in theoretical physics from the University of Southampton, focusing on string theory. He continues to work in this field along with researching in machine learning, neuroscience and medical data analysis.

E: jon.shock @ | Website  | Publications


Fundamentals of Trustworthy Machine Learning - Makhamisa Senekane (UJ)

Course dates:
5 August – 3 November 2024

This course will cover the following topics:

  • Introduction to Machine Learning (ML)
  • Introduction to trustworthy Machine Learning
  • Privacy Enhancing Technologies (PETs)
  • Differential Privacy
  • Federated Learning
  • Explainability in Machine Learning
  • Machine Learning robustness
  • Fairness and Bias in Machine Learning
  • Uncertainty Quantification Using Conformal Prediction.

Skills outcome:
At the end of the course, the students are expected to:

  • Appreciate the need to build trustworthy ML models
  • Have a firm understanding and application of PETs such as Differential Privacy and Federated Learning
  • Understand and be able to use the ML explainability frameworks
  • Be well equipped to the ways of building robustness in Machine Learning models
  • Appreciate the value of fairness and the dangers of bias in ML models
  • Understand the use of conformal prediction for uncertainty quantification.


  • Linear Algebra
  • Probability Theory
  • Calculus
  • Programming, especially in Python.

Lecture format:
Synchronous virtual weekly lecture sessions (2 hours) and tutorial sessions (2 hours). All the sessions will be recorded.

Method of evaluation:
The course will use continuous assessment, where students are expected to submit four assignments. Each assignment will have an overall mark of 25%.

Lecturer biography:
Dr Makhamisa SenekaneMakhamisa Senekane is a Senior Researcher in the Institute for Intelligent Systems at the University of Johannesburg. Prior to that, he worked as a Lecturer in the Department of Physics and Electronics at the National University of Lesotho, as a Senior Lecturer in the Faculty of Information and Communication Technology at Limkwokwing University of Creative Technology (Lesotho), and as a Lecturer in the Faculty of Computing at Botho University (Maseru Campus). He has obtained his PhD in Physics from the University of KwaZulu-Natal, his MSc.Eng in Electrical Engineering from the University of Cape Town, and his B.Eng in Electronics Engineering from the National University of Lesotho. His research interests include data science, data security, data privacy, artificial intelligence (machine learning, computer vision, and natural language processing), and quantum information processing (quantum cryptography, quantum computing, and quantum machine learning).

E:  makhamisa12 @   | Website | Publications

Integrable Systems - Konstantinos Zoubos (UP)

Course dates:
August – November 2024

Course outline:
This course will provide an introduction to classical and quantum integrable systems. We will start with integrability in classical dynamical systems, introducing concepts such as Lax pairs, the inverse scattering method and solitons. These will be put in practice as we look at a range of integrable models, such as Sine-Gordon, the Principal Chiral Model, and self-dual Yang-Mills theory. Afterwards we will focus on the quantum case, covering integrable spin chains and the Bethe ansatz (both coordinate and algebraic) a brief introduction to quantum groups, and statistical systems such as the Ising, RSOS and percolation models.

Skills outcome:
This would be a relatively advanced course which will be useful to students interested in techniques to obtain exact solutions for nontrivial physical systems. Having taken the course, students will have developed useful background for the understanding of topics such as critical phenomena, 2d CFT and many body scattering. Some technical aspects that will need to be introduced (quantum groups, Jacobi theta functions and many more) play important roles in many areas of physics and mathematics.

Lagrangian mechanics, quantum mechanics at Honours level, and group theory/basics of Lie algebras. Some necessary aspects from statistical mechanics will be reviewed.

Lecture format:
Pre-recorded lectures plus a weekly live tutorial session.

Method of evaluation:
6 Homework assignments plus a final project.

Lecturer biography:
Konstantinos ZoubosKonstantinos Zoubos is Associate Professor at the Physics Department of the University of Pretoria. His research interests are in supersymmetric Quantum Field Theory and String Theory, with an emphasis on integrable structures and the tools to analyse them, such as quantum groups.

E: kzoubos @

Quantum Field Theory II - W. A. Horowitz (UCT)

Course dates:
9 September – 18 October 2024

Course outline:

  • Brief introduction to group theory and representations and their importance in quantum state space and constraining potential Lagrangians
  • Non-relativistic quantum rotations and spin
  • Irreducible representations of the Lorentz group SO(3,1)
  • Free 2D Weyl spinor fields
  • Interacting 2D Weyl spinor fields
  • 4D Majorana and Dirac fields
  • Free spin-1 gauge fields. BRST gauge fixing. Non-abelian gauge theory
  • Spinor helicity techniques. BCFW recursion.

Skills outcome:
Students should have a thorough understanding of quantum field theories for particles up to spin-1.

Quantum Field Theory I.

Lecture format:
Asynchronous recordings.

Method of evaluation:
Weekly problem sets and a project.

Lecturer biography:
Prof W.A. HorowitzAssociate Professor W. A. Horowitz received his PhD in Physics from Columbia University in 2008. He held a postdoctoral research position at the Ohio State University from 2008 to 2010 before joining the faculty at the University of Cape Town.  Prof Horowitz is an expert in the use of perturbative quantum field theory and AdS/CFT methods in phenomenological high-energy quantum chromodynamics applications.

E: wa.horowitz @  |  Website  |  Publications

Category Theory - Zurab Janelidze (SU)

Course dates:

Course outline:
The field of category theory is relevant to various disciplines within theoretical and computational sciences, including theoretical computer science, quantum mechanics, general topology, universal algebra, algebraic geometry, foundations of mathematics, and several others. This course will feature a mixture of introductory topics and specialized topics in category theory, as well as insights into applications of category theory. The lectures will be recorded and available for review on the day that the lecture is given.

Skills outcome:

A general background in undergraduate mathematics.

Lecture format

Method of evaluation:

Lecturer biography:
Prof Zurab JanelidzeZurab Janelidze is a professor of mathematics at Stellenbosch University. He is an Associate of NITheCS and a principal investigator in one of the research programmes at NITheCS. He serves on the editorial boards of two international journals in his field of expertise, category theory, and recently joined the editorial board of Afrika Matematika, a journal of the African Mathematical Union. Prof Janelidze is currently the president of the South African Mathematical Society. He is passionate about discovering and teaching mathematics, as well as looking for mathematical structures in other art forms.

E: zurab @  |  Website  |  Publications


Please complete the Student Application Form and have your supervisor complete the Supervisor’s Support Form. To apply, you require a Google account. Please click if you need to create a free Google account.


NGA-Coursework is an initiative funded by the South African National Graduate Academy for Mathematical and Statistical Sciences (NGA(MaSS)). It provides a centralised platform to pool the resources of all South African universities, to offer a more consistent and wider range of masters level coursework in mathematics and statistical sciences. Such pooled-resource models have proven to be successful internationally.

NGA-Coursework is presented online and geared toward MSc and PhD students who are registered at South African universities. Staff and postdocs may also participate. NGA-Coursework is free of charge for all participants. 

Quality assurance of all courses is the mandate of the NGA (MaSS). Participants who wish to negotiate credit recognition at their home university should discuss this with the steering committee and their home university administration ahead of time.

Click to view NGA-Coursework courses


Want to find out more? Click to contact us.