When is a container a comonad?

Abbott, Altenkirch, Ghani and others have taught us that many parameterized datatypes (set functors) can be usefully analyzed via container representations in terms of a set of shapes and a set of positions in each shape. This paper builds on the observation that datatypes often carry additional str...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:Logical methods in computer science Ročník 10, Issue 3
Hlavní autoři: Ahman, Danel, Chapman, James, Uustalu, Tarmo
Médium: Journal Article
Jazyk:angličtina
Vydáno: Logical Methods in Computer Science e.V 03.09.2014
Témata:
ISSN:1860-5974, 1860-5974
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Abstract Abbott, Altenkirch, Ghani and others have taught us that many parameterized datatypes (set functors) can be usefully analyzed via container representations in terms of a set of shapes and a set of positions in each shape. This paper builds on the observation that datatypes often carry additional structure that containers alone do not account for. We introduce directed containers to capture the common situation where every position in a data-structure determines another data-structure, informally, the sub-data-structure rooted by that position. Some natural examples are non-empty lists and node-labelled trees, and data-structures with a designated position (zippers). While containers denote set functors via a fully-faithful functor, directed containers interpret fully-faithfully into comonads. But more is true: every comonad whose underlying functor is a container is represented by a directed container. In fact, directed containers are the same as containers that are comonads. We also describe some constructions of directed containers. We have formalized our development in the dependently typed programming language Agda.
AbstractList Abbott, Altenkirch, Ghani and others have taught us that many parameterized datatypes (set functors) can be usefully analyzed via container representations in terms of a set of shapes and a set of positions in each shape. This paper builds on the observation that datatypes often carry additional structure that containers alone do not account for. We introduce directed containers to capture the common situation where every position in a data-structure determines another data-structure, informally, the sub-data-structure rooted by that position. Some natural examples are non-empty lists and node-labelled trees, and data-structures with a designated position (zippers). While containers denote set functors via a fully-faithful functor, directed containers interpret fully-faithfully into comonads. But more is true: every comonad whose underlying functor is a container is represented by a directed container. In fact, directed containers are the same as containers that are comonads. We also describe some constructions of directed containers. We have formalized our development in the dependently typed programming language Agda.
Abbott, Altenkirch, Ghani and others have taught us that many parameterized datatypes (set functors) can be usefully analyzed via container representations in terms of a set of shapes and a set of positions in each shape. This paper builds on the observation that datatypes often carry additional structure that containers alone do not account for. We introduce directed containers to capture the common situation where every position in a data-structure determines another data-structure, informally, the sub-data-structure rooted by that position. Some natural examples are non-empty lists and node-labelled trees, and data-structures with a designated position (zippers). While containers denote set functors via a fully-faithful functor, directed containers interpret fully-faithfully into comonads. But more is true: every comonad whose underlying functor is a container is represented by a directed container. In fact, directed containers are the same as containers that are comonads. We also describe some constructions of directed containers. We have formalized our development in the dependently typed programming language Agda.
Author Ahman, Danel
Chapman, James
Uustalu, Tarmo
Author_xml – sequence: 1
  givenname: Danel
  orcidid: 0000-0001-6595-2756
  surname: Ahman
  fullname: Ahman, Danel
– sequence: 2
  givenname: James
  orcidid: 0000-0001-9036-8252
  surname: Chapman
  fullname: Chapman, James
– sequence: 3
  givenname: Tarmo
  orcidid: 0000-0002-1297-0579
  surname: Uustalu
  fullname: Uustalu, Tarmo
BookMark eNp9kMtKAzEUhoNUsNY-gBvpUhejSU46mbgRKV4KIy5UXIbcjqa0E8nMxrd3phURF57NucD_HfgOyahJTSDkmNFzzsrqon5YPBWMnsIlE2ecMrFHxqwqaTFXUox-zQdk2rYr2hcAq3g5Jiev76GZxXZmZi41nYlNyNt5kxrjr47IPpp1G6bffUJebm-eF_dF_Xi3XFzXhYO56AphpVToUJZiLhCELUtJ0bugPOcKeWUZFxYRoAqAGAxDrrxV3ktQIA1MyHLH9cms9EeOG5M_dTJRbw8pv2mTu-jWQVtJg2NVUBSNMP0LGwCQ-RIpKCltz2I7lsupbXPAHx6jevClB1_DApoJPfjqM_JPxsXOdLFXkk1c_5P8Al4wcEo
CitedBy_id crossref_primary_10_1017_S0960129517000184
crossref_primary_10_1016_j_entcs_2014_10_003
crossref_primary_10_1145_3158095
ContentType Journal Article
DBID AAYXX
CITATION
DOA
DOI 10.2168/LMCS-10(3:14)2014
DatabaseName CrossRef
DOAJ Directory of Open Access Journals
DatabaseTitle CrossRef
DatabaseTitleList
CrossRef
Database_xml – sequence: 1
  dbid: DOA
  name: DOAJ Directory of Open Access Journals
  url: https://www.doaj.org/
  sourceTypes: Open Website
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1860-5974
ExternalDocumentID oai_doaj_org_article_b70ec18e90fa4ace9be33f1d6f03977b
10_2168_LMCS_10_3_14_2014
GroupedDBID .4S
.DC
29L
2WC
5GY
5VS
AAFWJ
AAYXX
ADBBV
ADMLS
ADQAK
AENEX
AFPKN
ALMA_UNASSIGNED_HOLDINGS
ARCSS
BCNDV
CITATION
EBS
EJD
FRP
GROUPED_DOAJ
J9A
KQ8
MK~
ML~
M~E
OK1
OVT
P2P
TR2
TUS
XSB
ID FETCH-LOGICAL-c354t-4b779fcf76454f34b6670fdce9d229f28b124bff338e3ffea1f29db9dd73937a3
IEDL.DBID DOA
ISICitedReferencesCount 13
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000347714800024&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 1860-5974
IngestDate Fri Oct 03 12:51:19 EDT 2025
Tue Nov 18 21:52:30 EST 2025
Sat Nov 29 06:21:51 EST 2025
IsDoiOpenAccess true
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Language English
License https://arxiv.org/licenses/nonexclusive-distrib/1.0
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c354t-4b779fcf76454f34b6670fdce9d229f28b124bff338e3ffea1f29db9dd73937a3
ORCID 0000-0002-1297-0579
0000-0001-9036-8252
0000-0001-6595-2756
OpenAccessLink https://doaj.org/article/b70ec18e90fa4ace9be33f1d6f03977b
ParticipantIDs doaj_primary_oai_doaj_org_article_b70ec18e90fa4ace9be33f1d6f03977b
crossref_primary_10_2168_LMCS_10_3_14_2014
crossref_citationtrail_10_2168_LMCS_10_3_14_2014
PublicationCentury 2000
PublicationDate 2014-09-03
PublicationDateYYYYMMDD 2014-09-03
PublicationDate_xml – month: 09
  year: 2014
  text: 2014-09-03
  day: 03
