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.
Supplemental Material
Available for Download
This document contains appendixes for the paper "From Enhanced Coinduction towards Enhanced Induction", presented at POPL'22.
- 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 Scholar
Digital Library
- F. Bartels. 2003. Generalised Coinduction. Math. Struct. in Computer Science, 13, 2 (2003), 321–348. https://doi.org/10.1017/S0960129502003900 Google Scholar
Digital Library
- F. Bartels. 2004. On generalised coinduction and probabilistic specification formats. Ph. D. Dissertation. CWI, Amsterdam.Google Scholar
- 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 Scholar
Cross Ref
- 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 Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- R. De Nicola and R. Hennessy. 1984. Testing Equivalences for Processes. Theoretical Computer Science, 34 (1984), 83–133.Google Scholar
Cross Ref
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- M. Hennessy. 1988. Algebraic Theory of Processes. The MIT Press, Cambridge, Mass..Google Scholar
Digital Library
- 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 Scholar
Cross Ref
- M. Hennessy and R. Milner. 1985. Algebraic Laws for Nondeterminism and Concurrency. Journal of the ACM, 32 (1985), 137–161.Google Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Cross Ref
- 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 Scholar
Cross Ref
- R. Milner. 1989. Communication and Concurrency. Prentice Hall.Google Scholar
Digital Library
- Ernst-Rüdiger Olderog and C. A. R. Hoare. 1986. Specification-Oriented Semantics for Communicating Processes. Acta Inf., 23, 1 (1986), 9–66.Google Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- Damien Pous. 2016. Coinduction all the way up. In Proc. LICS. ACM, 307–316. https://doi.org/10.1145/2933575.2934564 Google Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- Davide Sangiorgi. 2012. Introduction to Bisimulation and Coinduction. Cambridge University Press. https://doi.org/10.1017/CBO9780511777110 Google Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Cross Ref
- Colin Stirling. 2001. Modal and temporal properties of processes. Springer Verlag.Google Scholar
- 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 Scholar
Digital Library
Index Terms
From enhanced coinduction towards enhanced induction
Recommendations
Coinduction inductively: mechanizing coinductive proofs in Liquid Haskell
Haskell 2022: Proceedings of the 15th ACM SIGPLAN International Haskell SymposiumLiquid Haskell is an inductive verifier that cannot reason about codata. In this work we present two alternative approaches, namely indexed and constructive coinduction, to consistently encode coinductive proofs in Liquid Haskell. The ...
An equational theory for weak bisimulation via generalized parameterized coinduction
CPP 2020: Proceedings of the 9th ACM SIGPLAN International Conference on Certified Programs and ProofsCoinductive reasoning about infinitary structures such as streams is widely applicable. However, practical frameworks for developing coinductive proofs and finding reasoning principles that help structure such proofs remain a challenge, especially in ...
Coinduction All the Way Up
LICS '16: Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer ScienceWe revisit coinductive proof principles from a lattice theoretic point of view. By associating to any monotone function a function which we call the companion, we give a new presentation of both Knaster-Tarski's seminal result, and of the more recent ...






Comments