Bettina Könighofer
Graz University of Technology
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Bettina Könighofer.
Acta Informatica | 2014
Roderick Bloem; Krishnendu Chatterjee; Karin Greimel; Thomas A. Henzinger; Georg Hofferek; Barbara Jobstmann; Bettina Könighofer; Robert Könighofer
Systems should not only be correct but also robust in the sense that they behave reasonably in unexpected situations. This article addresses synthesis of robust reactive systems from temporal specifications. Existing methods allow arbitrary behavior if assumptions in the specification are violated. To overcome this, we define two robustness notions, combine them, and show how to enforce them in synthesis. The first notion applies to safety properties: If safety assumptions are violated temporarily, we require that the system recovers to normal operation with as few errors as possible. The second notion requires that, if liveness assumptions are violated, as many guarantees as possible should be fulfilled nevertheless. We present a synthesis procedure achieving this for the important class of GR(1) specifications, and establish complexity bounds. We also present an implementation of a special case of robustness, and show experimental results.
formal methods in computer-aided design | 2013
Georg Hofferek; Ashutosh Gupta; Bettina Könighofer; Jie-Hong R. Jiang; Roderick Bloem
It is often difficult to correctly implement a Boolean controller for a complex system, especially when concurrency is involved. Yet, it may be easy to formally specify a controller. For instance, for a pipelined processor it suffices to state that the visible behavior of the pipelined system should be identical to a non-pipelined reference system (Burch-Dill paradigm). We present a novel procedure to efficiently synthesize multiple Boolean control signals from a specification given as a quantified first-order formula (with a specific quantifier structure). Our approach uses uninterpreted functions to abstract details of the design. We construct an unsatisfiable SMT formula from the given specification. Then, from just one proof of unsatisfiability, we use a variant of Craig interpolation to compute multiple coordinated interpolants that implement the Boolean control signals. Our method avoids iterative learning and back-substitution of the control functions. We applied our approach to synthesize a controller for a simple two-stage pipelined processor, and present first experimental results.
formal methods in computer aided design | 2014
Roderick Bloem; Georg Hofferek; Bettina Könighofer; Robert Könighofer; Simon Außerlechner; Raphael Spörk
Correctness of a program with respect to concurrency is often hard to achieve, but easy to specify: the concurrent program should produce the same results as a sequential reference version. We show how to automatically insert small atomic sections into a program to ensure correctness with respect to this implicit specification. Using techniques from bounded software model checking, we transform the program into an SMT formula that becomes unsatisfiable when we add correct atomic sections. By using uninterpreted functions to abstract data-related computational details, we make our approach applicable to programs with very complex computations, e.g., cryptographic algorithms. Our method starts with an empty set of atomic sections, and, based on counterexamples obtained from the SMT solver, refines the program by adding new atomic sections until correctness is achieved. We compare two different such refinement methods and provide experimental results, including Linux kernel modules where we successfully fix race conditions.
SYNT | 2012
Roderick Bloem; Hans-Jürgen Gamauf; Georg Hofferek; Bettina Könighofer; Robert Könighofer
Specifications for reactive systems often consist of environment assumptions and system guarantees.An implementation should not only be correct, but also robust in the sense that it behaves reasonablyeven when the assumptions are (temporarily) violated. We present an extension of the requirementsanalysis and synthesis tool RATSY that is able to synthesize robust systems from GR(1) specifica-tions, i.e., system in which a finite number of safety assumption violations is guaranteed to induceonly a finite number of safety guarantee violations. We show how the specification can be turnedinto a two-pair Streett game, and how a winning strategy corresponding to a correct and robust im-plementation can be computed. Finally, we provide some experimental results.
theory and application of cryptographic techniques | 2018
Roderick Bloem; Hannes Gross; Rinat Iusupov; Bettina Könighofer; Stefan Mangard; Johannes Winter
Masking provides a high level of resistance against side-channel analysis. However, in practice there are many possible pitfalls when masking schemes are applied, and implementation flaws are easily overlooked. Over the recent years, the formal verification of masked software implementations has made substantial progress. In contrast to software implementations, hardware implementations are inherently susceptible to glitches. Therefore, the same methods tailored for software implementations are not readily applicable.
haifa verification conference | 2016
Laura Humphrey; Bettina Könighofer; Robert Könighofer; Ufuk Topcu
Shield synthesis is an approach to enforce a set of safety-critical properties of a reactive system at runtime. A shield monitors the system and corrects any erroneous output values instantaneously. The shield deviates from the given outputs as little as it can and recovers to hand back control to the system as soon as possible. This paper takes its inspiration from a case study on mission planning for unmanned aerial vehicles (UAVs) in which k-stabilizing shields, which guarantee recovery in a finite time, could not be constructed. We introduce the notion of admissible shields, which improves k-stabilizing shields in two ways: (1) whereas k-stabilizing shields take an adversarial view on the system, admissible shields take a collaborative view. That is, if there is no shield that guarantees recovery within k steps regardless of system behavior, the admissible shield will attempt to work with the system to recover as soon as possible. (2) Admissible shields can handle system failures during the recovery phase. In our experimental results we show that for UAVs, we can generate admissible shields, even when k-stabilizing shields do not exist.
tools and algorithms for construction and analysis of systems | 2015
Roderick Bloem; Bettina Könighofer; Robert Könighofer; Chao Wang
tools and algorithms for construction and analysis of systems | 2015
Roderick Bloem; Bettina Könighofer; Robert Könighofer; Chao Wang
national conference on artificial intelligence | 2018
Mohammed Alshiekh; Roderick Bloem; Ruediger Ehlers; Bettina Könighofer; Scott Niekum; Ufuk Topcu
arXiv: Artificial Intelligence | 2018
Nils Jansen; Bettina Könighofer; Sebastian Junges; Roderick Bloem