{"id":"https://openalex.org/W1991089831","doi":"https://doi.org/10.1145/2364394.2364405","title":"Sorting with bialgebras and distributive laws","display_name":"Sorting with bialgebras and distributive laws","publication_year":2012,"publication_date":"2012-09-12","ids":{"openalex":"https://openalex.org/W1991089831","doi":"https://doi.org/10.1145/2364394.2364405","mag":"1991089831"},"language":"en","primary_location":{"id":"doi:10.1145/2364394.2364405","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2364394.2364405","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 8th ACM SIGPLAN workshop on Generic programming","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5063247380","display_name":"Ralf Hinze","orcid":"https://orcid.org/0000-0001-5678-0286"},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Ralf Hinze","raw_affiliation_strings":["University of Oxford, Oxford, United Kingdom"],"affiliations":[{"raw_affiliation_string":"University of Oxford, Oxford, United Kingdom","institution_ids":["https://openalex.org/I40120149"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5005240077","display_name":"Daniel W.H. James","orcid":null},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Daniel W.H. James","raw_affiliation_strings":["University of Oxford, Oxford, United Kingdom"],"affiliations":[{"raw_affiliation_string":"University of Oxford, Oxford, United Kingdom","institution_ids":["https://openalex.org/I40120149"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5054461939","display_name":"Thomas L. Harper","orcid":null},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Thomas Harper","raw_affiliation_strings":["University of Oxford, Oxford, United Kingdom"],"affiliations":[{"raw_affiliation_string":"University of Oxford, Oxford, United Kingdom","institution_ids":["https://openalex.org/I40120149"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5072641397","display_name":"Nicolas Wu","orcid":"https://orcid.org/0000-0002-4161-985X"},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Nicolas Wu","raw_affiliation_strings":["University of Oxford, Oxford, United Kingdom"],"affiliations":[{"raw_affiliation_string":"University of Oxford, Oxford, United Kingdom","institution_ids":["https://openalex.org/I40120149"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5100879511","display_name":"Jos\u00e9 Pedro Magalh\u00e3es","orcid":null},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Jos\u00e9 Pedro Magalh\u00e3es","raw_affiliation_strings":["University of Oxford, Oxford, United Kingdom"],"affiliations":[{"raw_affiliation_string":"University of Oxford, Oxford, United Kingdom","institution_ids":["https://openalex.org/I40120149"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5063247380"],"corresponding_institution_ids":["https://openalex.org/I40120149"],"apc_list":null,"apc_paid":null,"fwci":0.4421,"has_fulltext":false,"cited_by_count":7,"citation_normalized_percentile":{"value":0.7141855,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"69","last_page":"80"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11567","display_name":"semigroups and automata theory","score":0.9993000030517578,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.9945999979972839,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7317994832992554},{"id":"https://openalex.org/keywords/heap","display_name":"Heap (data structure)","score":0.6900548934936523},{"id":"https://openalex.org/keywords/distributive-property","display_name":"Distributive property","score":0.6326472759246826},{"id":"https://openalex.org/keywords/sorting-algorithm","display_name":"Sorting algorithm","score":0.5791751742362976},{"id":"https://openalex.org/keywords/sorting","display_name":"Sorting","score":0.5768367052078247},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.5032948851585388},{"id":"https://openalex.org/keywords/selection","display_name":"Selection (genetic algorithm)","score":0.4302593469619751},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.42627960443496704},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.3399296998977661},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.21256881952285767},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.21069127321243286}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7317994832992554},{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.6900548934936523},{"id":"https://openalex.org/C11821877","wikidata":"https://www.wikidata.org/wiki/Q187959","display_name":"Distributive property","level":2,"score":0.6326472759246826},{"id":"https://openalex.org/C108094655","wikidata":"https://www.wikidata.org/wiki/Q181593","display_name":"Sorting algorithm","level":3,"score":0.5791751742362976},{"id":"https://openalex.org/C111696304","wikidata":"https://www.wikidata.org/wiki/Q2303697","display_name":"Sorting","level":2,"score":0.5768367052078247},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.5032948851585388},{"id":"https://openalex.org/C81917197","wikidata":"https://www.wikidata.org/wiki/Q628760","display_name":"Selection (genetic algorithm)","level":2,"score":0.4302593469619751},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.42627960443496704},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.3399296998977661},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.21256881952285767},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.21069127321243286},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.0}],"mesh":[],"locations_count":7,"locations":[{"id":"doi:10.1145/2364394.2364405","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2364394.2364405","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 8th ACM SIGPLAN workshop on Generic programming","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.366.1640","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.366.1640","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.dreixel.net/research/pdf/sbdl.pdf","raw_type":"text"},{"id":"pmh:oai:ora.ox.ac.uk:uuid:7cd27deb-7d66-4fa8-8442-660246ac2464","is_oa":false,"landing_page_url":"https://ora.ox.ac.uk/objects/uuid:7cd27deb-7d66-4fa8-8442-660246ac2464","pdf_url":null,"source":{"id":"https://openalex.org/S4306402636","display_name":"Oxford University Research Archive (ORA) (University of Oxford)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I40120149","host_organization_name":"University of Oxford","host_organization_lineage":["https://openalex.org/I40120149"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Department of Computer Science","raw_type":"Conference item"},{"id":"pmh:oai:ora.ox.ac.uk:uuid:f541f606-c3e9-4b95-9963-bfec148d30a6","is_oa":false,"landing_page_url":"https://ora.ox.ac.uk/objects/uuid:f541f606-c3e9-4b95-9963-bfec148d30a6","pdf_url":null,"source":{"id":"https://openalex.org/S4306402636","display_name":"Oxford University Research Archive (ORA) (University of Oxford)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I40120149","host_organization_name":"University of Oxford","host_organization_lineage":["https://openalex.org/I40120149"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Department of Computer Science","raw_type":"General item"},{"id":"pmh:oai:ora.ox.ac.uk:uuid:fdf11970-d9d2-4528-a372-7d80d2e91304","is_oa":false,"landing_page_url":"https://ora.ox.ac.uk/objects/uuid:fdf11970-d9d2-4528-a372-7d80d2e91304","pdf_url":null,"source":{"id":"https://openalex.org/S4306402636","display_name":"Oxford University Research Archive (ORA) (University of Oxford)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I40120149","host_organization_name":"University of Oxford","host_organization_lineage":["https://openalex.org/I40120149"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Department of Computer Science","raw_type":"Conference item"},{"id":"pmh:oai:research-information.bris.ac.uk:openaire_cris_publications/09042ea3-bd3d-4940-8af0-fd68b9ec7311","is_oa":false,"landing_page_url":"https://research-information.bris.ac.uk/en/publications/09042ea3-bd3d-4940-8af0-fd68b9ec7311","pdf_url":null,"source":{"id":"https://openalex.org/S4306400895","display_name":"Bristol Research (University of Bristol)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I36234482","host_organization_name":"University of Bristol","host_organization_lineage":["https://openalex.org/I36234482"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Hinze, R, James, D W H, Harper, T, Wu, N & Magalh\u00e3es, J P 2012, Sorting with Bialgebras and Distributive Laws. in Proceedings of the 8th ACM SIGPLAN Workshop on Generic Programming. WGP '12, Association for Computing Machinery, New York, NY, USA, pp. 69-80. https://doi.org/10.1145/2364394.2364405","raw_type":"contributionToPeriodical"},{"id":"pmh:oai:research-information.bris.ac.uk:publications/09042ea3-bd3d-4940-8af0-fd68b9ec7311","is_oa":false,"landing_page_url":"https://hdl.handle.net/1983/09042ea3-bd3d-4940-8af0-fd68b9ec7311","pdf_url":null,"source":{"id":"https://openalex.org/S7407055359","display_name":"Explore Bristol Research","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Hinze, R, James, D W H, Harper, T, Wu, N & Magalh\u00e3es, J P 2012, Sorting with Bialgebras and Distributive Laws. in Proceedings of the 8th ACM SIGPLAN Workshop on Generic Programming. WGP '12, Association for Computing Machinery, New York, NY, USA, pp. 69-80. https://doi.org/10.1145/2364394.2364405","raw_type":"contributionToPeriodical"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G5861354049","display_name":null,"funder_award_id":"EP/J010995/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"}],"funders":[{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":24,"referenced_works":["https://openalex.org/W50416634","https://openalex.org/W100509257","https://openalex.org/W1528303475","https://openalex.org/W1545172682","https://openalex.org/W1608714802","https://openalex.org/W1942658187","https://openalex.org/W1963928257","https://openalex.org/W2057843304","https://openalex.org/W2089214658","https://openalex.org/W2095624220","https://openalex.org/W2101032471","https://openalex.org/W2101565274","https://openalex.org/W2128038421","https://openalex.org/W2133393261","https://openalex.org/W2150604969","https://openalex.org/W2163256338","https://openalex.org/W2164507834","https://openalex.org/W2167373162","https://openalex.org/W2295976912","https://openalex.org/W2326587081","https://openalex.org/W3198160809","https://openalex.org/W4244792373","https://openalex.org/W6820760572","https://openalex.org/W6830984306"],"related_works":["https://openalex.org/W2809748609","https://openalex.org/W3033694952","https://openalex.org/W2372558933","https://openalex.org/W2349288944","https://openalex.org/W2085265870","https://openalex.org/W797244100","https://openalex.org/W1999431223","https://openalex.org/W2043772124","https://openalex.org/W2801186172","https://openalex.org/W2367560286"],"abstract_inverted_index":{"Sorting":[0],"algorithms":[1,84,139],"are":[2,34,90],"an":[3,24,120],"intrinsic":[4],"part":[5],"of":[6,27,64,82,106,137],"functional":[7],"programming":[8],"folklore":[9],"as":[10,55,92],"they":[11],"exemplify":[12],"algorithm":[13],"design":[14],"using":[15],"folds":[16,143],"and":[17,41,70,103,129,144],"unfolds.":[18,145],"This":[19],"has":[20],"given":[21],"rise":[22],"to":[23,36,77,86,114,127],"informal":[25],"notion":[26,47],"duality":[28,100],"among":[29],"sorting":[30],"algorithms:":[31],"insertion":[32],"sorts":[33],"dual":[35],"selection":[37],"sorts.":[38,72],"Using":[39],"bialgebras":[40],"distributive":[42],"laws,":[43],"we":[44,74],"formalise":[45],"this":[46,96],"within":[48],"a":[49,56],"categorical":[50],"setting.":[51],"We":[52],"use":[53],"types":[54],"guiding":[57],"force":[58],"in":[59],"exposing":[60],"the":[61,79,99,107,115,122,141],"recursive":[62],"structure":[63],"bubble,":[65],"insertion,":[66],"selection,":[67],"quick,":[68],"tree,":[69],"heap":[71],"Moreover,":[73],"show":[75],"how":[76],"distill":[78],"computational":[80],"essence":[81],"these":[83,138],"down":[85],"one-step":[87],"operations":[88],"that":[89],"expressed":[91],"natural":[93],"transformations.":[94],"From":[95],"vantage":[97],"point,":[98],"is":[101,124],"clear,":[102],"one":[104],"side":[105],"algorithmic":[108],"coin":[109],"will":[110],"neatly":[111],"lead":[112],"us":[113],"other":[116],"\"for":[117],"free\".":[118],"As":[119],"optimisation,":[121],"approach":[123],"also":[125],"extended":[126],"paramorphisms":[128],"apomorphisms,":[130],"which":[131],"allow":[132],"for":[133],"more":[134],"efficient":[135],"implementations":[136],"than":[140],"corresponding":[142]},"counts_by_year":[{"year":2025,"cited_by_count":2},{"year":2022,"cited_by_count":1},{"year":2013,"cited_by_count":1}],"updated_date":"2026-04-05T17:49:38.594831","created_date":"2025-10-10T00:00:00"}
