25.07.2014 Views

VDM-10 Language Manual

VDM-10 Language Manual

VDM-10 Language Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 1<br />

Introduction<br />

The Vienna Development Method (<strong>VDM</strong>) [Bjørner&78, Jones90, Fitzgerald&08a] was originally<br />

developed at the IBM laboratories in Vienna in the 1970’s and as such it is one of the longest<br />

established formal method. This document is a common language manual for the three dialects<br />

for <strong>VDM</strong>-SL, <strong>VDM</strong>++ and <strong>VDM</strong>-RT in the <strong>VDM</strong>-<strong>10</strong> commonly agreed language revision. These<br />

dialects are supported by both <strong>VDM</strong>Tools [Fitzgerald&08b] (in the appropriate version) as well as<br />

in the Overture open source tool [Larsen&<strong>10</strong>] built on top of the Eclipse platform. Whenever a<br />

construct is common to the three different dialects the term “<strong>VDM</strong> languages” will be used. Whenever<br />

a construct is specific to a subset of the <strong>VDM</strong> languages the specific dialect term mentioned<br />

above will be mentioned explictly.<br />

1.1 The <strong>VDM</strong> Specification <strong>Language</strong> (<strong>VDM</strong>-SL)<br />

This document describes the syntax and semantics of the <strong>VDM</strong>-SL language which is essentially<br />

standard ISO/<strong>VDM</strong>-SL [ISO<strong>VDM</strong>96] with a modular extension 1 . Notice that all syntactically<br />

correct <strong>VDM</strong>-SL specifications are also correct in <strong>VDM</strong>-SL. Even though we have tried to present<br />

the language in a clear and understandable way the document is not a complete <strong>VDM</strong>-SL reference<br />

manual. For a more thorough presentation of the language we refer to the existing literature 2 .<br />

Wherever the <strong>VDM</strong>-SL notation differs from the <strong>VDM</strong>-SL standard notation the semantics will of<br />

course be carefully explained.<br />

1.2 The <strong>VDM</strong>++ <strong>Language</strong><br />

<strong>VDM</strong>++ is a formal specification language intended to specify object oriented systems with parallel<br />

and real-time behaviour, typically in technical environments [Fitzgerald&05]. The language is<br />

based on <strong>VDM</strong>-SL [ISO<strong>VDM</strong>96], and has been extended with class and object concepts, which are<br />

1 A few other extensions are also included.<br />

2 A more tutorial like presentation is given in [Fitzgerald&98] whereas proofs in <strong>VDM</strong>-SL are treated best in [Jones90]<br />

and [Bicarregui&94].<br />

1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!