Results 1 -
2 of
2
A Tutorial on Co-induction and Functional Programming
- IN GLASGOW FUNCTIONAL PROGRAMMING WORKSHOP
, 1994
"... Co-induction is an important tool for reasoning about unbounded structures. This tutorial explains the foundations of co-induction, and shows how it justifies intuitive arguments about lazy streams, of central importance to lazy functional programmers. We explain from first principles a theory based ..."
Abstract
-
Cited by 24 (1 self)
- Add to MetaCart
Co-induction is an important tool for reasoning about unbounded structures. This tutorial explains the foundations of co-induction, and shows how it justifies intuitive arguments about lazy streams, of central importance to lazy functional programmers. We explain from first principles a theory based on a new formulation of bisimilarity for functional programs, which coincides exactly with Morris-style contextual equivalence. We show how to prove properties of lazy streams by co-induction and derive Bird and Wadler's Take Lemma, a well-known proof technique for lazy streams.
Conferences
"... relation algebras have the boolean operations on binary relations (regarded as sets of pairs), and also composition, converse, and a constant for identity (equality). Their basic theory is more intricate than that of boolean algebras, as no finite set of axioms isolates the relation algebras corresp ..."
Abstract
- Add to MetaCart
relation algebras have the boolean operations on binary relations (regarded as sets of pairs), and also composition, converse, and a constant for identity (equality). Their basic theory is more intricate than that of boolean algebras, as no finite set of axioms isolates the relation algebras corresponding to genuine fields of binary relations. In fact, a central problem of the area (for `cylindric algebras', due to Henkin, Monk, and Tarski) is to find a `simple intrinsic characterization' for these `representable' relation algebras. In joint work with Robin Hirsch, there has been developed what we believe is a new approach to this problem, using model-theoretic forcing by games. It attempts to construct a field of binary relations for a given relation algebra. The conditions for success can be easily expressed by first-order axioms, and so we obtain our characterisation. The proofs are much simpler than those used in previous characterisations. Moreover, the method generalises easily ...

