{"id":"https://openalex.org/W3193924946","doi":"https://doi.org/10.1145/3473586","title":"Theorems for free from separation logic specifications","display_name":"Theorems for free from separation logic specifications","publication_year":2021,"publication_date":"2021-08-19","ids":{"openalex":"https://openalex.org/W3193924946","doi":"https://doi.org/10.1145/3473586","mag":"3193924946"},"language":"en","primary_location":{"id":"doi:10.1145/3473586","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3473586","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3473586","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3473586","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5055959064","display_name":"Lars Birkedal","orcid":"https://orcid.org/0000-0003-1320-0098"},"institutions":[{"id":"https://openalex.org/I204337017","display_name":"Aarhus University","ror":"https://ror.org/01aj84f44","country_code":"DK","type":"education","lineage":["https://openalex.org/I204337017"]}],"countries":["DK"],"is_corresponding":false,"raw_author_name":"Lars Birkedal","raw_affiliation_strings":["Aarhus University, Denmark","Department of Computer Science [Aarhus] (Department of Computer Science Aarhus University \u00c5bogade 34 DK-8200 Aarhus N Denmark - Danemark)"],"raw_orcid":"https://orcid.org/0000-0003-1320-0098","affiliations":[{"raw_affiliation_string":"Aarhus University, Denmark","institution_ids":["https://openalex.org/I204337017"]},{"raw_affiliation_string":"Department of Computer Science [Aarhus] (Department of Computer Science Aarhus University \u00c5bogade 34 DK-8200 Aarhus N Denmark - Danemark)","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5063687513","display_name":"Thomas Dinsdale-Young","orcid":null},"institutions":[{"id":"https://openalex.org/I2802114983","display_name":"Concord Consortium","ror":"https://ror.org/0570naj48","country_code":"US","type":"other","lineage":["https://openalex.org/I2802114983"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Thomas Dinsdale-Young","raw_affiliation_strings":["Concordium, Denmark","Concordium [Aarhus] (Aabogade 15\r\n8200 Aarhus N - Danemark)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Concordium, Denmark","institution_ids":["https://openalex.org/I2802114983"]},{"raw_affiliation_string":"Concordium [Aarhus] (Aabogade 15\r\n8200 Aarhus N - Danemark)","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5043705983","display_name":"Arma\u00ebl Gu\u00e9neau","orcid":"https://orcid.org/0000-0003-3072-4045"},"institutions":[{"id":"https://openalex.org/I204337017","display_name":"Aarhus University","ror":"https://ror.org/01aj84f44","country_code":"DK","type":"education","lineage":["https://openalex.org/I204337017"]}],"countries":["DK"],"is_corresponding":false,"raw_author_name":"Arma\u00ebl Gu\u00e9neau","raw_affiliation_strings":["Aarhus University, Denmark","Department of Computer Science [Aarhus] (Danemark)"],"raw_orcid":"https://orcid.org/0000-0003-3072-4045","affiliations":[{"raw_affiliation_string":"Aarhus University, Denmark","institution_ids":["https://openalex.org/I204337017"]},{"raw_affiliation_string":"Department of Computer Science [Aarhus] (Danemark)","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5086987751","display_name":"Guilhem Jaber","orcid":null},"institutions":[{"id":"https://openalex.org/I4210117005","display_name":"Laboratoire des Sciences du Num\u00e9rique de Nantes","ror":"https://ror.org/02snf8m58","country_code":"FR","type":"facility","lineage":["https://openalex.org/I100445878","https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I1326498283","https://openalex.org/I205703379","https://openalex.org/I4210117005","https://openalex.org/I4210124215","https://openalex.org/I4210127572","https://openalex.org/I4210139971","https://openalex.org/I97188460","https://openalex.org/I97188460"]},{"id":"https://openalex.org/I97188460","display_name":"Nantes Universit\u00e9","ror":"https://ror.org/03gnr7b55","country_code":"FR","type":"education","lineage":["https://openalex.org/I97188460"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Guilhem Jaber","raw_affiliation_strings":["University of Nantes, France","UN - Universit\u00e9 de Nantes (1, quai de Tourville - BP 13522 - 44035 Nantes cedex 1 - France)","LS2N - \u00e9quipe GALLINETTE - Gallinette : vers une nouvelle g\u00e9n\u00e9ration d'assistant \u00e0 la preuve (France)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Nantes, France","institution_ids":["https://openalex.org/I97188460"]},{"raw_affiliation_string":"UN - Universit\u00e9 de Nantes (1, quai de Tourville - BP 13522 - 44035 Nantes cedex 1 - France)","institution_ids":["https://openalex.org/I97188460"]},{"raw_affiliation_string":"LS2N - \u00e9quipe GALLINETTE - Gallinette : vers une nouvelle g\u00e9n\u00e9ration d'assistant \u00e0 la preuve (France)","institution_ids":["https://openalex.org/I97188460","https://openalex.org/I4210117005"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5044308555","display_name":"Kasper Svendsen","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Kasper Svendsen","raw_affiliation_strings":["Uber, Denmark","Uber [Aarhus] (\u00c5boulevarden 37, 8000 Aarhus - Danemark)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Uber, Denmark","institution_ids":[]},{"raw_affiliation_string":"Uber [Aarhus] (\u00c5boulevarden 37, 8000 Aarhus - Danemark)","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5041266426","display_name":"Nikos Tzevelekos","orcid":"https://orcid.org/0000-0001-8509-8059"},"institutions":[{"id":"https://openalex.org/I166337079","display_name":"Queen Mary University of London","ror":"https://ror.org/026zzn846","country_code":"GB","type":"education","lineage":["https://openalex.org/I124357947","https://openalex.org/I166337079"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Nikos Tzevelekos","raw_affiliation_strings":["Queen Mary University of London, UK","EECS - School of Electronic Engineering and Computer Science (Queen Mary, University of London Mile End Road London E1 4NS United Kingdom - Royaume-Uni)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Queen Mary University of London, UK","institution_ids":["https://openalex.org/I166337079"]},{"raw_affiliation_string":"EECS - School of Electronic Engineering and Computer Science (Queen Mary, University of London Mile End Road London E1 4NS United Kingdom - Royaume-Uni)","institution_ids":["https://openalex.org/I166337079"]}]}],"institutions":[],"countries_distinct_count":4,"institutions_distinct_count":6,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.9591,"has_fulltext":true,"cited_by_count":19,"citation_normalized_percentile":{"value":0.88699042,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"5","issue":"ICFP","first_page":"1","last_page":"29"},"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T11424","display_name":"Security and Verification in Computing","score":0.9988999962806702,"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/separation-logic","display_name":"Separation logic","score":0.9135726690292358},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6786720752716064},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.557029128074646},{"id":"https://openalex.org/keywords/trace","display_name":"TRACE (psycholinguistics)","score":0.5233418345451355},{"id":"https://openalex.org/keywords/intuition","display_name":"Intuition","score":0.5088410973548889},{"id":"https://openalex.org/keywords/bunched-logic","display_name":"Bunched logic","score":0.4660187065601349},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3946506381034851},{"id":"https://openalex.org/keywords/multimodal-logic","display_name":"Multimodal logic","score":0.19118711352348328},{"id":"https://openalex.org/keywords/description-logic","display_name":"Description logic","score":0.18887749314308167},{"id":"https://openalex.org/keywords/zeroth-order-logic","display_name":"Zeroth-order logic","score":0.09153670072555542}],"concepts":[{"id":"https://openalex.org/C173856430","wikidata":"https://www.wikidata.org/wiki/Q3257964","display_name":"Separation logic","level":2,"score":0.9135726690292358},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6786720752716064},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.557029128074646},{"id":"https://openalex.org/C75291252","wikidata":"https://www.wikidata.org/wiki/Q1315756","display_name":"TRACE (psycholinguistics)","level":2,"score":0.5233418345451355},{"id":"https://openalex.org/C132010649","wikidata":"https://www.wikidata.org/wiki/Q189222","display_name":"Intuition","level":2,"score":0.5088410973548889},{"id":"https://openalex.org/C80467683","wikidata":"https://www.wikidata.org/wiki/Q4997446","display_name":"Bunched logic","level":5,"score":0.4660187065601349},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3946506381034851},{"id":"https://openalex.org/C203659156","wikidata":"https://www.wikidata.org/wiki/Q6934805","display_name":"Multimodal logic","level":3,"score":0.19118711352348328},{"id":"https://openalex.org/C102993220","wikidata":"https://www.wikidata.org/wiki/Q387196","display_name":"Description logic","level":2,"score":0.18887749314308167},{"id":"https://openalex.org/C110039528","wikidata":"https://www.wikidata.org/wiki/Q8069651","display_name":"Zeroth-order logic","level":4,"score":0.09153670072555542},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/3473586","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3473586","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3473586","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},{"id":"pmh:oai:pure.atira.dk:publications/7af9c67a-63da-4180-adfb-9bd1575f6475","is_oa":true,"landing_page_url":"https://pure.au.dk/portal/en/publications/7af9c67a-63da-4180-adfb-9bd1575f6475","pdf_url":"https://pure.au.dk/ws/files/289639079/3473586.pdf","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Birkedal, L, Dinsdale-Young, T, Gu\u00e9neau, A, Jaber, G, Svendsen, K & Tzevelekos, N 2021, 'Theorems for free from separation logic specifications', Proceedings of the ACM on Programming Languages , vol. 5, no. ICFP, 81. https://doi.org/10.1145/3473586","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:oai:HAL:hal-03510684v1","is_oa":false,"landing_page_url":"https://hal.science/hal-03510684","pdf_url":null,"source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"Centre National de la Recherche Scientifique","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Proceedings of the ACM on Programming Languages, 2021, 5 (ICFP), pp.1-29. &#x27E8;10.1145/3473586&#x27E9;","raw_type":"Journal articles"}],"best_oa_location":{"id":"doi:10.1145/3473586","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3473586","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3473586","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G4040309095","display_name":"Program Reasoning with Nominal Game Semantics","funder_award_id":"EP/L022478/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G4042252996","display_name":null,"funder_award_id":"Villum Investigator grant (no. 25804)","funder_id":"https://openalex.org/F4320310490","funder_display_name":"Villum Fonden"},{"id":"https://openalex.org/G4569039607","display_name":null,"funder_award_id":"EP/L022478/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G6306719748","display_name":null,"funder_award_id":"EP/P004172/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G6851704783","display_name":null,"funder_award_id":"25804","funder_id":"https://openalex.org/F4320310490","funder_display_name":"Villum Fonden"}],"funders":[{"id":"https://openalex.org/F4320310490","display_name":"Villum Fonden","ror":"https://ror.org/007ww2d15"},{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3193924946.pdf","grobid_xml":"https://content.openalex.org/works/W3193924946.grobid-xml"},"referenced_works_count":47,"referenced_works":["https://openalex.org/W18500152","https://openalex.org/W20815996","https://openalex.org/W175195251","https://openalex.org/W185822725","https://openalex.org/W1511982475","https://openalex.org/W1533529458","https://openalex.org/W1711395388","https://openalex.org/W1773735832","https://openalex.org/W1784055113","https://openalex.org/W1811793995","https://openalex.org/W1824790454","https://openalex.org/W1974265510","https://openalex.org/W1995369968","https://openalex.org/W1998095216","https://openalex.org/W2027099721","https://openalex.org/W2036961426","https://openalex.org/W2044590882","https://openalex.org/W2057292961","https://openalex.org/W2080718905","https://openalex.org/W2091712774","https://openalex.org/W2101939036","https://openalex.org/W2125505801","https://openalex.org/W2137628566","https://openalex.org/W2141505892","https://openalex.org/W2145029935","https://openalex.org/W2147323041","https://openalex.org/W2147778310","https://openalex.org/W2151033407","https://openalex.org/W2156881251","https://openalex.org/W2163059606","https://openalex.org/W2163672449","https://openalex.org/W2171685273","https://openalex.org/W2282534072","https://openalex.org/W2476818328","https://openalex.org/W2792757320","https://openalex.org/W2797310167","https://openalex.org/W2901454403","https://openalex.org/W2903499634","https://openalex.org/W2995075587","https://openalex.org/W3006137651","https://openalex.org/W3008053328","https://openalex.org/W3019389875","https://openalex.org/W3035622664","https://openalex.org/W3047140595","https://openalex.org/W3092908609","https://openalex.org/W3124307800","https://openalex.org/W4256027310"],"related_works":["https://openalex.org/W2165970356","https://openalex.org/W2148687959","https://openalex.org/W3194921765","https://openalex.org/W2144482530","https://openalex.org/W3136970019","https://openalex.org/W4247835804","https://openalex.org/W2495367456","https://openalex.org/W3110302737","https://openalex.org/W2118916314","https://openalex.org/W1968480809"],"abstract_inverted_index":{"Separation":[0],"logic":[1,28,69,89,126],"specifications":[2],"with":[3],"abstract":[4,67],"predicates":[5],"intuitively":[6,33],"enforce":[7],"a":[8,20,23,26,31,35,43,83,92],"discipline":[9],"that":[10,82,97],"constrains":[11],"when":[12],"and":[13,22,45,55,112],"how":[14,50,57],"calls":[15],"may":[16],"be":[17],"made":[18],"between":[19,42],"client":[21,44],"library.":[24,47],"Thus":[25],"separation":[27,68,88,125],"specification":[29,90],"of":[30,40,75,91],"library":[32],"enforces":[34],"protocol":[36],"on":[37],"the":[38,46,98,103,116,121],"trace":[39],"interactions":[41],"We":[48,71],"show":[49],"to":[51,58],"formalize":[52],"this":[53,107],"intuition":[54],"demonstrate":[56],"derive":[59],"\"free":[60],"theorems\"":[61],"about":[62],"such":[63],"interaction":[64],"traces":[65],"from":[66],"specifications.":[70],"present":[72],"several":[73],"examples":[74],"free":[76],"theorems.":[77],"In":[78],"particular,":[79],"we":[80],"prove":[81],"so-called":[84],"logically":[85],"atomic":[86],"concurrent":[87,93,124],"module":[94],"operation":[95,99],"implies":[96],"is":[100],"linearizable.":[101],"All":[102],"results":[104],"presented":[105],"in":[106,115],"paper":[108],"have":[109],"been":[110],"mechanized":[111],"formally":[113],"proved":[114],"Coq":[117],"proof":[118],"assistant":[119],"using":[120],"Iris":[122],"higher-order":[123],"framework.":[127]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":5},{"year":2023,"cited_by_count":4},{"year":2022,"cited_by_count":4},{"year":2021,"cited_by_count":1}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
