skip to main content
research-article

Equations, Contractions, and Unique Solutions

Published:16 March 2017Publication History
Skip Abstract Section

Abstract

One of the most studied behavioural equivalences is bisimilarity. Its success is much due to the associated bisimulation proof method, which can be further enhanced by means of “bisimulation up-to” techniques such as “up-to context.”

A different proof method is discussed, based on a unique solution of special forms of inequations called contractions and inspired by Milner’s theorem on unique solution of equations. The method is as powerful as the bisimulation proof method and its “up-to context” enhancements. The definition of contraction can be transferred onto other behavioural equivalences, possibly contextual and non-coinductive. This enables a coinductive reasoning style on such equivalences, either by applying the method based on unique solution of contractions or by injecting appropriate contraction preorders into the bisimulation game.

The techniques are illustrated in CCS-like languages; an example dealing with higher-order languages is also shown.

References

  1. Dean N. Arden. 1961. Delayed-logic and finite-state machines. In Proc. 2nd Annual Symposium on Switching Circuit Theory and Logical Design. IEEE Computer Society, 133--151. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. S. Arun-Kumar and M. Hennessy. 1992. An efficiency preorder for processes. Acta Inform. 29 (1992), 737--760. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. J. C. M. Baeten, T. Basten, and M. A. Reniers. 2010. Process Algebra: Equational Theories of Communicating Processes. Cambridge University Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 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
  5. Jos C. M. Baeten and Bas Luttik. 2011. Unguardedness mostly means many solutions. Theor. Comput. Sci. 412, 28 (2011), 3090--3100.Google ScholarGoogle ScholarCross RefCross Ref
  6. B. Bloom, S. Istrail, and A. R. Meyer. 1995. Bisimulation can’t be traced. J. ACM 42, 1 (1995), 232--268. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Filippo Bonchi, Fabio Gadducci, and Giacoma Valentina Monreale. 2014a. A general theory of barbs, contexts, and labels. ACM Trans. Comput. Log. 15, 4 (2014), 35:1--35:27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Filippo Bonchi, Daniela Petrisan, Damien Pous, and Jurriaan Rot. 2014b. Coinduction up to in a fibrational setting. In Proc. CSL-LICS'14, Thomas A. Henzinger and Dale Miller (Eds.). ACM, 20:1--20:9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. 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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Rance Cleaveland and Matthew Hennessy. 1993. Testing equivalence as a bisimulation equivalence. Formal Asp. Comput. 5, 1 (1993), 1--20.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. R. De Nicola and R. Hennessy. 1984. Testing equivalences for processes. Theor. Comput. Sci. 34 (1984), 83--133.Google ScholarGoogle ScholarCross RefCross Ref
  12. 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 (1993). Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 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.Google ScholarGoogle Scholar
  14. J. F. Groote and F. W. Vaandrager. 1992. Structured operational semantics and bisimulation as a congruence. Inform. Comput. 100 (1992), 202--260. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C. A. R. Hoare. 1985. Communicating Sequential Processes. Prentice Hall. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. K. Honda and N. Yoshida. 1995. On reduction-based process semantics. Theor. Comput. Sci. 152, 2 (1995), 437--486. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman. 2006. Introduction to Automata Theory, Languages, and Computation (3rd Edition). Addison-Wesley, Boston, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. G. Hutton and M. Jaskelioff. 2011. Representing Contractive Functions on Streams. (2011).Google ScholarGoogle Scholar
  19. Vassileios Koutavas and Mitchell Wand. 2006. Small bisimulations for reasoning about higher-order imperative programs. In Proc. 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. 141--152. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Michal Kunc. 2005. Simple language equations. Bull. EATCS 85 (2005), 81--102.Google ScholarGoogle Scholar
  21. S. B. Lassen. 1998. Relational reasoning about contexts. In Higher-order Operational Techniques in Semantics. Cambridge University Press, 91--135. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. S. B. Lassen. 1999. Bisimulation in untyped lambda calculus: Böhm trees and bisimulation up to context. Electr. Notes Theor. Comput. Sci. 20 (1999), 346--374.Google ScholarGoogle ScholarCross RefCross Ref
  23. S. Milius, L.&Stilde;. Moss, and D. Schwencke. 2013. Abstract GSOS rules and a modular treatment of recursive definitions. Logical Methods Comput. Sci. 9, 3 (2013).Google ScholarGoogle Scholar
  24. R. Milner. 1989a. Communication and Concurrency. Prentice Hall. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Robin Milner. 1989b. A complete axiomatisation for observational congruence of finite-state behaviors. Inf. Comput. 81, 2 (1989), 227--247. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. R. Milner and D. Sangiorgi. 1992. Barbed bisimulation. In Proc. 19th ICALP (Lecture Notes in Computer Science), W. Kuich (Ed.), Vol. 623. Springer Verlag, 685--695. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. James H. Morris. Dec. 1968. Lambda-Calculus Models of Programming Languages. Ph.D. thesis MAC-TR-57. M.I.T., project MAC.Google ScholarGoogle Scholar
  28. V. Natarajan and Rance Cleaveland. 1995. Divergence and fair testing. In Proc. ICALP’95 (Lecture Notes in Computer Science), Vol. 944. Springer Verlag, 648--659. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Ion Petre and Arto Salomaa. 2009. Algebraic systems and pushdown automata. In Handbook of Weighted Automata. Springer, 257--289.Google ScholarGoogle Scholar
  30. Adrien Piérard and Eijiro Sumii. 2011. Sound bisimulations for higher-order distributed process calculus. In Proc. FOSSACS (Lecture Notes in Computer Science), Martin Hofmann (Ed.), Vol. 6604. Springer, 123--137. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Andrew Pitts. 2012. Howe’s method. In Advanced Topics in Bisimulation and Coinduction, Davide Sangiorgi and Jan Rutten (Eds.). Cambridge University Press.Google ScholarGoogle Scholar
  32. 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
  33. Alexander Moshe Rabinovich. 1993. A complete axiomatisation for trace congruence of finite state behaviors. In Proc. 9th MFPS (Lecture Notes in Computer Science), Stephen D. Brookes, Michael G. Main, Austin Melton, Michael W. Mislove, and David A. Schmidt (Eds.), Vol. 802. Springer, 530--543. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Arend Rensink and Walter Volger. 2007. Fair testing. Inform. Comput. 205 (2007), 125--198. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. A. W. Roscoe. 1998. The Theory and Practice of Concurrency. Prentice Hall. Retrieved from http://www.cs.ox.ac.uk/people/bill.roscoe/publications/68b.pdf. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. A. W. Roscoe. 2010. Understanding Concurrent Systems. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Jurriaan Rot, Marcello M. Bonsangue, and Jan J. M. M. Rutten. 2013. Coinductive proof techniques for language equivalence. In Proc. LATA (Lecture Notes in Computer Science), Adrian Horia Dediu, Carlos Martín-Vide, and Bianca Truthe (Eds.), Vol. 7810. Springer, 480--492.Google ScholarGoogle Scholar
  38. David Sands. 1998. Computing with contexts: A simple approach. Electron. Not. Theor. Comput. Sci. 10, C (1998), 134--149. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. D. Sangiorgi. 1994. Locality and true-concurrency in calculi for mobile processes. In TACS’94 (Lecture Notes in Computer Science), Vol. 789. Springer, 405--424. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Davide Sangiorgi, Naoki Kobayashi, and Eijiro Sumii. 2011. Environmental bisimulations for higher-order languages. ACM Trans. Program. Lang. Syst. 33, 1 (2011), 5. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. D. Sangiorgi and R. Milner. 1992. The problem of “weak bisimulation up to”. In Proc. CONCUR’92 (Lecture Notes in Computer Science), W. R. Cleveland (Ed.), Vol. 630. Springer Verlag, 32--46. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. D. Sangiorgi and D. Walker. 2001. The π-Calculus: A Theory of Mobile Processes. Cambridge University Press. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Equations, Contractions, and Unique Solutions

        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

        • Published in

          cover image ACM Transactions on Computational Logic
          ACM Transactions on Computational Logic  Volume 18, Issue 1
          January 2017
          277 pages
          ISSN:1529-3785
          EISSN:1557-945X
          DOI:10.1145/3041822
          • Editor:
          • Orna Kupferman
          Issue’s Table of Contents

          Copyright © 2017 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 16 March 2017
          • Accepted: 1 June 2016
          • Received: 1 January 2016
          Published in tocl Volume 18, Issue 1

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader