On Sun, 2009-01-25 at 07:11 -0800, Jonathan Cast wrote: > On Sun, 2009-01-25 at 10:46 +0100, Thomas Davie wrote: > > On 25 Jan 2009, at 10:08, Daniel Fischer wrote: > > > > > Am Sonntag, 25. Januar 2009 00:55 schrieb Conal Elliott: > > >>> It's obvious because () is a defined value, while bottom is not - > > >>> per > > >>> definitionem. > > >> > > >> I wonder if this argument is circular. > > >> > > >> I'm not aware of "defined" and "not defined" as more than informal > > >> terms. > > > > > > They are informal. I could've written one is a terminating > > > computation while > > > the other is not. > > > > Is that a problem when trying to find the least defined element of a > > set of terminating computations? > > Yes. If you've got a set of terminating computations, and it has > multiple distinct elements, it generally doesn't *have* a least element. > The P in CPO stands for Partial.
Yes, "partial" as in "partial order" (v. total order or preorder) not as in partiality. It's actually the "complete" part that indicates the existence of a least element, pretty much by definition. A cpo is a dcpo (directed complete partial order) with a least element, though sometimes "cpo" is used for "dcpo" in which case a least element is not guaranteed. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe