The University of Southampton
University of Southampton Institutional Repository

Constructing a new language to facilitate mathematical proofs In the event-B context

Constructing a new language to facilitate mathematical proofs In the event-B context
Constructing a new language to facilitate mathematical proofs In the event-B context
There are many languages used for modelling systems, and verifying the consistency of specifications. Having a valid specification reduces the chances of finding major issues later in the development process. Many of these systems use a set theoretic syntax, which gives a powerful mathematical system for modelling discrete systems. This thesis focuses on the Event-B modelling system, although the results could be applied to other set theoretic modelling systems. The aim of this thesis is to increase the number of mathematical theories available to the Event-B modeller, as this allows allows more accurate models to be created. The approach taken is to facilitate the definition of abstract mathematical types such as Monoids, Groups, and Rings in such a way that they can be built up hierarchically, and concrete mathematical types e.g., the naturals can use the results of the abstract types. This work firstly shows how the current set theoretic language (Event-B) can be used to define abstract mathematical types, and have concrete mathematical types reuse the results of the abstract types. It also demonstrates many difficulties of defining these types using the set theoretic syntax. To resolve these issues a new language, B♯ , is proposed. This language is designed to facilitate the definition of abstract mathematical types, and translate to the current Event-B syntax. The major additions to the new language to allow the definition of mathematical types are type classes and subtypes. At its core the B♯ language is a HOL style language. This work demonstrates how a HOL style language can be translated into a set theoretic style language. This translation is then extended to translate all the features of the B♯ language to the Event-B syntax. This allows theorems defined in the B♯ language to be used by Event-B modellers. A developer environment to define B♯ theorems is built, and the translation from the B♯ syntax to the Event-B syntax is implemented. This is used to define several mathematical types, and demonstrate the practicality of the approach. iv The approach of adding a translation phase from a new syntax was found to be a safe (inconsistencies could not be added to proving mechanisms) and effective way of adding features to the Event-B toolset. Many additional features and improvements are suggested. This approach could be used in a similar manner to other theorem provers use of a meta language (ML) to safely add features without introducing inconsistencies.
University of Southampton
Snook, James Harvey
0fa83505-e3bf-4a4c-a01f-52ef482fd18e
Snook, James Harvey
0fa83505-e3bf-4a4c-a01f-52ef482fd18e
Butler, Michael
54b9c2c7-2574-438e-9a36-6842a3d53ed0

Snook, James Harvey (2020) Constructing a new language to facilitate mathematical proofs In the event-B context. University of Southampton, Doctoral Thesis, 188pp.

Record type: Thesis (Doctoral)

Abstract

There are many languages used for modelling systems, and verifying the consistency of specifications. Having a valid specification reduces the chances of finding major issues later in the development process. Many of these systems use a set theoretic syntax, which gives a powerful mathematical system for modelling discrete systems. This thesis focuses on the Event-B modelling system, although the results could be applied to other set theoretic modelling systems. The aim of this thesis is to increase the number of mathematical theories available to the Event-B modeller, as this allows allows more accurate models to be created. The approach taken is to facilitate the definition of abstract mathematical types such as Monoids, Groups, and Rings in such a way that they can be built up hierarchically, and concrete mathematical types e.g., the naturals can use the results of the abstract types. This work firstly shows how the current set theoretic language (Event-B) can be used to define abstract mathematical types, and have concrete mathematical types reuse the results of the abstract types. It also demonstrates many difficulties of defining these types using the set theoretic syntax. To resolve these issues a new language, B♯ , is proposed. This language is designed to facilitate the definition of abstract mathematical types, and translate to the current Event-B syntax. The major additions to the new language to allow the definition of mathematical types are type classes and subtypes. At its core the B♯ language is a HOL style language. This work demonstrates how a HOL style language can be translated into a set theoretic style language. This translation is then extended to translate all the features of the B♯ language to the Event-B syntax. This allows theorems defined in the B♯ language to be used by Event-B modellers. A developer environment to define B♯ theorems is built, and the translation from the B♯ syntax to the Event-B syntax is implemented. This is used to define several mathematical types, and demonstrate the practicality of the approach. iv The approach of adding a translation phase from a new syntax was found to be a safe (inconsistencies could not be added to proving mechanisms) and effective way of adding features to the Event-B toolset. Many additional features and improvements are suggested. This approach could be used in a similar manner to other theorem provers use of a meta language (ML) to safely add features without introducing inconsistencies.

Text
JSnookThesis (1)
Available under License University of Southampton Thesis Licence.
Download (4kB)
Text
PTD_Snook-SIGNED
Restricted to Repository staff only

More information

Published date: November 2020

Identifiers

Local EPrints ID: 448056
URI: http://eprints.soton.ac.uk/id/eprint/448056
PURE UUID: f797cbdf-f67c-45ce-a65c-234ec12e5ec0
ORCID for Michael Butler: ORCID iD orcid.org/0000-0003-4642-5373

Catalogue record

Date deposited: 01 Apr 2021 15:40
Last modified: 13 Apr 2021 01:36

Export record

Contributors

Author: James Harvey Snook
Thesis advisor: Michael Butler ORCID iD

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.ac.uk

ePrints Soton supports OAI 2.0 with a base URL of http://eprints.soton.ac.uk/cgi/oai2

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.

×