Cornelia Inggs¶
I have a PhD from The University of Manchester in the UK and am currently a part-time Senior Lecturer in Computer Science at Stellenbosch University where I also studied before going the UK.
As a researcher I am interested in software verification and analysis as well as program performance and scalability. I work on projects that include the development of parallel and distributed software, the analysis and development of efficient search and planning algorithms for AI and machine learning, and the dynamic and static analysis of code.
Contact details¶
Dr. Cornelia P. Inggs
Room A509, General Engineering Building
Postal Address:
Computer Science, Stellenbosch University,
Private Bag X1, 7602 Matieland, SA
E-mail:
cinggs -at- sun . ac . za
Research projects, collaborators, and students¶
Software verification and analysis¶
- Providing automated feedback to novice programmers. Claire Baissac (Hons 2021), Erin van den Heever (Hons 2022), Simon Steven (Hons 2022).
- Checking linearisability of non-blocking concurrent data structures. Nicole du Toit (MSc 2021).
- Annotating JVM bytecode for both model checking and abstract interpretation. Vasco Nel-Lopes (Hons 2020).
- Learning concurrency concepts while playing games. Taun Gadd and Justin Giffard (CSEDU2017, Vol. 1).
- Detecting and quantifying resource contention in concurrent programs. D. Willem Venter (MSc 2016).
- Semantic diff, a programming language aware diff. Willem H. K. Bester. Johan H. van Litsenborgh (Hons 2013).
- Hash table access patterns. Pieter van der Walt (Hons 2013).
- Reducing communication in distributed model checking. Jaco Geldenhuys. Jean Fourie (MSc 2009, SAICSIT12).
- CTL* Model checking on a shared-memory architecture. Cornelia Inggs and Howard Barringer, FMSD 29(2), 2006.
- Parallel Model checking on shared-memory multiprocessors. (PhD 2004, Univ. of Manchester).
- Effective state exploration for model checking on a shared memory architecture. Cornelia Inggs and Howard Barringer (ENTCS 2002)
- An LTL verification system based on automata theory. (MSc 1999, Univ. of Stellenbosch).
Test case generation¶
- Oracle generation using transformer based models. Willem C. Visser. Marco Dewey (MSc in progress).
- Test-case generation and bug-finding through symbolic execution. Willem C. Visser. Willem H. K. Bester (MSc 2013, SAICSIT2012--best paper award).
- Automated coverage calculation and test case generation. G. Campbell Morrison (MSc 2012, SAICSIT2012).
Search and planning algorithms for AI and machine learning¶
- Many of these projects contributes or contributed to the development of the Ingenious Framework Ingenious Framework.
- Hyperparameter tuning and evaluation of MCTS enhancement strategies. Alexander Mouton (MSc in progress).
- Implementing a correct and efficient Go engine. Marco Dewey. (Hons 2021).
- UCT-treesplit for scalable distributed MCTS. Alex Heyns (Hons 2021).
- A distributed depth-first UCT algorithm. Reynhardt Vermaak (Hons 2021).
- Information sharing strategies for distributed Monte Carlo Tree Search. Steve Kroon. Marc Christoph (MSc 2020).
- Distributed tournament engines. Kyle Chapman (Hons 2020), Reece Murry (Hons 2018), Marc Christoph (Hons 2015).
- Active strategies for coordination of distributed solitary robots. Joshua Niewstadt (Hons 2020).
- Parallel implementation of backpropagation enhancement strategies for MCTS. Nicole du Toit (Hons 2019), Jaco Groenewald (Hons 2018).
- General purpose parallel search algorithms. Karen Laubscher (Hons 2017).
- Monte-carlo tree search parallelisation for computer GO. Francois van Niekerk, Gert-Jan van Rooyen, Cornelia Inggs, and Steve Kroon. SAICSIT2012 and the 2012 International Go Symposium.
Teaching¶
Undergraduate¶
- Concurrency (3rd year)
- Object Oriented programming (1st year)
- An introduction to Computer Science (1st year)
- Operating Systems (3rd year)
- Scientific Computing (2nd year)
Postgraduate¶
- Software Verification and Analysis
- Model Checking
- Advanced Concurrency Concepts
Last update: 2023-08-08
Created: 2023-08-08
Created: 2023-08-08