[Haskell-cafe] There can be only one fix? Pondering Bekic's lemma

Levent Erkok erkokl at gmail.com
Wed Mar 21 00:18:24 EDT 2007


On 3/19/07, Nicolas Frisby <nicolas.frisby at gmail.com> wrote:
>
> Nope, but I believe the two are equipotent. This usage of "believe" is
> one of those "I think I remember reading it somewhere" usages.
>
> On 3/19/07, Henning Thielemann <lemming at henning-thielemann.de> wrote:
> >
> > On Sat, 17 Mar 2007, Nicolas Frisby wrote:
> >
> > > Bekic's lemma [1], allows us to transform nested fixed points into a
> > > single fixed point, such as:
> > >
> > > fix (\x -> fix (\y -> f (x, y))) = fix f     where f :: (a, a) -> a
> >
> > The 'fix' on the right hand side is not the standard one (e.g.
> > Control.Monad.Fix), is it?


Yes, it is the standard "fix". The Bekic lemma actually reads:

     fix (\x -> fix (\y -> f (x, y))) = fix (\x -> f (x, x))

which should explain the confusion here.

-Levent.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20070320/a3240f12/attachment.htm


More information about the Haskell-Cafe mailing list