Wulandari, Gia Septiana ORCID: https://orcid.org/0000-0002-6155-8601 (2021) Verification of graph programs with monadic second-order logic. PhD thesis, University of York.
Abstract
In this thesis, we consider Hoare-style verification for the graph programming language GP 2. In literature, Hoare-style verification for graph programs has been studied by using extensions of nested conditions called E-conditions and M-conditions as assertions. However, E-conditions are only able to express first-order properties of GP 2 graphs, while M-conditions can only express properties of a non-attributed graph. Hence, there is still no logic that can express monadic second-order properties of GP 2 graphs. Moreover, both E-conditions and M-conditions may not be easy to comprehend by programmers used to formal specifications expressed in standard first-order logic.
Here, we present an approach to verify GP 2 graph programs with a standard monadic second-order logic. We show how to construct a strongest liberal postcondition with respect to a rule schema and a precondition. We then extend this construction to obtain a strongest liberal postcondition for arbitrary loop-free programs. Also, we show how to construct a precondition expressing successful execution of a loop-free program, and failing execution of a so-called iteration command. These constructions allow us to define a partial proof calculus that can handle a larger class of graph programs than what can be verified by the calculus that uses E-conditions and M-conditions as assertions.
Other than partial proof calculus whose assertions are monadic second-order logic, we also define semantic partial proof calculus. Similar calculus has been introduced in literature, but here we update the calculus by considering a GP 2 command that was not considered in existing work.
Metadata
Supervisors: | Plump, Detlef |
---|---|
Related URLs: |
|
Keywords: | GP 2, graph transformation, formal verification, monadic second-order logic, Hoare logic |
Awarding institution: | University of York |
Academic Units: | The University of York > Computer Science (York) |
Identification Number/EthosID: | uk.bl.ethos.839262 |
Depositing User: | Gia Septiana Wulandari |
Date Deposited: | 21 Sep 2021 16:25 |
Last Modified: | 21 Nov 2021 10:53 |
Open Archives Initiative ID (OAI ID): | oai:etheses.whiterose.ac.uk:29370 |
Download
Examined Thesis (PDF)
Filename: Wulandari_203043881_FinalThesis.pdf
Licence:
This work is licensed under a Creative Commons Attribution NonCommercial NoDerivatives 4.0 International License
Export
Statistics
You do not need to contact us to get a copy of this thesis. Please use the 'Download' link(s) above to get a copy.
You can contact us about this thesis. If you need to make a general enquiry, please see the Contact us page.