Björn Wachter

dblp:59/1837 · DBLP profile ↗
← Back
24ranked-venue papers
3as first author
0since 2021 · last 2018
—ORCID · none

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

Software engineering, systems software and programming languages · 18 · 3 first-authorTheory of computation · 14 · 1 first-authorSystems, architecture and hardware · 1Applied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
5 papers
Program analysis · 44% Program verification · 35% Concurrent programming · 22%
Theoretical computer science
6 papers
Automata and formal languages · 38% Automated reasoning and model checking · 34% Computational complexity · 16%

Topics — the 17 heaviest of 18, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis
static analysis
0.622018
Bit-Precise Procedure-Modular Termination Analysis · ACM Trans. Program. Lang. Syst. 2018
Sound static deadlock analysis for C/Pthreads · ASE 2016
Program verification
termination analysis
0.522018
Bit-Precise Procedure-Modular Termination Analysis · ACM Trans. Program. Lang. Syst. 2018
Synthesising Interprocedural Bit-Precise Termination Proofs (T) · ASE 2015
Automata and formal languages
probabilistic automata
0.322014
Stability and Complexity of Minimising Probabilistic Automata · ICALP (2) 2014
Language Equivalence for Probabilistic Automata · CAV 2011
Concurrent programming › concurrency bugs › deadlock
deadlock analysis
0.212016
Sound static deadlock analysis for C/Pthreads · ASE 2016
Automated reasoning and model checking › model checking
probabilistic model checking
0.222010
PARAM: A Model Checker for Parametric Markov Models · CAV 2010
INFAMY: An Infinite-State Markov Model Checker · CAV 2009
Program analysis › static analysis
probabilistic program analysis
0.112012
APEX: An Analyzer for Open Probabilistic Programs · CAV 2012
Automata and formal languages › equivalence problem
language equivalence
0.112011
Language Equivalence for Probabilistic Automata · CAV 2011
Logic in computer science
modal logic
0.112011
Probabilistic Logical Characterization · Inf. Comput. 2011
Program verification › termination analysis
ranking function synthesis
0.112018
Bit-Precise Procedure-Modular Termination Analysis · ACM Trans. Program. Lang. Syst. 2018
Program analysis › static analysis
abstract interpretation
0.112008
Abstract Interpretation with Applications to Timing Validation · CAV 2008
Automated reasoning and model checking › abstraction refinement
counterexample-guided abstraction refinement
0.112008
Probabilistic CEGAR · CAV 2008
Automated reasoning and model checking
probabilistic verification
0.112008
Probabilistic CEGAR · CAV 2008
Concurrent programming
concurrency bugs
0.112016
Sound static deadlock analysis for C/Pthreads · ASE 2016
Concurrent programming
deadlock detection
0.112016
Sound static deadlock analysis for C/Pthreads · ASE 2016
Machine learning › Probabilistic and Bayesian machine learning
probabilistic programming
0.012012
APEX: An Analyzer for Open Probabilistic Programs · CAV 2012
Electronic design automation
timing analysis
0.012008
Abstract Interpretation with Applications to Timing Validation · CAV 2008
Automated reasoning and model checking
abstraction refinement
0.012008
Probabilistic CEGAR · CAV 2008

Methods — techniques the papers use, named apart from their topics

