Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Georg Hofferek is active.

Publication


Featured researches published by Georg Hofferek.


computer aided verification | 2010

RATSY – a new requirements analysis tool with synthesis

Roderick Bloem; Alessandro Cimatti; Karin Greimel; Georg Hofferek; Robert Könighofer; Marco Roveri; Viktor Schuppan; Richard Seeber

Formal specifications play an increasingly important role in system design-flows Yet, they are not always easy to deal with In this paper we present RATSY, a successor of the Requirements Analysis Tool RAT RATSY extends RAT in several ways First, it includes a new graphical user interface to specify system properties as simple Buchi word automata Second, it can help debug incorrect specifications by means of a game-based approach Third, it allows correct-by-construction synthesis of systems from their temporal properties These new features and their seamless integration assist in property-based design processes.


formal methods in computer-aided design | 2009

Debugging formal specifications using simple counterstrategies

Robert Könighofer; Georg Hofferek; Roderick Bloem

Deriving a formal specification from an informal design intent is an error-prone process. The resulting specification may be incomplete, unrealizable, or in conflict with the design intent. We propose a debugging method for incorrect specifications that does not need an implementation. We show that we can explain conflicts with the design intent by explaining unrealizability. Our approach for explaining unrealizability is based on counterstrategies. Since counterstrategies may be large, we propose several ways to simplify them. First, we simplify the specification itself by removing both requirements and variables that do not contribute to the problem. Second, we heuristically search for a countertrace, i.e., a single input trace that suffices to demonstrate unrealizability. Finally, we present the countertrace or the counterstrategy to the user in extensive form as a graph and implicitly as an interactive game. We present experimental results for specifications given as GR(1) formulas.


Acta Informatica | 2014

Synthesizing robust systems

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.


International Journal on Software Tools for Technology Transfer | 2013

Debugging formal specifications: a practical approach using model-based diagnosis and counterstrategies

Robert Könighofer; Georg Hofferek; Roderick Bloem

Creating a formal specification for a design is an error-prone process. At the same time, debugging incorrect specifications is difficult and time consuming. In this work, we propose a debugging method for formal specifications that does not require an implementation. We handle conflicts between a formal specification and the informal design intent using a simulation-based refinement loop, where we reduce the problem of debugging overconstrained specifications to that of debugging unrealizability. We show how model-based diagnosis can be applied to locate an error in an unrealizable specification. The diagnosis algorithm computes properties and signals that can be modified in such a way that the specification becomes realizable, thus pointing out potential error locations. In order to fix the specification, the user must understand the problem. We use counterstrategies to explain conflicts in the specification. Since counterstrategies may be large, we propose several ways to simplify them. First, we compute the counterstrategy not for the original specification but only for an unrealizable core. Second, we use a heuristic to search for a countertrace, i.e., a single input trace which necessarily leads to a specification violation. Finally, we present the countertrace or the counterstrategy as an interactive game against the user, and as a graph summarizing possible plays of this game. We introduce a user-friendly implementation of our debugging method and present experimental results for GR(1) specifications.


smart card research and advanced application conference | 2008

Coupon Recalculation for the GPS Authentication Scheme

Georg Hofferek; Johannes Wolkerstorfer

Equipping branded goods with RFID tags is an effective measure to fight the growing black market of counterfeit products. Asymmetric cryptography is the technology of choice to achieve strong authentication but suffers from its ample demand of area and power resources. The GPS authentication scheme showed that a coupon-based approach can cope with the limited resources of passive RFID tags. This article extends the idea of coupons by recalculating coupons during the idle time of tags when they are powered but do not actively communicate. This approach relaxes latency requirements and allows to implement GPS hardware using only 800 gate equivalents plus storage for 560 bytes. In the average case it has the same performance as the classical coupon-based approach but does not suffer its susceptibility to denial-of-service attacks.


haifa verification conference | 2010

Debugging unrealizable specifications with model-based diagnosis

Robert Könighofer; Georg Hofferek; Roderick Bloem

Creating a formal specification for a reactive system is difficult and mistakes happen frequently. Yet, aids for specification debugging are rare. In this paper, we show how model-based diagnosis can be applied to localize errors in unrealizable specifications of reactive systems. An implementation of the system is not required. Our approach identifies properties and signals that can be responsible for unrealizability. By reduction to unrealizability, it can also be used to debug specifications which forbid desired behavior. We analyze specifications given as one set of properties, as well as specifications consisting of assumptions and guarantees. For GR(1) specifications we describe how realizability and unrealizable cores can be computed quickly, using approximations. This technique is not specific to GR(1), though. Finally, we present experimental results where the error localization precision is almost doubled when compared to the presentation of just unrealizable cores.


formal methods in computer-aided design | 2013

Synthesizing multiple boolean functions using interpolation on a single proof

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

Synthesis of Synchronization using Uninterpreted Functions

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

Synthesizing Robust Systems with RATSY

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.


haifa verification conference | 2012

FoREnSiC: an automatic debugging environment for C programs

Roderick Bloem; Rolf Drechsler; Görschwin Fey; Alexander Finder; Georg Hofferek; Robert Könighofer; Jaan Raik; Urmas Repinski; André Sülflow

We present FoREnSiC, an open source environment for automatic error detection, localization and correction in C programs. The framework implements different automated debugging methods in a unified way covering the whole design flow from ESL to RTL. Currently, a scalable simulation-based back-end, a back-end based on symbolic execution, and a formal back-end exploiting functional equivalences between a C program and a hardware design are available. FoREnSiC is designed as an extensible framework. Its infrastructure, including a powerful front-end and interfaces to logic problem solvers, can be reused for implementing new program analysis or debugging methods. In addition to the infrastructure, the back-ends, and a few experimental results, we present an illustrative application scenario that shows FoREnSiC in use.

Collaboration


Dive into the Georg Hofferek's collaboration.

Top Co-Authors

Avatar

Roderick Bloem

Graz University of Technology

View shared research outputs
Top Co-Authors

Avatar

Robert Könighofer

Graz University of Technology

View shared research outputs
Top Co-Authors

Avatar

Bettina Könighofer

Graz University of Technology

View shared research outputs
Top Co-Authors

Avatar

Karin Greimel

Graz University of Technology

View shared research outputs
Top Co-Authors

Avatar

Ashutosh Gupta

Institute of Science and Technology Austria

View shared research outputs
Top Co-Authors

Avatar

Hans-Jürgen Gamauf

Graz University of Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Krishnendu Chatterjee

Institute of Science and Technology Austria

View shared research outputs
Top Co-Authors

Avatar

Matthias Schlaipfer

Vienna University of Technology

View shared research outputs
Top Co-Authors

Avatar

Raphael Spörk

Graz University of Technology

View shared research outputs
Researchain Logo
Decentralizing Knowledge