Professor Portrait: Rasmus Ejlers Møgelberg creates new mathematical worlds
With a background in mathematics and a passion for the abstract layers of the discipline, Professor Rasmus Ejlers Møgelberg develops theories that enhance the understanding and robustness of modern software. Rasmus Ejlers Møgelberg will deliver his inaugural lecture at the IT University on 24 October.
Rasmus Ejlers MøgelbergAbout ITUResearchProfessor portrait
Written 20 October, 2025 08:58 by Theis Duelund Jensen
Rasmus Ejlers Møgelberg has recently been appointed professor of computer science at the IT University of Copenhagen, where he researches the theoretical foundations of programming languages and logic. His work is rooted in fundamental research, but he is driven by the ambition to develop mathematical models that are both elegant and relevant.
“I’ve always had a love for mathematics,” he says. “I originally studied mathematics as my main subject and computer science as a minor, but it wasn’t until I encountered the more theoretical aspects of computer science – such as complexity theory and programming languages – that I truly became captivated.”
Following his PhD at ITU and research stays in Italy and Scotland, Rasmus has been affiliated with the university for over two decades. His research has evolved alongside the field, and he has helped shape a branch of computer science where abstract mathematical models are used to understand and verify software.
Mathematics as a shared language
Rasmus Ejlers Møgelberg’s research focuses on developing logics and models that make it possible to prove properties of programs – particularly in systems where correctness and security are critical. This includes, for example, communication protocols and operating systems, where even minor errors can have major consequences. “Rather than simply testing software, as is typically done during development, we aim to prove that programs are correct,” he explains. “This requires both advanced software support and a mathematical understanding of what the programming language does. Everything must be reduced to mathematics – it’s the shared language that allows us to reason about programs.”
A current area of focus is probabilistic programming languages, where programs make decisions based on certain probabilities – an approach often used in machine learning. The goal here is to be able to prove properties of programs that are not deterministic but must still be reliable.
Guarded recursion and circular dependencies
One of the most significant achievements in Rasmus Ejlers Møgelberg’s career is the development of a particular logic – known as “guarded recursion” – which makes it possible to model and analyse recursive programs. Recursion is a fundamental mechanism in many programming languages, where a program calls itself repeatedly, or a data structure is defined by reference to itself. Recursion also appears in mathematical models of programming languages in the form of circular dependencies, which make it difficult to model many modern languages.
“We’ve developed a mathematical world in which these dependencies can be broken and equations that otherwise have no solution can be solved,” he explains. “This has made it possible to model advanced programming languages and implement the logic in proof assistants, which can be used to verify programs.”
For Rasmus Ejlers Møgelberg, it is essential that theories are not only beautiful but also have potential for application. “I’m genuinely motivated by developing mathematical models,” he says. “But they describe something people are actually interested in – namely what programming languages do, and how we can make them more robust.”
That balance between fundamental research and application is at the heart of his work – and of his contribution to the development of computer science.
Theis Duelund Jensen, Press Officer, phone +45 2555 0447, email thej@itu.dk