Specification language for static and runtime verification of data and control properties
Paper i proceeding, 2015

Static verification techniques can verify properties across all executions of a program, but powerful judgements are hard to achieve automatically. In contrast, runtime verification enjoys full automation, but cannot judge future and alternative runs. In this paper we present a novel approach in which data-centric and control-oriented properties may be stated in a single formalism, amenable to both static and dynamic verification techniques. We develop and formalise a specification notation, ppDATE, extending the control-flow property language used in the runtime verification tool Larva with pre/post-conditions and show how specifications written in this notation can be analysed both using the deductive theorem prover KeY and the runtime verification tool Larva. Verification is performed in two steps: KeY first partially proves the dataoriented part of the specification, simplifying the specification which is then passed on to Larva to check at runtime for the remaining parts of the specification including the control-centric aspects. We apply the approach to Mondex, an electronic purse application.

Författare

Wolfgang Ahrendt

Chalmers, Data- och informationsteknik, Programvaruteknik

Mauricio Chimento

Chalmers, Data- och informationsteknik, Programvaruteknik

Gordon J. Pace

University of Malta

Gerardo Schneider

Göteborgs universitet

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

03029743 (ISSN) 16113349 (eISSN)

Vol. 9109 108-125
978-3-319-19248-2 (ISBN)

Styrkeområden

Informations- och kommunikationsteknik

Ämneskategorier

Språkteknologi (språkvetenskaplig databehandling)

DOI

10.1007/978-3-319-19249-9_8

Mer information

Senast uppdaterat

2024-05-24