A UTP semantics for communicating processes with shared variables and its formal encoding in PVS
CSP# (communicating sequential programs) is a modelling language designed for specifying concurrent systems by integrating CSP-like compositional operators with sequential programs updating shared variables. In this work, we define an observation-oriented denotational semantics in an open environmen...
Saved in:
Main Authors: | , , , , , |
---|---|
Other Authors: | |
Format: | Article |
Language: | English |
Published: |
2020
|
Subjects: | |
Online Access: | https://hdl.handle.net/10356/138432 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
id |
sg-ntu-dr.10356-138432 |
---|---|
record_format |
dspace |
spelling |
sg-ntu-dr.10356-1384322020-05-06T02:56:18Z A UTP semantics for communicating processes with shared variables and its formal encoding in PVS Shi, Ling Zhao, Yongxin Liu, Yang Sun, Jun Dong, Jin Song Qin, Shengchao School of Computer Science and Engineering Engineering::Computer science and engineering UTP Denotational Semantics CSP# (communicating sequential programs) is a modelling language designed for specifying concurrent systems by integrating CSP-like compositional operators with sequential programs updating shared variables. In this work, we define an observation-oriented denotational semantics in an open environment for the CSP# language based on the UTP framework. To deal with shared variables, we lift traditional event-based traces into mixed traces which consist of state-event pairs for recording process behaviours. To capture all possible concurrency behaviours between action/channel-based communications and global shared variables, we construct a comprehensive set of rules on merging traces from processes which run in parallel/interleaving. We also define refinement to check process equivalence and present a set of algebraic laws which are established based on our denotational semantics. We further encode our proposed denotational semantics into the PVS theorem prover. The encoding not only ensures the semantic consistency, but also builds up a theoretic foundation for machine-assisted verification of CSP# specifications. NRF (Natl Research Foundation, S’pore) 2020-05-06T02:56:18Z 2020-05-06T02:56:18Z 2018 Journal Article Shi, L., Zhao, Y., Liu, Y., Sun, J., Dong, J. S., & Qin, S. (2018). A UTP semantics for communicating processes with shared variables and its formal encoding in PVS. Formal Aspects of Computing, 30, 351-380. doi:10.1007/s00165-018-0453-7 0934-5043 https://hdl.handle.net/10356/138432 10.1007/s00165-018-0453-7 2-s2.0-85046010121 30 351 380 en Formal Aspects of Computing © 2018 British Computer Society. All rights reserved. This paper was published in Formal Aspects of Computing and is made available with permission of British Computer Society. |
institution |
Nanyang Technological University |
building |
NTU Library |
country |
Singapore |
collection |
DR-NTU |
language |
English |
topic |
Engineering::Computer science and engineering UTP Denotational Semantics |
spellingShingle |
Engineering::Computer science and engineering UTP Denotational Semantics Shi, Ling Zhao, Yongxin Liu, Yang Sun, Jun Dong, Jin Song Qin, Shengchao A UTP semantics for communicating processes with shared variables and its formal encoding in PVS |
description |
CSP# (communicating sequential programs) is a modelling language designed for specifying concurrent systems by integrating CSP-like compositional operators with sequential programs updating shared variables. In this work, we define an observation-oriented denotational semantics in an open environment for the CSP# language based on the UTP framework. To deal with shared variables, we lift traditional event-based traces into mixed traces which consist of state-event pairs for recording process behaviours. To capture all possible concurrency behaviours between action/channel-based communications and global shared variables, we construct a comprehensive set of rules on merging traces from processes which run in parallel/interleaving. We also define refinement to check process equivalence and present a set of algebraic laws which are established based on our denotational semantics. We further encode our proposed denotational semantics into the PVS theorem prover. The encoding not only ensures the semantic consistency, but also builds up a theoretic foundation for machine-assisted verification of CSP# specifications. |
author2 |
School of Computer Science and Engineering |
author_facet |
School of Computer Science and Engineering Shi, Ling Zhao, Yongxin Liu, Yang Sun, Jun Dong, Jin Song Qin, Shengchao |
format |
Article |
author |
Shi, Ling Zhao, Yongxin Liu, Yang Sun, Jun Dong, Jin Song Qin, Shengchao |
author_sort |
Shi, Ling |
title |
A UTP semantics for communicating processes with shared variables and its formal encoding in PVS |
title_short |
A UTP semantics for communicating processes with shared variables and its formal encoding in PVS |
title_full |
A UTP semantics for communicating processes with shared variables and its formal encoding in PVS |
title_fullStr |
A UTP semantics for communicating processes with shared variables and its formal encoding in PVS |
title_full_unstemmed |
A UTP semantics for communicating processes with shared variables and its formal encoding in PVS |
title_sort |
utp semantics for communicating processes with shared variables and its formal encoding in pvs |
publishDate |
2020 |
url |
https://hdl.handle.net/10356/138432 |
_version_ |
1681059129900138496 |