@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.