{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,16]],"date-time":"2026-04-16T05:20:58Z","timestamp":1776316858534,"version":"3.50.1"},"reference-count":0,"publisher":"Centre pour la Communication Scientifique Directe (CCSD)","license":[{"start":{"date-parts":[[2022,1,19]],"date-time":"2022-01-19T00:00:00Z","timestamp":1642550400000},"content-version":"unspecified","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"abstract":"<jats:p>Monads are commonplace in computer science, and can be composed using Beck's\ndistributive laws. Unfortunately, finding distributive laws can be extremely\ndifficult and error-prone. The literature contains some general principles for\nconstructing distributive laws. However, until now there have been no such\ntechniques for establishing when no distributive law exists.\n  We present three families of theorems for showing when there can be no\ndistributive law between two monads. The first widely generalizes a\ncounterexample attributed to Plotkin. It covers all the previous known no-go\nresults for specific pairs of monads, and includes many new results. The second\nand third families are entirely novel, encompassing various new practical\nsituations. For example, they negatively resolve the open question of whether\nthe list monad distributes over itself, reveal a previously unobserved error in\nthe literature, and confirm a conjecture made by Beck himself in his first\npaper on distributive laws. In addition, we establish conditions under which\nthere can be at most one possible distributive law between two monads, proving\nvarious known distributive laws to be unique.<\/jats:p>","DOI":"10.46298\/lmcs-18(1:13)2022","type":"journal-article","created":{"date-parts":[[2022,1,19]],"date-time":"2022-01-19T20:54:17Z","timestamp":1642625657000},"source":"Crossref","is-referenced-by-count":7,"title":["No-Go Theorems for Distributive Laws"],"prefix":"10.46298","volume":"Volume 18, Issue 1","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-0257-1574","authenticated-orcid":false,"given":"Maaike","family":"Zwart","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Dan","family":"Marsden","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"25203","published-online":{"date-parts":[[2022,1,19]]},"container-title":["Logical Methods in Computer Science"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/lmcs.episciences.org\/8973\/pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/lmcs.episciences.org\/8973\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,6,20]],"date-time":"2023-06-20T20:17:41Z","timestamp":1687292261000},"score":1,"resource":{"primary":{"URL":"https:\/\/lmcs.episciences.org\/6253"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,1,19]]},"references-count":0,"URL":"https:\/\/doi.org\/10.46298\/lmcs-18(1:13)2022","relation":{"has-preprint":[{"id-type":"arxiv","id":"2003.12531v3","asserted-by":"subject"},{"id-type":"arxiv","id":"2003.12531v2","asserted-by":"subject"},{"id-type":"arxiv","id":"2003.12531v1","asserted-by":"subject"}],"is-same-as":[{"id-type":"arxiv","id":"2003.12531","asserted-by":"subject"},{"id-type":"doi","id":"10.48550\/arXiv.2003.12531","asserted-by":"subject"}]},"ISSN":["1860-5974"],"issn-type":[{"value":"1860-5974","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,1,19]]},"article-number":"6253"}}