Welcome to Stellenbosch University

​​​​​​​​​​​​​​​​​​​​Computer Science Division​

Computer Science is a vibrant and innovative environment, with a particular emphasis on high quality research. All our senior researchers are NRF rated (including the only two A-rated researchers in Computer Science in South Africa), and we attract postgraduate students from all over the world. In addition to being strong in the foundations of Computer Science, our postgraduate students have excellent programming and technical skills. The Division is home to the first IBM Software Centre of Excellence (CoE) in South Africa. Our postgraduate qualification is directly accepted at prestigious international institutions, and sought after in industry.​


Automata theory, grammars, and applications

We consider problems related to automata and grammars, including learning these formalisms from data. We apply the theory to practical problems in image processing, diagram understanding, music generation, regular expression matchers, and more.

Program testing and verification

We work on testing, program analysis, symbolic execution, probabilistic symbolic execution, logic-based techniques, and model checking, for both sequential and concurrent systems. We also help to develop the widely used Java PathFinder tool suite, as well as the CSeq and ESBMC tools that focus on analysing concurrent and embedded software.

​Artificial intelligence

We consider various aspects of artificial intelligence, including probabilistic modelling and machine learning, search algorithms, evolutionary computing, and swarm intelligence. Application areas include, computer vision, natural language processing, robotics and computer players for various games.

Broadband and mobile networks

We investigate incentive schemes to promote cooperation and improve performance in mobile ad hoc networks. We also investigate protocols for data forwarding in vehicular ad hoc networks. We investigate the behaviour of the Bitcoin blockchain and the profitability of various dishonest data mining schemes.


This is an inter-disciplinary area, combining Computer Science with different disciplines in interesting ways. It is about exploring an ecosystem comprising overlapping iterative cycles of community-based co-elicitation of requirements, co-design & planning, co-implementation & production, co-testing, analysis and monitoring & evaluation and finally co-reflection on Information and Communication Technology (ICT) tools in local languages and local cultural ways, with and by local communities​.



Application Process