abstract interpretation · 0.7template-based summarization · 0.3lexicographic linear ranking functions · 0.3static analysis · 0.3thread-sensitive analysis · 0.2dependency analysis · 0.2context-sensitive analysis · 0.2template-based summarisation · 0.2ranking function synthesis · 0.2equivalence checking · 0.1parametric markov model analysis · 0.1markov chain modeling · 0.1counterexample-guided abstraction refinement · 0.1
YearPublicationVenuePosition
2018 Bit-Precise Procedure-Modular Termination Analysis
abstract
Non-termination is the root cause of a variety of program bugs, such as hanging programs and denial-of-service vulnerabilities. This makes an automated analysis that can prove the absence of such bugs highly desirable. To scale termination checks to large systems, an interprocedural termination analysis seems essential. This is a largely unexplored area of research in termination analysis, where most effort has focussed on small but difficult single-procedure problems. We present a modular termination analysis for C programs using template-based interprocedural summarisation. Our analysis combines a context-sensitive, over-approximating forward analysis with the inference of under-approximating preconditions for termination. Bit-precise termination arguments are synthesised over lexicographic linear ranking function templates. Our experimental results show the advantage of interprocedural reasoning over monolithic analysis in terms of efficiency, while retaining comparable precision.
Hong-Yi Chen, Cristina David, Daniel Kroening, Peter Schrammel, Björn Wachter
ACM Trans. Program. Lang. Syst.5
2016 Sound static deadlock analysis for C/Pthreads
abstract
We present a static deadlock analysis approach for C/pthreads. The design of our method has been guided by the requirement to analyse real-world code. Our approach is sound (i.e., misses no deadlocks) for programs that have defined behaviour according to the C standard and the pthreads specification, and is precise enough to prove deadlock-freedom for a large number of such programs. The method consists of a pipeline of several analyses that build on a new context- and thread-sensitive abstract interpretation framework. We further present a lightweight dependency analysis to identify statements relevant to deadlock analysis and thus speed up the overall analysis. In our experimental evaluation, we succeeded to prove deadlock-freedom for 292 programs from the Debian GNU/Linux distribution with in total 2.3 MLOC in 4 hours.
Daniel Kroening, Daniel Poetzl, Peter Schrammel, Björn Wachter
ASE4
2015 Verifying synchronous reactive systems using lazy abstraction
Kumar Madhukar, Mandayam K. Srivas, Björn Wachter, Daniel Kroening, Ravindra Metta
DATE3
2015 Accelerating Invariant Generation
abstract
Acceleration is a technique for summarising loops by computing a closed-form representation of the loop behaviour. The closed form can be turned into an accelerator, which is a code snippet that skips over intermediate states of the loop to the end of the loop in a single step. Program analysers rely on invariant generation techniques to reason about loops. The state-of-the-art invariant generation techniques, in practice, often struggle to find concise loop invariants, and, instead, degrade into unrolling loops, which is ineffective for non-trivial programs. In this paper, we evaluate experimentally whether loop accelerators enable existing program analysis algorithm to discover loop invariants more reliably and more efficiently. This paper is the first comprehensive study on the synergies between acceleration and invariant generation. We report our experience with a collection of safe and unsafe programs drawn from the Software Verification Competition and the literature.
Kumar Madhukar, Björn Wachter, Daniel Kroening, Matt Lewis, Mandayam K. Srivas
FMCAD2
2015 Synthesising Interprocedural Bit-Precise Termination Proofs (T)
abstract
Proving program termination is key to guaranteeing absence of undesirable behaviour, such as hanging programs and even security vulnerabilities such as denial-of-service attacks. To make termination checks scale to large systems, interprocedural termination analysis seems essential, which is a largely unexplored area of research in termination analysis, where most effort has focussed on difficult single-procedure problems. We present a modular termination analysis for C programs using template-based interprocedural summarisation. Our analysis combines a context-sensitive, over-approximating forward analysis with the inference of under-approximating preconditions for termination. Bit-precise termination arguments are synthesised over lexicographic linear ranking function templates. Our experimental results show that our tool 2LS outperforms state-of-the-art alternatives, and demonstrate the clear advantage of interprocedural reasoning over monolithic analysis in terms of efficiency, while retaining comparable precision.
Hong-Yi Chen, Cristina David, Daniel Kroening, Peter Schrammel, Björn Wachter
ASE5
2014 Stability and Complexity of Minimising Probabilistic Automata
Stefan Kiefer, Björn Wachter
ICALP (2)2
2013 Verifying multi-threaded software with impact
Björn Wachter, Daniel Kroening, Joël Ouaknine
FMCAD1
2013 Algorithmic probabilistic game semantics - Playing games with automata
Stefan Kiefer, Andrzej S. Murawski, Joël Ouaknine, Björn Wachter, James Worrell 0001
Formal Methods Syst. Des.4
2012 Variable Probabilistic Abstraction Refinement
Luis María Ferrer Fioriti, Ernst Moritz Hahn, Holger Hermanns, Björn Wachter
ATVA4
2012 APEX: An Analyzer for Open Probabilistic Programs
Stefan Kiefer, Andrzej S. Murawski, Joël Ouaknine, Björn Wachter, James Worrell 0001
CAV4
2012 On the Complexity of the Equivalence Problem for Probabilistic Automata
Stefan Kiefer, Andrzej S. Murawski, Joël Ouaknine, Björn Wachter, James Worrell 0001
FoSSaCS4
2012 Three tokens in Herman's algorithm
abstract
Abstract Herman’s algorithm is a synchronous randomized protocol for achieving self-stabilization in a token ring consisting of N processes. The interaction of tokens makes the dynamics of the protocol very difficult to analyze. In this paper we study the distribution of the time to stabilization, assuming that there are three tokens in the initial configuration. We show for arbitrary N and for an arbitrary timeout t that the probability of stabilization within time t is minimized by choosing as the initial three-token configuration the configuration in which the tokens are placed equidistantly on the ring. Our result strengthens a corollary of a theorem of McIver and Morgan (Inf. Process Lett. 94(2): 79–84, 2005 ), which states that the expected stabilization time is minimized by the equidistant configuration.
Stefan Kiefer, Andrzej S. Murawski, Joël Ouaknine, Björn Wachter, James Worrell 0001
Formal Aspects Comput.4
2011 Language Equivalence for Probabilistic Automata
Stefan Kiefer, Andrzej S. Murawski, Joël Ouaknine, Björn Wachter, James Worrell 0001
CAV4
2011 Probabilistic Logical Characterization
Holger Hermanns, Augusto Parma, Roberto Segala, Björn Wachter, Lijun Zhang 0001
Inf. Comput.4
2010 PARAM: A Model Checker for Parametric Markov Models
Ernst Moritz Hahn, Holger Hermanns, Björn Wachter, Lijun Zhang 0001
CAV3
2010 PASS: Abstraction Refinement for Infinite Probabilistic Models
Ernst Moritz Hahn, Holger Hermanns, Björn Wachter, Lijun Zhang 0001
TACAS3
2010 Best Probabilistic Transformers
Björn Wachter, Lijun Zhang 0001
VMCAI1
2010 Static Timing Analysis for Hard Real-Time Systems
Reinhard Wilhelm, Sebastian Altmeyer, Claire Maïza, Daniel Grund, Jörg Herter, Jan Reineke 0001, Björn Wachter, Stephan Wilhelm
VMCAI7
2009 INFAMY: An Infinite-State Markov Model Checker
Ernst Moritz Hahn, Holger Hermanns, Björn Wachter, Lijun Zhang 0001
CAV3
2009 Symbolic state traversal for WCET analysis
abstract
Static worst-case execution time analysis of real-time tasks is based on abstract models that capture the timing behavior of the processor on which the tasks run. For complex processors, task-level execution time bounds are obtained by a state exploration which involves the abstract model and the program. Partial state space exploration is not sound. A full exploration can become too expensive. We present a novel symbolic method for WCET analysis based on abstract pipeline models which produces sound results and is scalable in terms of the considered hardware states.
Stephan Wilhelm, Björn Wachter
EMSOFT2
2009 Time-Bounded Model Checking of Infinite-State Continuous-Time Markov Chains
abstract
The design of complex concurrent systems often involves intricate performance and dependability considerations. Continuous-time Markov chains (CTMCs) are a widely used modeling formalism that captures such performance and dependability properties, and makes them analyzable by model checking. In this paper, we focus on time-bounded probabilistic properties of infinite-state CTMCs, expressible in a subset of continuous stochastic logic (CSL). This comprises important dependability measures, such as time-bounded probabilistic reachability, performability, survivability, and various availability measures like instantaneous, conditional instantaneous and interval availabilities. Conventional model checkers explore the given model exhaustively, which is often costly, due to state explosion, and sometimes impossible because the model is infinite. This paper presents a method that only explores the model up to a finite depth. The required depth is determined on the fly by an algorithm that is configurable in order to adapt to the characteristics of different classes of models. We provide experimental evidence showing that our method is effective.
Ernst Moritz Hahn, Holger Hermanns, Björn Wachter, Lijun Zhang 0001
Fundam. Informaticae3
2008 Probabilistic CEGAR
Holger Hermanns, Björn Wachter, Lijun Zhang 0001
CAV2
2008 Abstract Interpretation with Applications to Timing Validation
Reinhard Wilhelm, Björn Wachter
CAV2
2007 The Spotlight Principle
Björn Wachter, Bernd Westphal
VMCAI1