@Article{milner-coind,
author = "Robin Milner and Mads Tofte",
title = "Co-induction in Relational Semantics",
journal = TCS,
year = 1991,
volume = 87,
pages = "209--220"}
It involves proving the consistency of the dynamic and static semantics for a small functional language. A codatatype definition specifies values and value environments in mutual recursion: non-well-founded values represent recursive functions; value environments are variant functions from variables into values.
Frost's report describes this development.