The Logic of the RAISE Specification
Language
Chris George
1
and Anne E. Haxthausen
2
1
International Institute for Software Technology, United Nations University,
Macao,
[email protected]
2
Department of Informatics and Mathematical Modelling, Technical University of
Denmark, Lyngby, Denmark,
[email protected]
Summary.
This chapter describes the logic of the RAISE Specification Language,
RSL. It explains the particular logic chosen for RAISE, and motivates this choice
as suitable for a widespectrum language to be used for designs as well as initial
specifications, and supporting imperative and concurrent specifications as well as
applicative sequential ones. It also describes the logical definition of RSL, its ax
iomatic semantics, as well as the proof system for carrying out proofs. Finally, a
case study illustrates specification and verification methods in RAISE.
Key words:
formal methods, logic, proof, RAISE, RSL
1 Introduction
An important technique for increasing the reliability of software systems is
to use formal development methods. Formal methods provide mathematically
based languages for specifying software systems and proof systems for verifi
cation purposes. During the last two decades a whole range of formal methods
have been developed. One of these is RAISE.
The goal of this chapter is to describe and motivate the logic of the RAISE
specification language, RSL. This logic is non trivial and interesting because
the language supports many different specification styles.
It should be noted that for a given, formal language the term ‘logic’ can
be used in two different but related senses. It may refer to the meanings of
the ‘logical’ (truthvalued) expressions of a language. Alternatively, ‘logic’ may
refer to the proof system, to the inference rules by which one may reason about
terms of the language. In designing a language, choices made in the assignment
of meanings to expressions inﬂuence the possible design of the proof system.
For this reason we have chosen to use the term ‘logic’ as encompassing both
senses.
In the remaining part of this section, we give a short introduction to RAISE
including a survey of the major specification styles supported by RSL. Then,
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
350
Chris George and Anne E. Haxthausen
in Sect. 2, we describe the rationale behind the design choices made for the
meanings of ‘logical’ (truthvalued) expressions in RSL. Next, in Sect. 3, we
outline how RSL is formally given an axiomatic semantics in the form of
a collection of inference rules that defines wellformedness and meanings of
RSL constructs. In Sect. 4 we describe how a proof system is derived from
the axiomatic semantics in such a way that it is suitable for doing proofs
in practice using a computer based tool. After that, in Sect. 5, a case study
shows how a harbour information system can be specified and verified in
various ways. Finally, in Sect. 6, we state our conclusions.
This is the end of the preview.
Sign up
to
access the rest of the document.
 Spring '10
 RidhaKhedri
 Logic, RSL

Click to edit the document details