Nicolaj Østerby Jensen
I am a computer scientist Post Doc at Department of Computer Science, Aalborg University.
My supervisors are Kim Guldstrand Larsen and Jiri Srba. My research focus on abstractions and on-the-fly algorithms
for model checking of timed automata and Petri net as well as safe multi-agent AI.
My personal interests also include game development, programming languages, and AI.
In my spare time, I moderate and make bots in the Rocket League bot community
among other nerdy things.
@ GitHub
• YouTube
• BlueSky
• Twitter
• Itch.io
Highlighted Publications
On-The-Fly Symbolic Algorithm for Timed ATL with Abstractions
Nicolaj Ø. Jensen, Kim G. Larsen, Didier Lime, Jirí Srba - CONCUR 2025
Abstract:
Verification of real-time systems with multiple components controlled by multiple parties is a
challenging task due to its computational complexity. We present an on-the-fly algorithm for verifying timed
alternating-time temporal logic (TATL), a branching-time logic with quantifiers over outcomes that results from
coalitions of players in such systems. We combine existing work on games and timed CTL verification in the abstract
dependency graph (ADG) framework, which allows for easy creation of on-the-fly algorithms that only explore the state
space as needed. In addition, we generalize the conventional inclusion check to the ADG framework which enables
dynamic reductions of the dependency graph. Using the insights from the generalization, we present a novel abstraction
that eliminates the need for conventional inclusion checking altogether in our domain. We implement our algorithms in
Uppaal and our experiments show that while inclusion checking considerably enhances performance, our abstraction
provides even more significant improvements, almost two orders of magnitude faster than the naive method. In addition,
we outperform Uppaal Tiga, which can verify only a strict subset of TATL. After implementing our new abstraction in
Uppaal Tiga, we also improve its performance by almost an order of magnitude.
DOI: LIPIcs.CONCUR.2025.25
• ArXiv Full Version
• Reprod. Artifact
Abstract:
We propose a novel state-space reduction framework to improve the performance of model checking of
Petri nets. We provide two instances of the framework: a static technique that considers only the structure of the
net, and a dynamic technique that additionally considers the current marking. By analyzing impossible, visible,
and directional effects of transitions, we identify places where tokens can be removed while preserving the
property in question. Unlike structural reductions, our techniques modify only the current marking, allowing the
net structure to be reused in multiple subproblems concurrently, which can be beneficial for example for CTL
model checking. We prove the correctness of our techniques and implement them in the open-source tool Tapaal, a
repeated winner in the CTL category in the annual model checking contest (MCC). We measure our methods’
performance on the MCC 2023 benchmark using the CTL categories and demonstrate that our methods reduce time and,
especially, memory usage. Our dynamic method explores 39.3% fewer configurations on average and achieves two
orders of magnitude speedup on at least one query on 23.7% of non-trivial models.
DOI: 10.1007/978-3-031-90643-5_11
• Reprod. Artifact
• Code
CGAAL: Distributed On-The-Fly ATL Model Checker with Heuristics
Falke B. Ø. Carlsen, Lars Bo P. Frydenskov, Nicolaj Ø. Jensen, Jener Rasmussen, Mathias M. Sørensen, Asger G. Weirsøe, Mathias C. Jensen, Kim G. Larsen - GandALF 2023
Abstract:
We present CGAAL, our efficient on-the-fly model checker for alternating-time temporal logic (ATL)
on concurrent game structures (CGS). We present how our tool encodes ATL as extended dependency graphs with negation
edges and employs the distributed on-the-fly algorithm by Dalsgaard et al. Our tool offers multiple novel search
strategies for the algorithm, including DHS which is inspired by PageRank and uses the in-degree of configurations
as a heuristic, IHS which estimates instability of assignment values, and LPS which estimates the distance to a state
satisfying the constituent property using linear programming. CGS are input using our modelling language LCGS, where
composition and synchronisation are easily described. We prove the correctness of our encoding, and our experiments
show that our tool CGAAL is often one to three orders of magnitude faster than the popular tool PRISM-games on case
studies from PRISM's documentation and among case studies we have developed. In our evaluation, we also compare and
evaluate our search strategies, and find that our custom search strategies are often significantly faster than the
usual breadth-first and depth-first search strategies.
DOI: 10.4204/EPTCS.390.7
• Code
Abstract:
Abstractions, such as extrapolation, ensure the termination of timed automata model checking.
However, such methods are normally only defined for classical timed automata, whereas modern tools like Uppaal take
as input timed automata extended with discrete data and C-like language constructs (XTA) making classical
extrapolation excessively over-approximating if even applicable. In this paper, we propose a new dynamic extrapolation
technique for XTAs that utilizes information from the immediate state of the search to find more precise extrapolation
values. We determine which code snippets are relevant to obtain the extrapolation values ahead of verification
using static analysis and then execute these dynamically during verification. We implement our novel extrapolation
technique in Uppaal and find that it reduces the zone graph sizes by 34.7% overall compared to a classic
location-clock-based extrapolation. The best case is an 82.7% reduction and the worst case is a surprising 8.2%
increase.
DOI: 10.1007/978-981-99-7584-6_6
• Models & data
Blog Posts