TY - GEN
T1 - Automated Modular Verification for Relaxed Communication Protocols
AU - Costea, Andreea
AU - Chin, Wei-ngan
AU - Qin, Shengchao
AU - Craciun, Florin
PY - 2018/10/22
Y1 - 2018/10/22
N2 - Ensuring software correctness and safety for communication-centric programs is important but challenging. In this paper we introduce a solution for writing communication protocols, for checking protocol conformance and for verifying implementation safety. This work draws on ideas from both multiparty session types, which provide a concise way to express communication protocols, as well as from separation-style logics for shared-memory concurrency, which provide strong safety guarantees for resource sharing. On the one hand, our proposal improves the expressiveness and precision of session types, without sacrificing their conciseness. On the other hand, it increases the applicability of software verification as well as its precision, by making it protocol aware. We also show how to perform the verification of such programs in a modular and automatic fashion.
AB - Ensuring software correctness and safety for communication-centric programs is important but challenging. In this paper we introduce a solution for writing communication protocols, for checking protocol conformance and for verifying implementation safety. This work draws on ideas from both multiparty session types, which provide a concise way to express communication protocols, as well as from separation-style logics for shared-memory concurrency, which provide strong safety guarantees for resource sharing. On the one hand, our proposal improves the expressiveness and precision of session types, without sacrificing their conciseness. On the other hand, it increases the applicability of software verification as well as its precision, by making it protocol aware. We also show how to perform the verification of such programs in a modular and automatic fashion.
U2 - 10.1007/978-3-030-02768-1_16
DO - 10.1007/978-3-030-02768-1_16
M3 - Conference contribution
T3 - Programming Languages and Systems
SP - 284
EP - 305
BT - Asian Symposium on Programming Languages and Systems
PB - Springer Verlag
ER -