Vector addition systems and their applications in the verification of computer programs

[thumbnail of WRAP_Theses_Dixon_2022.pdf]
Preview
PDF
WRAP_Theses_Dixon_2022.pdf - Submitted Version - Requires a PDF viewer.

Download (1MB) | Preview

Request Changes to record.

Abstract

Vector Addition Systems (and, equivalently, Petri nets) are a widespread formalism for modelling across a spectrum of problem domains, from logistics to hardware simulation. In this thesis, we firstly explore two classic decidability problems for these models: reachability, whether one can get to a given configuration, and coverability, whether one can exceed it. These problems are sufficent to express a wide class of verification properties for models derived from real-world use cases, including safety and deadlock-freeness. We present and implement a number of approaches for solving both the coverability and reachability problems, including KReach, the first known implementation of a complete decider for the general Petri net reachability problem.

Petri nets offer a natural model of concurrent processes and one of the most common modern use cases for the model is in the verification of safety properties for software, especially sofware with concurrency. In the later half of this work we address some approaches to deciding properties of programs written in Finitary Idealized Concurrent Algol (FICA), a prototypical language combining functional, imperative, and higher-order concurrent programming. We introduce a new family of “leafy” automata models, all based on a novel representation of internal configurations as a tree structure whose semantics is inspired by game-semantic interpretations of FICA terms. We give translations from such terms to our automata and across the work derive decidability of some useful properties for successively more expressive subsets of terms, using a variety of methods including via reachability on Petri nets. We believe these models will help to unify the game- and automata-theoretic views of programming languages and provide a useful basis on which to further study the theory of concurrency.

Item Type: Thesis [via Doctoral College] (PhD)
Subjects: Q Science > QA Mathematics > QA76 Electronic computers. Computer science. Computer software
Library of Congress Subject Headings (LCSH): Petri nets, Distributed parameter systems, Control theory, Machine theory, ALGOL (Computer program language), Parallel programming (Computer science), Computer multitasking, Programming languages (Electronic computers)
Official Date: November 2022
Dates:
Date
Event
November 2022
UNSPECIFIED
Institution: University of Warwick
Theses Department: Department of Computer Science
Thesis Type: PhD
Publication Status: Unpublished
Supervisor(s)/Advisor: Lazić, Ranko ; Murawski, Andrzej S.
Sponsors: University of Warwick. Centre for Doctoral Training in Urban Science and Progress ; Engineering and Physical Sciences Research Council
Format of File: pdf
Extent: xi, 203 pages : illustrations
Language: eng
URI: https://wrap.warwick.ac.uk/177504/

Export / Share Citation


Request changes or add full text files to a record

Repository staff actions (login required)

View Item View Item