tag:blogger.com,1999:blog-11295132.post1797157221719257594..comments2019-02-21T03:59:37.273-08:00Comments on A Neighborhood of Infinity: Cofree meets FreeDan Piponihttps://plus.google.com/107913314994758123748noreply@blogger.comBlogger8125tag:blogger.com,1999:blog-11295132.post-15120761187380541442014-09-22T06:55:19.894-07:002014-09-22T06:55:19.894-07:00This comment has been removed by the author.Nicolashttps://www.blogger.com/profile/03434148024010872285noreply@blogger.comtag:blogger.com,1999:blog-11295132.post-43473373698028173682014-05-24T18:42:43.912-07:002014-05-24T18:42:43.912-07:00Sjoerd:
There are also
instance (Zap f g, Zap h...Sjoerd: <br /><br />There are also<br /><br />instance (Zap f g, Zap h i) => Pairing (Sum f h) (Product g i)<br />instance (Zap f g, Zap h i) => Pairing (Product g i) (Sum f h) <br /><br />which aren't simply instances of the only Hask->Hask adjunction in disguise and which swaps sums for products.<br /><br />But even that first 'intertwining' leads to whole families of such twistings, e.g. StateT vs. StoreT should give rise to something like:<br /><br />instance Pairing m w => Pairing (StateT m s) (StoreT w s)<br />and vice versa.Edward Kmetthttps://www.blogger.com/profile/16144424873202502715noreply@blogger.comtag:blogger.com,1999:blog-11295132.post-29446121059929783652014-05-24T10:47:53.727-07:002014-05-24T10:47:53.727-07:00The only instance that is a Pairing but not an Adj...The only instance that is a Pairing but not an Adjunction that I can think of is where you have two adjunctions intertwined, i.e. <br /><br />instance (Adjunction f1 g1, Adjunction f2 g2) => Pairing (Compose f1 g2) (Compose f2 g1)<br /><br />Are there others?Sjoerd Visscherhttps://www.blogger.com/profile/10698430967044536619noreply@blogger.comtag:blogger.com,1999:blog-11295132.post-40352664986437610572014-05-24T08:46:10.537-07:002014-05-24T08:46:10.537-07:00@Unknown That's why I linked to Ed's page ...@Unknown That's why I linked to Ed's page about Co :-)<br /><br />It's a special case of that relationship. But I think it's nice to unpack it for free monads and cofree comonads because they give a lot of insight into what's happening more generally.Dan Piponihttps://www.blogger.com/profile/08096190433222340957noreply@blogger.comtag:blogger.com,1999:blog-11295132.post-64469639872388529072014-05-24T08:41:45.234-07:002014-05-24T08:41:45.234-07:00The relationship between Pairing functors looks a ...The relationship between Pairing functors looks a lot like the relationship between `w` and `Co w`.Unknownhttps://www.blogger.com/profile/14672014719215202718noreply@blogger.comtag:blogger.com,1999:blog-11295132.post-45650143103805982212014-05-24T07:35:56.821-07:002014-05-24T07:35:56.821-07:00@heisenbug Yeah, I know about those papers because...@heisenbug Yeah, I know about those papers because I followed their unfolding at the n-category cafe. But I think coalgebras may add a twist. I think random processes are nicely described coalgebraically but the decisions tree driven by such processes are nicely thought of as algebraic.Dan Piponihttps://www.blogger.com/profile/08096190433222340957noreply@blogger.comtag:blogger.com,1999:blog-11295132.post-61482282613207984302014-05-24T07:08:21.612-07:002014-05-24T07:08:21.612-07:00A quick search revealed this paper: http://math.uc...A quick search revealed this paper: http://math.ucr.edu/home/baez/information_loss.pdfheisenbughttps://www.blogger.com/profile/11328338875953258337noreply@blogger.comtag:blogger.com,1999:blog-11295132.post-2044919809222889802014-05-23T22:43:10.955-07:002014-05-23T22:43:10.955-07:00I used to have a version of your Pairing class in ...I used to have a version of your Pairing class in an earlier version of the adjunctions package, under the less informative name 'Zap'.<br /><br />http://comonad.com/reader/2008/zapping-strong-adjunctions/<br /><br />I general it is just about asking for a sum from one of the types whenever the other is a product and vice versa and it can annihilate values with functions from that value <br /><br />The problem I had with it as a class was that both<br /><br />instance Adjunction f g => Zap f g<br />instance Adjunction f g => Zap g f<br /><br />are reasonable.<br /><br />This caused me to eventually switch it over to a data type carrying the mapping:<br /><br />http://hackage.haskell.org/package/adjunctions-0.6.0/docs/Data-Functor-Zap.html<br /><br />But with very few users I eventually dropped the feature; I think only Sjoerd Visscher ever noticed it was there. ;)<br /><br />I could reintroduce it without the automated lifting from Adjunction if folks are interested.Edward Kmetthttps://www.blogger.com/profile/16144424873202502715noreply@blogger.com