JAG: JML Annotation Generation for Verifying Temporal Properties
Recommend Documents
(7: (qo,uctiveA A (mrn=A v 7 aches v pc~ =3)), (q 1 *fake) ). activeA := false od ..... HOARE, C. A. R. An axiomatic basis for computer programming. Commun.
the selection of nite test cases from in nite traces. As in practical testing our approach also uses the test verdicts PASS, FAIL and INCONCLUSIVE. PASS is given ...
E-mail: {alessio, hongyang, mjs, monika}@doc.ic.ac.uk. Abstract. Model checking Web service behaviour has remained limited to checking ..... Hu Huang et al [7] presents an approach using the BLAST model checker to verify the process.
N. S. Bjørner, A. Browne, E. S. Chang, M. Colón, A. Kapur, Z. Manna, H. B. Sipma, and T. E. .... Z. Manna, A. Browne, H. B. Sipma, and T. E. Uribe. ... W. Thomas.
We use a variant of Lewis's counterpart theory [12] to cast modal models ... multiple concrete worlds by a single abstract world, and (ii) creating cycles when an ...
to transform programs defining reactive systems into a simplified form which makes them much easier to analyse. We then ... case patterns are bound; all other variables are free. An expression .... critical resource its ticket value is reset to zero.
Verifying Linear Time Temporal Logic Properties of. Concurrent Ada Programs with Quasar. Evangelista S. [email protected]. Kaiser C. [email protected].
preamble for each test case is computed by symbolic animation of the. JML specification using constraint logic programming techniques. Thus, we are able to ...
We aim at activating all the behaviors from the JML method ..... behavior, or any of the declared exceptions Ep. We call a behavior a branch of this graph.
1 Introduction. An important class of security requirements of programs are information flow properties, which can be about confidentiality or integrity of data.
1 Introduction. During the forties and ... less known, originated the theory and technology of analog computation; the second one, focused on the ... if Ï is a mu-formula and any free occurrence of X in Ï is within the scope of an even number of ..
JML is a behavioral interface specification language tailored to Java. It is ..... to write specifications that are similar to the spirit of VDM or Larch BISLs. A more ...
AbstractâIncreasing interest in marine hydrokinetic (MHK) energy has led to significant research regarding optimal placement of emerging technologies to ...
among the 4 aspect models, the spatial and temporal consistency in the project schedule can ... collision between the space occupations of each two activities.
a new technique called bounded model checking [1] has been proposed that uses fast satisfiability ... From a model M we can construct a Kripke structure K = (S,T,I) in the following way. ... We define present and next state versions of the variables
KeywordsâVerifiable computing, RSA accumulator, Bloom filter. I. INTRODUCTION ...... C. Study of Unknown Keyword Optimization. This experiment uses ten ...
University of Science and Technology of China. Microsoft Corporation. Automatic video annotation is an important ingredient for semantic-level video browsing, ...
Perry Groot, Annette ten Teije. , and Frank van Harmelen. Dept. of Computer Science and Mathematics. Vrije Universiteit Amsterdam. ¡ perry,annette,frankh¢ ...
quality multimedia presentations by hand is a difficult and time-consuming task ... operating rooms at Columbia Presbyterian Medical Center, which provides a ...
Tobias Höllerer, James Shaw, Yong Feng, Jeanne Fromer. Columbia University ...... Desmond Jor- dan (Department of Anesthesiology) and Barry Allen (De-.
kidnapping?â can only be answered if information about events and the temporal relations between events is available and a document needs to be annotated ...
quacy (Bunt & Romary, 2002) it has a formal se- ... notation Framework (LAF, Ide & Romary, 2004) it ..... tence Peter tries to run five times around the block.
Dec 11, 2008 ... Thank you for purchasing the JML Halogen Oven. JMLs Halogen Oven uses
technology that cooks using infrared waves from a halogen light ...
iuï¬sdiction inconsider a complaint-dime nature. They also contended that all the coaches of the train had been thoroug
JAG: JML Annotation Generation for Verifying Temporal Properties
We present JAG, a JML (Java Modeling Language) annotation generator for ver- ifying temporal .... and J.-L. Lanet. Java Applet Correctness: a Developer-.
JAG: JML Annotation Generation for Verifying Temporal Properties Alain Giorgetti and Julien Groslambert Universit´e of Franche-Comt´e - LIFC, 16 route de Gray - 25030 Besancon cedex France {giorgetti, groslambert}@lifc.univ-fcomte.fr
Abstract. We present a tool for verifying temporal properties on Java/ JML classes by generating automatically JML annotations that ensure the verification of the temporal properties.
1
Introduction
We present JAG, a JML (Java Modeling Language) annotation generator for verifying temporal properties. JAG consists of a translator that transforms formulae expressed in a temporal language dedicated to Java - first introduced in [7] - into JML annotations that ensure the satisfaction of the temporal formulae. JML (Java Modeling Language) [5] is a specification language for Java developped (by G.T. Leavens) at IOWA State University. JML annotations are introduced as Java comments using the key character ’@’. The main annotations are invariant, constraint, requires and ensures. An invariant clause defines a property that must be satisfied in all visible states of the class, i.e., states before the invocation or after the termination of a method. An history constraint relates the value of the current state and the one of the pre-state denoted with the key word \old. Methods are described with preconditions (requires) andpostconditions (ensures). JML allows to declare specification variables (ghost) which can be assigned using a set clause. The JML temporal logic extension [7] is inspired by Dwyers Specification Pattern [4]. It can deal with exceptional termination of methods and can express both safety and liveness properties. The semantics of the temporal formulae and the translation rules are given in details in [7] for safety properties and in [1] for liveness properties. Take the example of a buffered transaction system (Fig. 1) encoded in Java, with a method beginTransaction(), which starts a new transaction, two methods commitTransaction() and abortTransaction() to respectively validate and abort (rollback) the current transaction and a modify() method which writes the modification in a buffer. We would like to verify on this Java class the following security properties describing the behavior of the class: (i) the buffer must be empty before beginning a new transaction and (ii) each started transaction must terminate.
Research partially funded by the french ACI GECCOO.
L. Baresi and R. Heckel (Eds.): FASE 2006, LNCS 3922, pp. 373–376, 2006. c Springer-Verlag Berlin Heidelberg 2006
374
A. Giorgetti and J. Groslambert
package example.transacSystem; public class TransactionSystem { //@ //@ //@ //@ //@ ...