#### Filter Results:

#### Publication Year

2005

2015

#### Publication Type

#### Co-author

#### Publication Venue

#### Key Phrases

Learn More

Since programming languages are Turing complete, it is impossible to decide for all programs whether a given non-trivial semantic property is valid or not. The way-out chosen by abstract interpretation is to provide approximate methods which may fail to certify a program property on some programs. Precision of the analysis can be measured by providing… (More)

In this paper we provide an interprocedural algorithm for reconstructing the control flow of assembly code in presence of indirect jumps, call instructions and returns. In case that the underlying assembly code is the output of a compiler, indirect jumps primarily originate from high-level switch statements. For these, our methods succeed in resolving… (More)

In this paper we present an alternative approach to interprocedurally inferring linear inequality relations. We propose an abstraction of the effects of procedures through convex sets of transition matrices. In the absence of conditional branching, this abstraction can be characterised precisely by means of the least solution of a constraint system. In… (More)

In this paper we present an analysis of assembly code for safety-critical embedded environments. Since local and global variables are the core concepts affecting the control flow of such programs, we first concentrate on classifying memory accesses as candidates for local or global variables. This is achieved by an interprocedural analysis of affine… (More)

In this paper we present a lightweight interprocedural side-effect analysis on assembly code. We represent the modifying potential of a procedure f by classifying all write accesses, occurring within f , relative to the parameter registers. In particular our approach is the first to accurately handle reference parameters. We demonstrate the usefulness of… (More)

In this article we provide an interprocedural analysis of linear two-variable equalities. The novel algorithm has a worst-case complexity of 𝒪(<i>n</i> ṡ <i>k</i><sup>4</sup>), where <i>k</i> is the number of variables and <i>n</i> is the program size. Thus, it saves a factor of <i>k</i><sup>4</sup> in comparison to a related algorithm based on… (More)

Polyinvar is a tool to infer valid polynomial relations at program points in the control flow graph of Java Code. This analysis is achieved by an incremen-tal fixpoint iteration over a set of polynomial modules, representing the weakest precondition for a generic relation of degree n at a given program point.

- Michael Petter
- 2011

In this paper, we present methods for checking and inferring all valid polynomial relations in Z2w. In contrast to the infinite field Q, Z2w is finite and hence allows for finitely many polynomial functions only. In this paper we show, that checking the validity of a polynomial invariant over Z2w is, though decid-able, only PSPACE-complete. Apart from the… (More)

We prove that all valid Herbrand equalities can be inter-procedurally inferred for programs where all assignments are taken into account whose right-hand sides depend on at most one variable. The analysis is based on procedure summaries representing the weakest preconditions for finitely many generic post-conditions with template variables. In order to… (More)