The University of Southampton
University of Southampton Institutional Repository

Applying Formal Methods to the Design of Smart Card Software

Butler, Michael, Hartel, Pieter, Jong, Eduard de and Longley, Mark (1997) Applying Formal Methods to the Design of Smart Card Software s.n.

Record type: Monograph (Project Report)


The goal of this work is the design of a language for the implementation of smart card applications, specifically an operating system, as high integrity software. The integrity of a piece of software is demonstrated by proving various properties of the software. The language must therefore exclude any constructs that would make such proofs unreasonably difficult. An untyped language is not only very difficult to reason about formally but also allows many unchecked run-time errors that are eliminated in a, suitably, typed language. We would like the type system of the language to be strong, expressive and simple. Unfortunately the language is required to be able implement certain routines that might normally be part of the run-time system, notably the storage allocation routines. This requirement is likely to force the adoption of a weaker type system than we would ideally prefer. In order to understand the consequences of this requirement we first had to understand in more detail the storage allocation system required. To this end we prepared an initial Z specification of a memory manager for a smart card system. We then produced an executable specification and a Miranda implementation of the memory manager. These led to a modified Z specification for the existing implementation in both an abstract and refined form. The refined form of the modified Z specification was further refined to a detailed design. This was followed by some analysis about the general requirements and implications of a storage allocation function and an example implementation in Modula-3. Finally a proposal for a type system was prepared, describing the advantages of certain choices and the problems introduced by others.

Postscript - Other
Download (394kB)

More information

Published date: July 1997
Additional Information:
Organisations: Electronic & Software Systems


Local EPrints ID: 253690
PURE UUID: 532104b9-5328-4792-b2ec-fbf49b8557f3
ORCID for Michael Butler: ORCID iD

Catalogue record

Date deposited: 17 Jul 2000
Last modified: 18 Jul 2017 09:56

Export record


Author: Michael Butler ORCID iD
Author: Pieter Hartel
Author: Eduard de Jong
Author: Mark Longley

University divisions

Download statistics

Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.

View more statistics

Atom RSS 1.0 RSS 2.0

Contact ePrints Soton:

ePrints Soton supports OAI 2.0 with a base URL of

This repository has been built using EPrints software, developed at the University of Southampton, but available to everyone to use.

We use cookies to ensure that we give you the best experience on our website. If you continue without changing your settings, we will assume that you are happy to receive cookies on the University of Southampton website.