Network


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

Hotspot


Dive into the research topics where Wolfgang Ahrendt is active.

Publication


Featured researches published by Wolfgang Ahrendt.


Software and Systems Modeling | 2005

The KeY tool

Wolfgang Ahrendt; Thomas Baar; Bernhard Beckert; Richard Bubel; Martin Giese; Reiner Hähnle; Wolfram Menzel; Wojciech Mostowski; Andreas Roth; Steffen Schlager; Peter H. Schmitt

KeY is a tool that provides facilities for formal specification and verification of programs within a commercial platform for UML based software development. Using the KeY tool, formal methods and object-oriented development techniques are applied in an integrated manner. Formal specification is performed using the Object Constraint Language (OCL), which is part of the UML standard. KeY provides support for the authoring and formal analysis of OCL constraints. The target language of KeY based development is Java Card DL, a proper subset of Java for smart card applications and embedded systems. KeY uses a dynamic logic for Java Card DL to express proof obligations, and provides a state-of-the-art theorem prover for interactive and automated verification. Apart from its integration into UML based software development, a characteristic feature of KeY is that formal specification and verification can be introduced incrementally.


Lecture Notes in Computer Science | 2000

The KeY Approach: Integrating Object Oriented Design and Formal Verification

Wolfgang Ahrendt; Thomas Baar; Bernhard Beckert; Martin Giese; Elmar Habermalz; Reiner Hähnle; Wolfram Menzel; Peter H. Schmitt

This paper reports on the ongoing KeY project aimed at bridging the gap between (a) object-oriented software engineering methods and tools and (b) deductive verification. A distinctive feature of our approach is the use of a commercial CASE tool enhanced with functionality for formal specification and deductive verification.


Science of Computer Programming | 2012

A system for compositional verification of asynchronous objects

Wolfgang Ahrendt; Maximilian Dylla

We present a semantics, calculus, and system for compositional verification of Creol, an object-oriented modelling language for concurrent distributed applications. The system is an instance of KeY, a framework for object-oriented software verification, which has so far been applied foremost to sequential Java. Building on KeY characteristic concepts, like dynamic logic, sequent calculus, symbolic execution via explicit substitutions, and the taclet rule language, the presented system addresses functional correctness of Creol models featuring local cooperative thread parallelism and global communication via asynchronous method calls. The calculus heavily operates on communication histories specified by the interfaces of Creol units. Two example scenarios demonstrate the usage of the system. This article extends the conference paper of Ahrendt and Dylla (2009) [5] with a denotational semantics of Creol and an assumption-commitment style semantics of the logic.


fundamental approaches to software engineering | 2002

The KeY System: Integrating Object-Oriented Design and Formal Methods

Wolfgang Ahrendt; Thomas Baar; Bernhard Beckert; Martin Giese; Elmar Habermalz; Reiner Hähnle; Wolfram Menzel; Wojciech Mostowski; Peter H. Schmitt

This paper gives a brief description of the KeY system, a tool written as part of the ongoing KeY project, which is aimed at bridging the gap between (a) OO software engineering methods and tools and (b) deductive verification. The KeY system consists of a commercial CASE tool enhanced with functionality for formal specification and deductive verification.


verified software theories tools experiments | 2014

The KeY Platform for Verification and Analysis of Java Programs

Wolfgang Ahrendt; Bernhard Beckert; Daniel Bruns; Richard Bubel; Christoph Gladisch; Sarah Grebing; Reiner Hähnle; Martin Hentschel; Mihai Herda; Vladimir Klebanov; Wojciech Mostowski; Christoph Scheben; Peter H. Schmitt; Mattias Ulbrich

The KeY system offers a platform of software analysis tools for sequential Java. Foremost, this includes full functional verification against contracts written in the Java Modeling Language. But the approach is general enough to provide a basis for other methods and purposes: (i) complementary validation techniques to formal verification such as testing and debugging, (ii) methods that reduce the complexity of verification such as modularization and abstract interpretation, (iii) analyses of non-functional properties such as information flow security, and (iv) sound program transformation and code generation. We show that deductive technology that has been developed for full functional verification can be used as a basis and framework for other purposes than pure functional verification. We use the current release of the KeY system as an example to explain and prove this claim.


