Generalised coinduction

  • Authors:
  • Falk Bartels

  • Affiliations:
  • CWI, P.O. Box 94079, 1090 GB Amsterdam, The Netherlands (http://www.cwi.nl/~bartels/)

  • Venue:
  • Mathematical Structures in Computer Science
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

We introduce the $\lambda-coiteration$ schema for a distributive law $\lambda$ of a functor $\Functor{T}$ over a functor $\Functor{F}$. Parameterised by $\Functor{T}$ and $\lambda$ it generalises the basic coiteration schema uniquely characterising functions into a final $\Functor{F}$-coalgebra. Furthermore, the same parameters are used to generalise the categorical notion of a bisimulation to that of a $\lambda-bisimulation$, while still giving rise to a proof technique for bisimilarity. We first present a theorem showing the validity of the resulting definition and proof principles for categories with countable coproducts.Our approach gives a unifying categorical presentation and justification of several extensions of the basic coinduction schemata that have been treated separately before, and some only for specific types of system. As examples, the duals of primitive recursion and course-of-value iteration, which are known extensions of coiteration, arise as instances of our framework.Moreover, we derive schemata involving auxiliary operators definable with GSOS-style specifications such as addition of streams, regular operators on languages, or parallel and sequential composition of processes. The argument is based on a variation of the theory in the setting of monads and copointed functors. The schemata justify guarded recursive definitions and an up-to-context proof technique for operators of the type mentioned. The latter can ease bisimilarity proofs considerably.