2020
DOI: 10.1007/978-3-030-45237-7_3
|View full text |Cite
|
Sign up to set email alerts
|

Deciding the Bisimilarity of Context-Free Session Types

Abstract: We present an algorithm to decide the equivalence of context-free session types, practical to the point of being incorporated in a compiler. We prove its soundness and completeness. We further evaluate its behaviour in practice. In the process, we introduce an algorithm to decide the bisimilarity of simple grammars.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
35
0

Year Published

2020
2020
2023
2023

Publication Types

Select...
4
2
2

Relationship

5
3

Authors

Journals

citations
Cited by 18 publications
(36 citation statements)
references
References 24 publications
1
35
0
Order By: Relevance
“…Since the simulation creates a large number of equations, we will only show an initial fragment of the unfolding steps, and a subset of relevant equations as we go along. In our example there are four type constructors X (1) (arity 3), X (2) (arity 2) and X (3) (arity 0). Therefore, the maximum arity is n = 3.…”
Section: Proof Of Theorem 8 (Equivalence Of Pushdown and Nested Sessi...mentioning
confidence: 99%
“…Since the simulation creates a large number of equations, we will only show an initial fragment of the unfolding steps, and a subset of relevant equations as we go along. In our example there are four type constructors X (1) (arity 3), X (2) (arity 2) and X (3) (arity 0). Therefore, the maximum arity is n = 3.…”
Section: Proof Of Theorem 8 (Equivalence Of Pushdown and Nested Sessi...mentioning
confidence: 99%
“…this implementation of queues. In Figure 1, the initial queue (of size 1) consists of an empty process that provides along c 1 : queue A [0] (indicated by • between empty and c 1 ) and does not use any channels, and an elem process that uses c 1 : queue A [0], and an element of type A (not shown) and provides c 2 : queue A [1]. The ins message is first received on c 2 , then passed on to c 1 , which spawns a new empty process offering on c 0 : queue A [0].…”
Section: Overview Of Refined Session Typesmentioning
confidence: 99%
“…However, even in the presence of recursive types, the kinds of protocols that can be specified are limited, which has led to a number of extensions, such as context-free session types [1,28], label-dependent session types [29], and general dependent session types [17,24,30,31]. In prior work, we have proposed arithmetically refined session types [12] and have investigated their properties independently of any specific programming language.…”
Section: Introductionmentioning
confidence: 99%
“…The origin of mixed sessions Mixed sessions dawned on us when looking into an algorithm to decide the equivalence of context-free session types [1,42]. The algorithm translates types into (simple) context-free grammars.…”
Section: Related Workmentioning
confidence: 99%