skip to main content
research-article
Open Access

From enhanced coinduction towards enhanced induction

Published:12 January 2022Publication History
Skip Abstract Section

Abstract

There exist a rich and well-developed theory of enhancements of the coinduction proof method, widely used on behavioural relations such as bisimilarity. We study how to develop an analogous theory for inductive behaviour relations, i.e., relations defined from inductive observables. Similarly to the coinductive setting, our theory makes use of (semi)-progressions of the form R->F(R), where R is a relation on processes and F is a function on relations, meaning that there is an appropriate match on the transitions that the processes in R can perform in which the process derivatives are in F(R). For a given preorder, an enhancement corresponds to a sound function, i.e., one for which R->F(R) implies that R is contained in the preorder; and similarly for equivalences. We introduce weights on the observables of an inductive relation, and a weight-preserving condition on functions that guarantees soundness. We show that the class of functions contains non-trivial functions and enjoys closure properties with respect to desirable function constructors, so to be able to derive sophisticated sound functions (and hence sophisticated proof techniques) from simpler ones. We consider both strong semantics (in which all actions are treated equally) and weak semantics (in which one abstracts from internal transitions). We test our enhancements on a few non-trivial examples.

Skip Supplemental Material Section

Supplemental Material

Auxiliary Presentation Video

Video for a short presentation of the POPL'22 paper (< 5 min)