PublicationDecade 2010
PublicationTitle Logical methods in computer science
PublicationYear 2014
Publisher Logical Methods in Computer Science e.V
Publisher_xml – name: Logical Methods in Computer Science e.V
References 818:not-found
References_xml – ident: 818:not-found
SSID ssj0000331826
Score 2.0932417
Snippet Abbott, Altenkirch, Ghani and others have taught us that many parameterized datatypes (set functors) can be usefully analyzed via container representations in...
Abbott, Altenkirch, Ghani and others have taught us that many parameterized datatypes (set functors) can be usefully analyzed via container representations in...
SourceID doaj
crossref
SourceType Open Website
Enrichment Source
Index Database
SubjectTerms computer science - logic in computer science
computer science - programming languages
mathematics - category theory
Title When is a container a comonad?
URI https://doaj.org/article/b70ec18e90fa4ace9be33f1d6f03977b
Volume 10, Issue 3
WOSCitedRecordID wos000347714800024&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVAON
  databaseName: DOAJ Directory of Open Access Journals
  customDbUrl:
  eissn: 1860-5974
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0000331826
  issn: 1860-5974
  databaseCode: DOA
  dateStart: 20040101
  isFulltext: true
  titleUrlDefault: https://www.doaj.org/
  providerName: Directory of Open Access Journals
– providerCode: PRVHPJ
  databaseName: ROAD: Directory of Open Access Scholarly Resources
  customDbUrl:
  eissn: 1860-5974
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0000331826
  issn: 1860-5974
  databaseCode: M~E
  dateStart: 20040101
  isFulltext: true
  titleUrlDefault: https://road.issn.org
  providerName: ISSN International Centre
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrV1LS8NAEF6kePDiW6yPkoMHFUL3ZTbrRbS0eLBFUKG3sLuzCwWJ0laP_nZ3krTUi168hCRsws43m3mwk28IOQMrHTNKp5pCliK7Saq15akPkFMnKEhdN5tQo1E-HuvHlVZfWBNW0wPXwHWtot6x3GsajDTOa-uFCAyyQDF2sWh9qdIryVRlg4XAwLnexuQsy7sPw95TtDnn4prJi-j15A9HtMLXXzmWwTbZbCLC5LaeyQ5Z8-Uu2Vp0W0iaj2-PdKLdLJPJLDEJ1pcb_GuvOo8LycDNPnkZ9J9792nT3SB14krOU2mV0sEFhZxaQUibZYoGiBIC5zrw3EbXa0OIOaQXIXjDAtdgNUBFYmfEAWmVb6U_JEkU1-XScMi5kBFig5lU5mkG3AIw1iZ0IWrhGupv7EDxWsQUANEpEB28EDEVKBCdNrlcPvJe8178NvgO8VsORMrq6kZUZNEosvhLkUf_8ZJjsoETqorAxAlpzacf_pSsu8_5ZDbtVGskHodf_W9HJL_m
linkProvider Directory of Open Access Journals
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=When+is+a+container+a+comonad%3F&rft.jtitle=Logical+methods+in+computer+science&rft.au=Ahman%2C+Danel&rft.au=Chapman%2C+James&rft.au=Uustalu%2C+Tarmo&rft.date=2014-09-03&rft.issn=1860-5974&rft.eissn=1860-5974&rft.volume=10%2C+Issue+3&rft_id=info:doi/10.2168%2FLMCS-10%283%3A14%292014&rft.externalDBID=n%2Fa&rft.externalDocID=10_2168_LMCS_10_3_14_2014
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1860-5974&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1860-5974&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1860-5974&client=summon