David N. Jansen

dblp:71/928 · DBLP profile ↗
← Back
33ranked-venue papers
3as first author
8since 2021 · last 2026
0000-0002-6636-3301ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 17 · 2 first-author · 4 since 2021Software engineering, systems software and programming languages · 14 · 1 first-author · 4 since 2021Systems, architecture and hardware · 3 · 1 since 2021Computer networks · 1Databases, data management, data science and information retrieval · 1
YearPublicationVenuePosition
2026 A Formally Verified Procedure for Width Inference in FIRRTL
Keyin Wang, Xiaomu Shi, Jiaxiang Liu 0001, Zhilin Wu, Fu Song, Taolue Chen 0001, David N. Jansen
ESOP (2)7
2025 A State-Based O(m log n) Partitioning Algorithm for Branching Bisimilarity
abstract
We present a new O(mlog n) algorithm to calculate branching bisimulation equivalence, which is the finest commonly used behavioural equivalence on labelled transition systems that takes the internal action τ into account. This algorithm combines the simpler data structure of an earlier algorithm for Kripke structures (without action labels) with the memory-efficiency of a later algorithm partitioning sets of labelled transitions. It employs a particularly elegant four-way split of blocks of states, which refines a block under two splitters and isolates all new bottom states, simultaneously. Benchmark results show that this new algorithm outperforms the best known algorithm for branching bisimulation both in time and space.
Jan Friso Groote, David N. Jansen
CONCUR2
2024 Formally Verifying Arithmetic Chisel Designs for All Bit Widths at Once
abstract
Chisel is an open-source hardware description language embedded in Scala to facilitate parameterized and reusable digital circuit design. Chisel is becoming increasingly popular and has been used to design RISC-V CPUs, e.g. RocketChip and XiangShan. While Chisel features high-level hardware designs, its verification is still low-level: Low-level (e.g. Verilog) programs are first generated from Chisel programs, then the verification tools are applied to these low-level programs. In this work, we focus on formal verification of arithmetic units. Efficient low-level formal verification of arithmetic units has always been a challenge and remains an active research area, attributed to the state explosion problem brought on by bit widths. To circumvent this problem for arithmetic Chisel designs, we propose an approach to their high-level formal verification so that their correctness is verified for all bit widths at once, instead of for each bit width separately. The key idea is to transform arithmetic Chisel designs into Scala software programs that simulate their behaviors, where the high-level features are preserved, then resort to Stainless, a deductive formal verification tool for Scala. We validate the effectiveness of this approach by formally verifying the correctness of dividers and multipliers in two representative open source RISC-V processors, namely, RocketChip and XiangShan. Compared to the existing proof-assistant-based parameterized verification approaches for arithmetic designs (e.g. Kami), the verification cost in our approach is much lower on average.
Weizhi Feng, Jiaxiang Liu 0001, David N. Jansen, Lijun Zhang 0001, Zhilin Wu
DAC4
2023 Rooted Divergence-Preserving Branching Bisimilarity is a Congruence for Guarded CCS
abstract
Branching bisimilarity is a well-known equivalence relation for labelled transition systems. Based on this equivalence relation, with an additional simple rootedness condition, a congruence relation for calculus of communication system (CCS) processes can be obtained. However, neither branching bisimilarity nor the corresponding congruence relation preserves divergence, and it is still a question whether, based on a divergence-preserving variant of branching bisimilarity, a divergence-preserving congruence relation for CCS processes can be obtained by introducing the same simple rootedness condition. In this article, we present a partial solution by showing that rooted divergence-preserving branching bisimilarity is preserved under the usual CCS operators, including prefixing, summation, parallel composition, relabelling, restriction, and (weakly) guarded recursion.
David N. Jansen, Xinxin Liu 0009, Wei Zhang 0305
Formal Aspects Comput.2
2022 CHA: Supporting SVA-Like Assertions in Formal Verification of Chisel Programs (Tool Paper)
Shizhen Yu, Jiuyang Liu, Yong Li 0031, Zhilin Wu, David N. Jansen, Lijun Zhang 0001
SEFM6
2022 Deciding All Behavioral Equivalences at Once: A Game for Linear-Time-Branching-Time Spectroscopy
abstract
We introduce a generalization of the bisimulation game that finds distinguishing Hennessy-Milner logic formulas from every finitary, subformula-closed language in van Glabbeek's linear-time--branching-time spectrum between two finite-state processes. We identify the relevant dimensions that measure expressive power to yield formulas belonging to the coarsest distinguishing behavioral preorders and equivalences; the compared processes are equivalent in each coarser behavioral equivalence from the spectrum. We prove that the induced algorithm can determine the best fit of (in)equivalences for a pair of processes.
Benjamin Bisping, David N. Jansen, Uwe Nestmann
Log. Methods Comput. Sci.2
2021 Formal Verification of Consensus in the Taurus Distributed Database
Song Gao 0014, Bohua Zhan, Depeng Liu, Xuechao Sun, Yanan Zhi, David N. Jansen, Lijun Zhang 0001
FM6
2021 Frontmatter: mining Android user interfaces at scale
abstract
We introduce Frontmatter: the largest open-access dataset containing user interface models of about 160,000 Android apps. Frontmatter opens the door for comprehensive mining of mobile user interfaces, jumpstarting empirical research at a large scale, addressing questions such as "How many travel apps require registration?", "Which apps do not follow accessibility guidelines?", "Does the user interface correspond to the description?", and many more. The Frontmatter UI analysis tool and the Frontmatter dataset are available under an open-source license.
Konstantin Kuznetsov 0001, Song Gao 0014, David N. Jansen, Lijun Zhang 0001, Andreas Zeller
ESEC/SIGSOFT FSE4
2020 A Near-Linear-Time Algorithm for Weak Bisimilarity on Markov Chains
abstract
This article improves the time bound for calculating the weak/branching bisimulation minimisation quotient on state-labelled discrete-time Markov chains from O(m n) to an expected-time O(m log⁴ n), where n is the number of states and m the number of transitions. For these results we assume that the set of state labels AP is small (|AP| ∈ O(m/n log⁴ n)). It follows the ideas of Groote et al. (ACM ToCL 2017) in combination with an efficient algorithm to handle decremental strongly connected components (Bernstein et al., STOC 2019).
David N. Jansen, Jan Friso Groote, Ferry Timmers, Pengfei Yang 0002
CONCUR1
2020 Accelerated Verification of Parametric Protocols with Decision Trees
abstract
Within a framework for verifying parametric network protocols through induction, one needs to find invariants based on a protocol instance of a small number of nodes. In this paper, we propose a new approach to accelerate parameterized verification by adopting decision trees to represent the state space of a protocol instance. Such trees can be considered as a knowledge base that summarizes all behaviors of the protocol instance. With this knowledge base, we are able to efficiently construct an oracle to effectively assess candidates of invariants of the protocol, which are suggested by an invariant finder. With the discovered invariants, a formal proof for the correctness of the protocol can be derived in the framework after proper generalization. The effectiveness of our method is demonstrated by experiments with typical benchmarks.
Taifeng Cao, David N. Jansen, Jun Pang 0001, Xiaotao Wei
ICCD3
2020 An O(m log n) algorithm for branching bisimilarity on labelled transition systems
abstract
Abstract Branching bisimilarity is a behavioural equivalence relation on labelled transition systems (LTSs) that takes internal actions into account. It has the traditional advantage that algorithms for branching bisimilarity are more efficient than ones for other weak behavioural equivalences, especially weak bisimilarity. With m the number of transitions and n the number of states, the classic $${O\left( {m n}\right) }$$ algorithm was recently replaced by an $$O({m (\log \left| { Act }\right| + \log n)})$$ algorithm [9], which is unfortunately rather complex. This paper combines its ideas with the ideas from Valmari [20], resulting in a simpler $$O({m \log n})$$ algorithm. Benchmarks show that in practice this algorithm is also faster and often far more memory efficient than its predecessors, making it the best option for branching bisimulation minimisation and preprocessing for calculating other weak equivalences on LTSs.
David N. Jansen, Jan Friso Groote, Jeroen Keiren, Anton Wijs
TACAS (2)1
2019 An Axiomatisation of the Probabilistic \mu -Calculus
Junnan Xu, Wanwei Liu, David N. Jansen, Lijun Zhang 0001
ICFEM3
2018 Probabilistic bisimulation for realistic schedulers
Lijun Zhang 0001, Pengfei Yang 0002, Lei Song 0001, Holger Hermanns, Christian Eisentraut, David N. Jansen, Jens Chr. Godskesen
Acta Informatica6
2018 An Automatic Proving Approach to Parameterized Verification
abstract
Formal verification of parameterized protocols such as cache coherence protocols is a significant challenge. In this article, we propose an automatic proving approach and its prototype paraVerifier to handle this challenge within a unified framework as follows: (1) To prove the correctness of a parameterized protocol, our approach automatically discovers auxiliary invariants and the corresponding dependency relations among the discovered invariants and protocol rules from a small instance of the to-be-verified protocol, and (2) the discovered invariants and dependency graph are then automatically generalized into a parameterized form and sent to the theorem prover, Isabelle. As a side product, the final verification result of a protocol is provided by a formal and human-readable proof. Our approach has been successfully applied to a number of benchmarks, including snoopying-based and directory-based cache coherence protocols.
Kaiqiang Duan, David N. Jansen, Jun Pang 0001, Lijun Zhang 0001, Shaowei Cai 0001
ACM Trans. Comput. Log.3
2017 Finding Polynomial Loop Invariants for Probabilistic Programs
Lijun Zhang 0001, David N. Jansen, Naijun Zhan, Bican Xia
ATVA3
2017 On Equivalence Checking of Nondeterministic Finite Automata
Yuxin Deng 0001, David N. Jansen, Lijun Zhang 0001
SETTA3
2017 An O(mlogn) Algorithm for Computing Stuttering Equivalence and Branching Bisimulation
abstract
We provide a new algorithm to determine stuttering equivalence with time complexity O ( m log n ), where n is the number of states and m is the number of transitions of a Kripke structure. This algorithm can also be used to determine branching bisimulation in O ( m (log | Act | + log n )) time, where Act is the set of actions in a labeled transition system. Theoretically, our algorithm substantially improves upon existing algorithms, which all have time complexity of the form O ( mn ) at best. Moreover, it has better or equal space complexity. Practical results confirm these findings: they show that our algorithm can outperform existing algorithms by several orders of magnitude, especially when the Kripke structures are large. The importance of our algorithm stretches far beyond stuttering equivalence and branching bisimulation. The known O ( mn ) algorithms were already far more efficient (both in space and time) than most other algorithms to determine behavioral equivalences (including weak bisimulation), and therefore they were often used as an essential preprocessing step. This new algorithm makes this use of stuttering equivalence and branching bisimulation even more attractive.
Jan Friso Groote, David N. Jansen, Jeroen Keiren, Anton Wijs
ACM Trans. Comput. Log.2
2016 Minimal Separating Sequences for All Pairs of States
Rick Smetsers, Joshua Moerman, David N. Jansen
LATA3
2016 A space-efficient simulation algorithm on probabilistic automata
Lijun Zhang 0001, David N. Jansen
Inf. Comput.2
2016 Multiphase until formulas over Markov reward models: An algebraic approach
Ming Xu 0010, Lijun Zhang 0001, David N. Jansen, Huibiao Zhu, Zongyuan Yang
Theor. Comput. Sci.3
2015 Applying Automata Learning to Embedded Control Software
Wouter Smeenk, Joshua Moerman, Frits W. Vaandrager, David N. Jansen
ICFEM4
2015 A Comparative Study of BDD Packages for Probabilistic Symbolic Model Checking
Tom van Dijk, Ernst Moritz Hahn, David N. Jansen, Yong Li 0031, Thomas Neele, Mariëlle Stoelinga, Andrea Turrini, Lijun Zhang 0001
SETTA3
2011 Automata-Based CSL Model Checking
Lijun Zhang 0001, David N. Jansen, Flemming Nielson, Holger Hermanns
ICALP (2)2
2011 The ins and outs of the probabilistic model checker MRMC
Joost-Pieter Katoen, Ivan S. Zapreev, Ernst Moritz Hahn, Holger Hermanns, David N. Jansen
Perform. Evaluation5
2010 Synthesis and stochastic assessment of cost-optimal schedules
Angelika Mader, Henrik C. Bohnenkamp, Yaroslav S. Usenko, David N. Jansen, Johann L. Hurink, Holger Hermanns
Int. J. Softw. Tools Technol. Transf.4
2009 Undecidability of Cost-Bounded Reachability in Priced Probabilistic Timed Automata
Jasper Berendsen, Taolue Chen 0001, David N. Jansen
TAMC3
2008 Flow Faster: Efficient Decision Algorithms for Probabilistic Simulations
abstract
Strong and weak simulation relations have been proposed for Markov chains, while strong simulation and strong probabilistic simulation relations have been proposed for probabilistic automata. However, decision algorithms for strong and weak simulation over Markov chains, and for strong simulation over probabilistic automata are not efficient, which makes it as yet unclear whether they can be used as effectively as their non-probabilistic counterparts. This paper presents drastically improved algorithms to decide whether some (discrete- or continuous-time) Markov chain strongly or weakly simulates another, or whether a probabilistic automaton strongly simulates another. The key innovation is the use of parametric maximum flow techniques to amortize computations. We also present a novel algorithm for deciding strong probabilistic simulation preorders on probabilistic automata, which has polynomial complexity via a reduction to an LP problem. When extending the algorithms for probabilistic automata to their continuous-time counterpart, we retain the same complexity for both strong and strong probabilistic simulations.
Lijun Zhang 0001, Holger Hermanns, Friedrich Eisenbrand, David N. Jansen
Log. Methods Comput. Sci.4
2007 Bisimulation Minimisation Mostly Speeds Up Probabilistic Model Checking
Joost-Pieter Katoen, Tim Kemna, Ivan S. Zapreev, David N. Jansen
TACAS4
2007 Flow Faster: Efficient Decision Algorithms for Probabilistic Simulations
Lijun Zhang 0001, Holger Hermanns, Friedrich Eisenbrand, David N. Jansen
TACAS4
2005 Logic and Model Checking for Hidden Markov Models
Lijun Zhang 0001, Holger Hermanns, David N. Jansen
FORTE3
2002 Extending CTL with Actions and Real Time
abstract
In this paper, we present the logic ATCTL, which is intended to be used for model checking models that have been specified in a lightweight version of the Unified Modelling Language (UML). Elsewhere, we have defined a formal semantics for LUML to describe the models. This paper's goal is to give a specification language for properties that fits LUML; LUML includes states, actions and real time. ATCTL extends CTL with concurrent actions and real time. It is based on earlier extensions of CTL by De Nicola and Vaandrager (ACTL) and Alur et al. (TCTL). This makes it easier to adapt existing model checkers to ATCTL. To show that we can check properties specified in ATCTL in models specified in LUML, we give a small example using the Kronos model checker.
David N. Jansen, Roel J. Wieringa
J. Log. Comput.1
2002 Requirements-Level Semantics and Model Checking of Object-Oriented Statecharts
Rik Eshuis, David N. Jansen, Roel J. Wieringa
Requir. Eng.2
2001 Techniques for Reactive System Design: The Tools in TRADE
Roel J. Wieringa, David N. Jansen
CAiSE2