By the same authors

Calculational Verification of Reactive Programs with Reactive Relations and Kleene Algebra

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Full text download(s)

Published copy (DOI)

Author(s)

Department/unit(s)

Publication details

Title of host publicationRelational and Algebraic Methods in Computer Science - 17th International Conference, RAMiCS 2018, Proceedings
DateAccepted/In press - 30 Jun 2018
DatePublished (current) - 1 Nov 2018
Pages205-224
Number of pages20
PublisherLecture Notes in Computer Science
EditorsWalter Guttmann, Jules Desharnais, Stef Joosten
Volume11194
Original languageEnglish
ISBN (Print)9783030021481

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume11194 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Abstract

Reactive programs are ubiquitous in modern applications, and so verification is highly desirable. We present a verification strategy for reactive programs with a large or infinite state space utilising algebraic laws for reactive relations. We define novel operators to characterise interactions and state updates, and an associated equational theory. With this we can calculate a reactive program’s denotational semantics, and thereby facilitate automated proof. Of note is our reasoning support for iterative programs with reactive invariants, which is supported by Kleene algebra. We illustrate our strategy by verifying a reactive buffer. Our laws and strategy are mechanised in Isabelle/UTP, which provides soundness guarantees, and practical verification support.

Bibliographical note

© 2018, Springer Nature Switzerland AG. This is an author-produced version of the published paper. Uploaded in accordance with the publisher’s self-archiving policy. Further copying may not be permitted; contact the publisher for details.

Activities

Discover related content

Find related publications, people, projects, datasets and more using interactive charts.

View graph of relations