Archive | 1998

The WAM Case Study: Verifying Compiler Correctness for Prolog with KIV

Gerhard Schellhorn; Wolfgang Ahrendt

This chapter describes the first half of the formal, machine-supported verification of a Prolog compiler with the KIV system.


Archive | 2016

Deductive Software Verification - The KeY Book

Wolfgang Ahrendt; Bernhard Beckert; Richard Bubel; Reiner Hähnle; Peter H. Schmitt; Mattias Ulbrich

Static analysis of software with deductive methods is a highly dynamic field of research on the verge of becoming a mainstream technology in software engineering. It consists of a large portfolio of - mostly fully automated - analyses: formal verification, test generation, security analysis, visualization, and debugging. All of them are realized in the state-of-art deductive verification framework KeY. This book is the definitive guide to KeY that lets you explore the full potential of deductive software verification in practice. It contains the complete theory behind KeY for active researchers who want to understand it in depth or use it in their own work. But the book also features fully self-contained chapters on the Java Modeling Language and on Using KeY that require nothing else than familiarity with Java. All other chapters are accessible for graduate students (M.Sc. level and beyond). The KeY framework is free and open software, downloadable from the book companion website which contains also all code examples mentioned in this book.


international conference on logic programming | 2005

Automatic validation of transformation rules for java verification against a rewriting semantics

Wolfgang Ahrendt; Andreas Roth; Ralf Sasse

This paper presents a methodology for automatically validating program transformation rules that are part of a calculus for Java source code verification. We target the Java Dynamic Logic calculus which is implemented in the interactive prover of the KeY system. As a basis for validation, we take an existing SOS style rewriting logic semantics for Java, formalized in the input language of the Maude system. That semantics is ‘lifted’ to cope with schematic programs like the ones appearing in program transformation rules. The rewriting theory is further extended to generate valid initial states for involved program fragments, and to check the final states for equivalence. The result is used in frequent validation runs over the relevant fragment of the calculus in the KeY system.


conference on automated deduction | 2002

Deductive Search for Errors in Free Data Type Specifications Using Model Generation

Wolfgang Ahrendt

The presented approach aims at identifying false conjectures about free data types. Given a specification and a conjecture, the method performs a search for a model of an according counter specification. The model search is tailor-made for the semantical setting of free data types, where the fixed domain allows to describe models just in terms of interpretations. For sake of interpretation construction, a theory specific calculus is provided. The concrete rules are ‘executed’ by a procedure known as model generation. As most free data types have infinite domains, the ability of automatically solving the non-consequence problem is necessarily limited. That problem is addressed by limiting the instantiation of the axioms. This approximation leads to a restricted notion of model correctness, which is discussed. At the same time, it enables model completeness for free data types, unlike approaches based on limiting the domain size.


runtime verification | 2015

STARVOORS: A Tool for Combined Static and Runtime Verification of Java

Jesús Mauricio Chimento; Wolfgang Ahrendt; Gordon J. Pace; Gerardo Schneider

We present the tool StaRVOOrS (Static and Runtime Verification of Object-Oriented Software), which combines static and runtime verification (RV) of Java programs. The tool automates a framework which uses partial results extracted from static verification to optimise the runtime monitoring process. StaRVOOrs combines the deductive theorem prover KeY and the RV tool LARVA, and uses properties written using the ppDATE specification language which combines the control-flow property language DATE used in LARVA with Hoare triples assigned to states. We demonstrate the effectiveness of the tool by applying it to the electronic purse application Mondex.

Collaboration


Dive into the Wolfgang Ahrendt's collaboration.

Top Co-Authors

Avatar

Bernhard Beckert

Karlsruhe Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Peter H. Schmitt

Karlsruhe Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Reiner Hähnle

University of Koblenz and Landau

View shared research outputs
Top Co-Authors

Avatar

Richard Bubel

Technische Universität Darmstadt

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jesús Mauricio Chimento

Chalmers University of Technology

View shared research outputs
Top Co-Authors

Avatar

Andreas Roth

Karlsruhe Institute of Technology

View shared research outputs
Researchain Logo
Decentralizing Knowledge