Are you interersted in doing a project with the Fundamental Computing group? We offer a number of projects on mostly theoretical topics, please see the selection below. Many of the projects are open ended and can be tweaked or adapted; please feel free to contact the potential supervisors to learn more or discuss the specifics.

BSc Projects

Narrow the projects down by supervisor or tag.

  • Algebraic Effects and Handlers

    Supervisor: Dan Frumin · d.frumin@rug.nl

    Algebraic Effects are a recent programming paradigm for handling effects in functional programming languages

    1 spot available
  • FitchVIZIER: Improvements and extensions

    Supervisor: Dan Frumin · d.frumin@rug.nl

    Theoretical and pratical improvements to the proof checker.

    1 spot available
  • Formally verified functional programs in Rocq

    Supervisor: Dan Frumin · d.frumin@rug.nl

    Study purely-functional data structrues and prove their correctness.

    2 spots available
  • Gradual Typing and Its Guarantees

    Supervisor: Dan Frumin · d.frumin@rug.nl

    What is gradual typing and what kind of guarantees does it offer?

    1 spot available
  • Theory and Practice of Bidirectional Typechecking

    Supervisor: Dan Frumin · d.frumin@rug.nl

    Study and build modern mechanisms for type-checking programming lanagues with higher-order features.

    1 spot available
  • Cyclic Proofs for Modal Logic with Future Modality

    Supervisor: Helle Hvid Hansen · h.h.hansen@rug.nl

    Learn the basics of modal logic, structural proof theory and cyclic proofs. The goal of the project is to implement a cut-elimination procedure for a cyclic proof system for a simple modal fixpoint logic.

    1 spot available
  • Web-based Tool for the Analysis of Multi-Actor Conditional Preferences

    Supervisor: Helle Hvid Hansen · h.h.hansen@rug.nl

    Learn about multi-actor decision-making and create a web-based tool for building and computing with multi-actor conditional preferences.

    1 spot available
  • Covering by Arithmetic Progressions

    Supervisor: Ivan Bliznets · i.bliznets@rug.nl

    1 spot available
  • Exploring Price Reversion Strategies in Financial Markets

    Supervisor: Ivan Bliznets · i.bliznets@rug.nl

    Exploring Price Reversion Strategies in Financial Markets

    1 spot available
  • Exploring Study of Real-World Sports Tournaments

    Supervisor: Ivan Bliznets · i.bliznets@rug.nl

    Study of Real-World Sports Tournaments

    3 spots available
  • Exploring the Frontiers of Graph Coloring

    Supervisor: Ivan Bliznets · i.bliznets@rug.nl

    Colorability and Choosability

    1 spot available
  • How good are LLMs at finding graph parameters?

    Supervisor: Ivan Bliznets · i.bliznets@rug.nl

    1 spot available
  • Survey of Classical Graph Problems Solvable Faster than Brute Force

    Supervisor: Ivan Bliznets · i.bliznets@rug.nl

    1 spot available
  • Survey of Classical Non-Graph-Based Problems Solvable Faster than Brute Force

    Supervisor: Ivan Bliznets · i.bliznets@rug.nl

    Survey of Classical Non-Graph-Based Problems Solvable Faster than Brute Force

    1 spot available
  • The Partial Minimum Satisfiability problem

    Supervisor: Ivan Bliznets · i.bliznets@rug.nl

    Constructing an exact exponential algorithm for the Partial Minimum Satisfiability problem

    1 spot available
  • Reasoning about clients and servers using logic

    Supervisor: Jorge Pérez · j.a.perez@rug.nl

    Learn to formally verify client-server programs using logic!

    1 spot available
  • The Dining Philosophers in APCP

    Supervisor: Jorge Pérez · j.a.perez@rug.nl

    Learn to formally verify a classic concurrency scenario using logic!

    1 spot available
  • Upper Bounds for Concurrent Asynchronous Programs in APCP

    Supervisor: Jorge Pérez · j.a.perez@rug.nl

    Learn to formally reason about resource usage in concurrency using types and logic!

    1 spot available
  • Reduction-Based Lower Bounds and Undecidability in Logic

    Supervisor: Revantha Ramanayake · d.r.s.ramanayake@rug.nl

    2 spots available
  • The Computational Origins of Hardness for Canonical Problems

    Supervisor: Revantha Ramanayake · d.r.s.ramanayake@rug.nl

    1 spot available
  • Approximate Circuit Design via Satisfiability Solving

    Supervisor: Rodrigo Otoni · r.b.otoni@rug.nl

    Learn about logic synthesis and then design and implement an improvement to a framework for synthesising approximate circuits

    2 spots available

MSc projects

We are open to supervising MSc thesis projects! Students are warmly invited to contact group members directly for specific project topics.