skip to main content
research-article

The power of parameterization in coinductive proof

Published:23 January 2013Publication History
Skip Abstract Section

Abstract

Coinduction is one of the most basic concepts in computer science. It is therefore surprising that the commonly-known lattice-theoretic accounts of the principles underlying coinductive proofs are lacking in two key respects: they do not support compositional reasoning (i.e. breaking proofs into separate pieces that can be developed in isolation), and they do not support incremental reasoning (i.e. developing proofs interactively by starting from the goal and generalizing the coinduction hypothesis repeatedly as necessary).

In this paper, we show how to support coinductive proofs that are both compositional and incremental, using a dead simple construction we call the parameterized greatest fixed point. The basic idea is to parameterize the greatest fixed point of interest over the accumulated knowledge of "the proof so far". While this idea has been proposed before, by Winskel in 1989 and by Moss in 2001, neither of the previous accounts suggests its general applicability to improving the state of the art in interactive coinductive proof.

In addition to presenting the lattice-theoretic foundations of parameterized coinduction, demonstrating its utility on representative examples, and studying its composition with "up-to" techniques, we also explore its mechanization in proof assistants like Coq and Isabelle. Unlike traditional approaches to mechanizing coinduction (e.g. Coq's cofix), which employ syntactic "guardedness checking", parameterized coinduction offers a semantic account of guardedness. This leads to faster and more robust proof development, as we demonstrate using our new Coq library, Paco.

Skip Supplemental Material Section

Supplemental Material

r2d1_talk6.mp4

References

  1. H. R. Andersen, C. Stirling, and G. Winskel. A compositional proof system for the modal μ-calculus. In LICS, pages 144--153. IEEE Computer Society, 1994.Google ScholarGoogle ScholarCross RefCross Ref
  2. G. Barthe, M. J. Frade, E. Giménez, L. Pinto, and T. Uustalu. Type-based termination of recursive definitions. Mathematical Structures in Comp. Sci., 14(1):97--141, Feb. 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. E. Giménez. Codifying guarded definitions with recursive schemes. In Types for Proofs and Programs, volume 996 of LNCS, pages 39--59. Springer, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. A. D. Gordon. Bisimilarity as a theory of functional programming. Theoretical Computer Science, 228(1--2):5--47, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. D. Hausmann, T. Mossakowski, and L. Schroeder. Iterative circular coinduction for CoCasl in Isabelle/HOL. In FASE, volume 3442 of LNCS, pages 341--356. Springer, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. C.-K. Hur. Heq: a Coq library for heterogeneous equality, 2010. Presented at Coq-2 workshop.Google ScholarGoogle Scholar
  7. C.-K. Hur, D. Dreyer, G. Neis, and V. Vafeiadis. The marriage of bisimulations and Kripke logical relations. In POPL, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. C. B. Jones. Specification and design of (parallel) programs. In IFIP Congress, pages 321--332, 1983.Google ScholarGoogle Scholar
  9. D. Kozen. Results on the propositional μ-calculus. Theor. Comput. Sci., 27:333--354, 1983.Google ScholarGoogle ScholarCross RefCross Ref
  10. K. G. Larsen. Proof systems for Hennessy-Milner logic with recursion. In CAAP, volume 299 of LNCS, pages 215--230. Springer, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. R. Matthes. Recursion on nested datatypes in dependent type theory. In Computability in Europe (CiE), volume 5028 of LNCS, pages 431--446. Springer, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. N. P. Mendler. Inductive types and type constraints in the second-order lambda calculus. Annals of Pure and Applied Logic, 51(1--2):159 -- 172, 1991.Google ScholarGoogle Scholar
  13. R. Milner. Communicating and Mobile Systems: The Pi-Calculus. Cambridge University Press, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. L. S. Moss. Parametric corecursion. Theor. Comput. Sci., 260(1--2):139--163, June 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. S. S. Owicki and D. Gries. An axiomatic proof technique for parallel programs. Acta Informatica, 6:319--340, 1976.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. A. Popescu and E. L. Gunter. Incremental pattern-based coinduction for process algebra and its Isabelle formalization. In FOSSACS, pages 109--127, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. D. Sangiorgi. On the bisimulation proof method. Mathematical Structures in Comp. Sci., 8(5):447--479, Oct. 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. D. Sangiorgi. Introduction to Bisimulation and Coinduction. Cambridge University Press, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. D. Sangiorgi and J. Rutten. Advanced Topics in Bisimulation and Coinduction. Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. J. Ševčík, V. Vafeiadis, F. Zappa Nardelli, S. Jagannathan, and P. Sewell. Relaxed-memory concurrency and verified compilation. In POPL, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. C. Stirling and D. Walker. Local model checking in the modal mu-calculus. In TAPSOFT, Vol.1 (CAAP), volume 351 of LNCS, pages 369--383. Springer, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. A. Tarski. A lattice-theoretical fixpoint theorem and its applications. Pacific J. Math., 5(2):285--309, 1955.Google ScholarGoogle ScholarCross RefCross Ref
  23. G. Winskel. A note on model checking the modal ν-calculus. In ICALP, volume 372 of LNCS, pages 761--772. Springer, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The power of parameterization in coinductive proof

          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

          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!