References

  1. Jos C. M. Baeten, Jan A. Bergstra, and Jan Willem Klop. 1987. Ready-Trace Semantics for Concrete Process Algebra with the Priority Operator. Comput. J., 30, 6 (1987), 498–506.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. F. Bartels. 2003. Generalised Coinduction. Math. Struct. in Computer Science, 13, 2 (2003), 321–348. https://doi.org/10.1017/S0960129502003900 Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. F. Bartels. 2004. On generalised coinduction and probabilistic specification formats. Ph. D. Dissertation. CWI, Amsterdam.Google ScholarGoogle Scholar
  4. Henning Basold, Damien Pous, and Jurriaan Rot. 2017. Monoidal company for accessible functors. In Proc. CALCO (LIPIcs, Vol. 72). Schloss Dagstuhl - Leibniz-Zentrum f ür Informatik. https://doi.org/10.4230/LIPIcs.CALCO.2017.5 Google ScholarGoogle ScholarCross RefCross Ref
  5. J.A. Bergstra, J.W. Klop, and E.-R. Olderog. 1987. Failures without Chaos: a Process Semantics for Fair Abstraction. In IFIP Formal Description of Programming Concepts – III, M. Wirsing (Ed.). Elsevier Science Publishers B.V., 77–101.Google ScholarGoogle Scholar
  6. B. Bloom, S. Istrail, and A.R. Meyer. 1995. Bisimulation can’t be Traced. Journal of the ACM, 42, 1 (1995), 232–268. https://doi.org/10.1145/200836.200876 Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Filippo Bonchi, Pierre Ganty, Roberto Giacobazzi, and Dusko Pavlovic. 2018. Sound up-to techniques and Complete abstract domains. In LICS 2018, Anuj Dawar and Erich Grädel (Eds.). ACM, 175–184. https://doi.org/10.1145/3209108.3209169 Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Filippo Bonchi, Barbara König, and Sebastian Küpper. 2017. Up-To Techniques for Weighted Systems. In TACAS 2017, Axel Legay and Tiziana Margaria (Eds.) (Lecture Notes in Computer Science, Vol. 10205). 535–552. https://doi.org/10.1007/978-3-662-54577-5_31 Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Filippo Bonchi, Barbara König, and Daniela Petrisan. 2018. Up-To Techniques for Behavioural Metrics via Fibrations. In CONCUR’18,, Sven Schewe and Lijun Zhang (Eds.) (LIPIcs, Vol. 118). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 17:1–17:17. https://doi.org/10.4230/LIPIcs.CONCUR.2018.17 Google ScholarGoogle ScholarCross RefCross Ref
  10. Filippo Bonchi, Daniela Petrisan, Damien Pous, and Jurriaan Rot. 2017. A general account of coinduction up-to. Acta Inf., 54, 2 (2017), 127–190. https://doi.org/10.1007/s00236-016-0271-4 Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Filippo Bonchi and Damien Pous. 2013. Checking NFA equivalence with bisimulations up to congruence. In Proc. POPL’13, Roberto Giacobazzi and Radhia Cousot (Eds.). ACM, 457–468. https://doi.org/10.1145/2429069.2429124 Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Michael Brandt and Fritz Henglein. 1998. Coinductive Axiomatization of Recursive Type Equality and Subtyping. Fundam. Inform., 33, 4 (1998), 309–338. https://doi.org/10.3233/FI-1998-33401 Google ScholarGoogle ScholarCross RefCross Ref
  13. Stephen D. Brookes, C. A. R. Hoare, and A. W. Roscoe. 1984. A Theory of Communicating Sequential Processes. J. ACM, 31, 3 (1984), 560–599.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Stephen D. Brookes and A. W. Roscoe. 1984. An Improved Failures Model for Communicating Processes. In Seminar on Concurrency, Stephen D. Brookes, A. W. Roscoe, and Glynn Winskel (Eds.) (Lecture Notes in Computer Science, Vol. 197). Springer Verlag, 281–305.Google ScholarGoogle Scholar
  15. Rance Cleaveland and Matthew Hennessy. 1993. Testing Equivalence as a Bisimulation Equivalence. Formal Asp. Comput., 5, 1 (1993), 1–20. https://doi.org/10.1007/BF01211314 Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. David de Frutos-Escrig and Carlos Gregorio-Rodríguez. 2009. (Bi)simulations up-to characterise process semantics. Inf. Comput., 207, 2 (2009), 146–170. https://doi.org/10.1016/j.ic.2007.12.003 Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. R. De Nicola and R. Hennessy. 1984. Testing Equivalences for Processes. Theoretical Computer Science, 34 (1984), 83–133.Google ScholarGoogle ScholarCross RefCross Ref
  18. Adrien Durier, Daniel Hirschkoff, and Davide Sangiorgi. 2019. Divergence and unique solution of equations. Logical Methods in Computer Science, 15, 3 (2019), https://doi.org/10.23638/LMCS-15(3:12)2019 Google ScholarGoogle ScholarCross RefCross Ref
  19. Jörg Endrullis, Dimitri Hendriks, and Martin Bodin. 2013. Circular Coinduction in Coq Using Bisimulation-Up-To Techniques. In ITP 2013, Sandrine Blazy, Christine Paulin-Mohring, and David Pichardie (Eds.) (Lecture Notes in Computer Science, Vol. 7998). Springer, 354–369. https://doi.org/10.1007/978-3-642-39634-2_26 Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. R.J. van Glabbeek. 1993. The linear time—branching time spectrum II (The semantics of sequential systems with silent moves). In Proc. CONCUR ’93, E. Best (Ed.). Lecture Notes in Computer Science, 715, https://doi.org/10.1007/3-540-57208-2_6 Google ScholarGoogle ScholarCross RefCross Ref
  21. R.J. van Glabbeek. 2001. The linear time—branching time spectrum I. In Handbook of Process Algebra, A. Ponse J. Bergstra and S. Smolka (Eds.). Elsevier, 3–99. https://doi.org/10.1016/b978-044482830-9/50019-9 Google ScholarGoogle ScholarCross RefCross Ref
  22. J.F. Groote and F.W. Vaandrager. 1992. Structured Operational Semantics and Bisimulation as a Congruence. Information and Computation, 100 (1992), 202–260. https://doi.org/10.1016/0890-5401(92)90013-6 Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. M. Hennessy. 1988. Algebraic Theory of Processes. The MIT Press, Cambridge, Mass..Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Matthew Hennessy. 2017. A Coinductive Equational Characterisation of Trace Inclusion for Regular Processes. In Models, Algorithms, Logics and Tools, L. Aceto, G. Bacci, G. Bacci, A. Ingólfsdóttir, A. Legay, and R. Mardare (Eds.) (Lecture Notes in Computer Science, Vol. 10460). Springer, 449–465. https://doi.org/10.1007/978-3-319-63121-9_22 Google ScholarGoogle ScholarCross RefCross Ref
  25. M. Hennessy and R. Milner. 1985. Algebraic Laws for Nondeterminism and Concurrency. Journal of the ACM, 32 (1985), 137–161.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman. 2006. Introduction to Automata Theory, Languages, and Computation (3rd Edition). Addison-Wesley, Boston, MA, USA. isbn:0321455363Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Bart Jacobs. 2006. Distributive laws for the coinductive solution of recursive equations. Information and Computation, 204, 4 (2006), 561–587. https://doi.org/10.1016/j.ic.2005.03.006 Google ScholarGoogle ScholarCross RefCross Ref
  28. Dexter Kozen. 1994. A Completeness Theorem for Kleene Algebras and the Algebra of Regular Events. Inf. Comput., 110, 2 (1994), 366–390. https://doi.org/10.1006/inco.1994.1037 Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Marina Lenisa. 1999. From Set-theoretic Coinduction to Coalgebraic Coinduction: some results, some problems. Electronical Notes in Computer Science, 19 (1999), 2–22. https://doi.org/10.1016/S1571-0661(05)80265-8 Google ScholarGoogle ScholarCross RefCross Ref
  30. Marina Lenisa, John Power, and Hiroshi Watanabe. 2000. Distributivity for endofunctors, pointed and co-pointed endofunctors, monads and comonads. Electronical Notes in Computer Science, 33 (2000), 230–260. https://doi.org/10.1016/S1571-0661(05)80350-0 Google ScholarGoogle ScholarCross RefCross Ref
  31. S. Milius, L. S. Moss, and D. Schwencke. 2013. Abstract GSOS Rules and a Modular Treatment of Recursive Definitions. Logical Methods in Computer Science, 9, 3 (2013), https://doi.org/10.2168/LMCS-9(3:28)2013 Google ScholarGoogle ScholarCross RefCross Ref
  32. R. Milner. 1989. Communication and Concurrency. Prentice Hall.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Ernst-Rüdiger Olderog and C. A. R. Hoare. 1986. Specification-Oriented Semantics for Communicating Processes. Acta Inf., 23, 1 (1986), 9–66.Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. D. Park. 1981. A New Equivalence notion for Communicating Systems. In Bulletin EATCS, G. Maurer (Ed.). 14, 78–80. Abstract of the talk presented at the Second Workshop on the Semantics of Programming Languages, Bad Honnef, March 16–20 1981. Abstracts collected in the Bulletin by B. MayohGoogle ScholarGoogle Scholar
  35. Joachim Parrow and Tjark Weber. 2016. The Largest Respectful Function. Logical Methods in Computer Science, 12, 2 (2016), https://doi.org/10.2168/LMCS-12(2:11)2016 Google ScholarGoogle ScholarCross RefCross Ref
  36. Iain Phillips. 1987. Refusal Testing. Theor. Comput. Sci., 50 (1987), 241–284. A preliminary version in Proc. ICALP’86, Lecture Notes in Computer Science 226, Springer Verlag.Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. A. Pnueli. 1985. Linear and Branching Structures in the Semantics and Logics of Reactive Systems. In 12th ICALP, W. Brauer (Ed.) (Lecture Notes in Computer Science, Vol. 194). Springer Verlag, 15–32.Google ScholarGoogle Scholar
  38. Lucia Pomello. 1985. Some equivalence notions for concurrent systems. An overview. In Advances in Petri Nets 1985, Grzegorz Rozenberg (Ed.) (Lecture Notes in Computer Science, Vol. 222). Springer, 381–400. isbn:3-540-16480-4 https://doi.org/10.1007/BFb0016202 Google ScholarGoogle ScholarCross RefCross Ref
  39. D. Pous. 2007. Complete Lattices and Up-To Techniques. In Proc. APLAS ’07 (Lecture Notes in Computer Science, Vol. 4807). Springer Verlag, 351–366. http://dx.doi.org/10.1007/978-3-540-76637-7_24 Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Damien Pous. 2016. Coinduction all the way up. In Proc. LICS. ACM, 307–316. https://doi.org/10.1145/2933575.2934564 Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Damien Pous and Jurriaan Rot. 2017. Companions, Codensity, and Causality. In Proc. FoSSaCS (Lecture Notes in Computer Science, Vol. 10203). Springer Verlag, 106–123. https://doi.org/10.1007/978-3-662-54458-7_7 Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Damien Pous and Davide Sangiorgi. 2012. Enhancements of the bisimulation proof method. In Advanced Topics in Bisimulation and Coinduction, Davide Sangiorgi and Jan Rutten (Eds.). Cambridge University Press.Google ScholarGoogle Scholar
  43. Damien Pous and Davide Sangiorgi. 2019. Bisimulation and Coinduction Enhancements: A Historical Perspective. Formal Asp. Comput., 31, 6 (2019), 733–749. https://doi.org/10.1007/s00165-019-00497-w Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Alexander Moshe Rabinovich. 1993. A Complete Axiomatisation for Trace Congruence of Finite State Behaviors. In Proc. 9th MFPS, Stephen D. Brookes, Michael G. Main, Austin Melton, Michael W. Mislove, and David A. Schmidt (Eds.) (Lecture Notes in Computer Science, Vol. 802). Springer, 530–543. https://doi.org/10.1007/3-540-58027-1_25 Google ScholarGoogle ScholarCross RefCross Ref
  45. A. W. Roscoe. 1998. The theory and practice of concurrency. Prentice Hall. isbn:0-13-6774409-5 http://www.cs.ox.ac.uk/people/bill.roscoe/publications/68b.pdfGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  46. Jurriaan Rot, Filippo Bonchi, Marcello M. Bonsangue, Damien Pous, Jan Rutten, and Alexandra Silva. 2017. Enhanced coalgebraic bisimulation. Mathematical Structures in Computer Science, 27, 7 (2017), 1236–1264. https://doi.org/10.1017/S0960129515000523 Google ScholarGoogle ScholarCross RefCross Ref
  47. Jurriaan Rot, Marcello M. Bonsangue, and Jan Rutten. 2016. Proving language inclusion and equivalence by coinduction. Inf. Comput., 246 (2016), 62–76. https://doi.org/10.1016/j.ic.2015.11.009 Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Arto Salomaa. 1966. Two Complete Axiom Systems for the Algebra of Regular Events. J. ACM, 13, 1 (1966), 158–169. https://doi.org/10.1145/321312.321326 Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. D. Sangiorgi. 1998. On the bisimulation proof method. Journal of Mathematical Structures in Computer Science, 8 (1998), 447–479. https://doi.org/10.1017/S0960129598002527 Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Davide Sangiorgi. 2012. Introduction to Bisimulation and Coinduction. Cambridge University Press. https://doi.org/10.1017/CBO9780511777110 Google ScholarGoogle ScholarCross RefCross Ref
  51. Davide Sangiorgi. 2017. Equations, Contractions, and Unique Solutions. ACM Trans. Comput. Log., 18, 1 (2017), 4:1–4:30. https://doi.org/10.1145/2971339 Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. D. Sangiorgi and R. Milner. 1992. The problem of “Weak Bisimulation up to”. In Proc. CONCUR ’92, W.R. Cleveland (Ed.) (Lecture Notes in Computer Science, Vol. 630). Springer Verlag, 32–46. https://doi.org/10.1007/BFb0084781 Google ScholarGoogle ScholarCross RefCross Ref
  53. A. Silva, F. Bonchi, M. Bonsangue, and J. Rutten. 2010. Generalizing the powerset construction, coalgebraically. In FSTTCS (LIPIcs). Schloss Dagstuhl - Leibniz-Zentrum f ür Informatik, 272–283. https://doi.org/10.4230/LIPIcs.FSTTCS.2010.272 Google ScholarGoogle ScholarCross RefCross Ref
  54. Colin Stirling. 2001. Modal and temporal properties of processes. Springer Verlag.Google ScholarGoogle Scholar
  55. Tarmo Uustalu, Varmo Vene, and Alberto Pardo. 2001. Recursion Schemes from Comonads. Nord. J. Comput., 8, 3 (2001), 366–390. http://www.cs.helsinki.fi/njc/References/uustaluvp2001:366.htmlGoogle ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. From enhanced coinduction towards enhanced induction

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Article Metrics

          • Downloads (Last 12 months)102
          • Downloads (Last 6 weeks)12

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!