Skip to main content
Springer Nature - PMC COVID-19 Collection logoLink to Springer Nature - PMC COVID-19 Collection
. 2020 Mar 13;12079:39–56. doi: 10.1007/978-3-030-45237-7_3

Deciding the Bisimilarity of Context-Free Session Types

Bernardo Almeida , Andreia Mordido ‡,, Vasco T Vasconcelos
Editors: Armin Biere8, David Parker9
PMCID: PMC7480690

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.

Keywords: Types, Type equivalence, Bisimulation, Algorithm

Contributor Information

Armin Biere, Email: biere@jku.at.

David Parker, Email: d.a.parker@cs.bham.ac.uk.

Andreia Mordido, Email: afmordido@ciencias.ulisboa.pt.

References

  • 1.Aceto, L., Hennessy, M.: Termination, deadlock, and divergence. J. ACM 39(1), 147–187 (1992)
  • 2.Almeida, B., Mordido, A., T. Vasconcelos, V.: Freest: Context-free session types in a functional language. In: Proceedings Programming Language Approaches to Concurrency- and Communication-cEntric Software. Electronic Proceedings in Theoretical Computer Science, vol. 291, pp. 12–23. Open Publishing Association (2019). 10.4204/EPTCS.291.2
  • 3.Baeten, J.C., Bergstra, J.A., Klop, J.W.: Decidability of bisimulation equivalence for process generating context-free languages. Journal of the ACM (JACM) 40(3), 653–682 (1993)
  • 4.Burkart, O., Caucal, D., Steffen, B.: An elementary bisimulation decision procedure for arbitrary context-free processes. In: Mathematical Foundations of Computer Science. pp. 423–433 (1995). 10.1007/3-540-60246-1_148
  • 5.Caucal, D.: Décidabilité de l’égalité des langages algébriques infinitaires simples. In: Annual Symposium on Theoretical Aspects of Computer Science. pp. 37–48. Springer (1986)
  • 6.Christensen, S., Hüttel, H., Stirling, C.: Bisimulation equivalence is decidable for all context-free processes. Inf. Comput. 121(2), 143–148 (1995)
  • 7.Claessen, K., Hughes, J.: Quickcheck: a lightweight tool for random testing of haskell programs. In: Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming. pp. 268–279. ACM (2000), 10.1145/351240.351266 [DOI]
  • 8.Czerwinski, W., Lasota, S.: Fast equivalence-checking for normed context-free processes. In: IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2010). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2010)
  • 9.Gay, S.J., Hole, M.: Subtyping for session types in the pi calculus. Acta Inf. 42(2-3), 191–225 (2005). 10.1007/s00236-005-0177-z
  • 10.Henry, P., Sénizergues, G.: Lalblc a program testing the equivalence of dpda’s. In: International Conference on Implementation and Application of Automata. pp. 169–180. Springer (2013)
  • 11.Hirshfeld, Y.: Bisimulation trees and the decidability of weak bisimulations. Electr. Notes Theor. Comput. Sci. 5, 2–13 (1996)
  • 12.Hirshfeld, Y., Jerrum, M., Moller, F.: A polynomial algorithm for deciding bisimilarity of normed context-free processes. Theor. Comput. Sci. 158(1&2), 143–159 (1996). 10.1016/0304-3975(95)00064-X
  • 13.Hirshfeld, Y., Moller, F.: A fast algorithm for deciding bisimilarity of normed context-free processes. In: CONCUR ’94, Concurrency Theory. pp. 48–63 (1994). 10.1007/978-3-540-48654-1_5
  • 14.Honda, K.: Types for dyadic interaction. In: CONCUR ’93, 4th International Conference on Concurrency Theory. LNCS, vol. 715, pp. 509–523. Springer (1993)
  • 15.Honda, K., Vasconcelos, V.T., Kubo, M.: Language primitives and type discipline for structured communication-based programming. In: Programming Languages and Systems. pp. 122–138 (1998). 10.1007/BFb0053567
  • 16.Jančar, P.: Selected ideas used for decidability and undecidability of bisimilarity. In: International Conference on Developments in Language Theory. pp. 56–71. Springer (2008)
  • 17.Jancar, P.: Bisimilarity on basic process algebra is in 2-exptime (an explicit proof). arXiv preprint arXiv:1207.2479 (2012)
  • 18.Jančar, P., Moller, F.: Techniques for decidability and undecidability of bisimilarity. In: International Conference on Concurrency Theory. pp. 30–45. Springer (1999)
  • 19.Kiefer, S.: Bpa bisimilarity is exptime-hard. Information Processing Letters 113(4), 101–106 (2013)
  • 20.Padovani, L.: Context-free session type inference. In: Programming Languages and Systems - 26th European Symposium on Programming. pp. 804–830 (2017). 10.1007/978-3-662-54434-1_30
  • 21.Sangiorgi, D.: An Introduction to Bisimulation and Coinduction. Cambridge University Press (2014)
  • 22.Sénizergues, G.: The equivalence problem for deterministic pushdown automata is decidable. In: International Colloquium on Automata, Languages, and Programming. pp. 671–681. Springer (1997)
  • 23.Stirling, C.: Decidability of DPDA equivalence. Theoretical Computer Science 255(1-2), 1–31 (2001)
  • 24.Takeuchi, K., Honda, K., Kubo, M.: An interaction-based language and its typing system. In: PARLE. LNCS, vol. 817, pp. 398–413. Springer (1994)
  • 25.Tarski, A., et al.: A lattice-theoretical fixpoint theorem and its applications. Pacific journal of Mathematics 5(2), 285–309 (1955)
  • 26.Thiemann, P., Vasconcelos, V.T.: Context-free session types. In: Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming. pp. 462–475 (2016). 10.1145/2951913.2951926.

Articles from Tools and Algorithms for the Construction and Analysis of Systems are provided here courtesy of Nature Publishing Group

RESOURCES