{"id":"https://openalex.org/W3114324652","doi":"https://doi.org/10.1145/3434323","title":"Distributed causal memory: modular specification and verification in higher-order distributed separation logic","display_name":"Distributed causal memory: modular specification and verification in higher-order distributed separation logic","publication_year":2021,"publication_date":"2021-01-04","ids":{"openalex":"https://openalex.org/W3114324652","doi":"https://doi.org/10.1145/3434323","mag":"3114324652"},"language":"en","primary_location":{"id":"doi:10.1145/3434323","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3434323","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3434323","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/3434323","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5067534176","display_name":"L\u00e9on Gondelman","orcid":"https://orcid.org/0000-0001-8262-6397"},"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":"L\u00e9on Gondelman","raw_affiliation_strings":["Aarhus University, Denmark"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Aarhus University, Denmark","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5075470273","display_name":"Simon Oddershede Gregersen","orcid":"https://orcid.org/0000-0001-6045-5232"},"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":"Simon Oddershede Gregersen","raw_affiliation_strings":["Aarhus University, Denmark"],"raw_orcid":"https://orcid.org/0000-0001-6045-5232","affiliations":[{"raw_affiliation_string":"Aarhus University, Denmark","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5085235051","display_name":"Abel Nieto","orcid":"https://orcid.org/0000-0003-2741-8119"},"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":"Abel Nieto","raw_affiliation_strings":["Aarhus University, Denmark"],"raw_orcid":"https://orcid.org/0000-0003-2741-8119","affiliations":[{"raw_affiliation_string":"Aarhus University, Denmark","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5030831735","display_name":"Amin Timany","orcid":"https://orcid.org/0000-0002-2237-851X"},"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":"Amin Timany","raw_affiliation_strings":["Aarhus University, Denmark"],"raw_orcid":"https://orcid.org/0000-0002-2237-851X","affiliations":[{"raw_affiliation_string":"Aarhus University, Denmark","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"last","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"],"raw_orcid":"https://orcid.org/0000-0003-1320-0098","affiliations":[{"raw_affiliation_string":"Aarhus University, Denmark","institution_ids":["https://openalex.org/I204337017"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":2.0844,"has_fulltext":true,"cited_by_count":17,"citation_normalized_percentile":{"value":0.86991302,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":94,"max":99},"biblio":{"volume":"5","issue":"POPL","first_page":"1","last_page":"29"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":1.0,"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"}},"topics":[{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":1.0,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9965999722480774,"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/T10679","display_name":"Service-Oriented Architecture and Web Services","score":0.9962999820709229,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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.8391352891921997},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.8192542195320129},{"id":"https://openalex.org/keywords/separation-logic","display_name":"Separation logic","score":0.7687876224517822},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6543729305267334},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.6012887954711914},{"id":"https://openalex.org/keywords/formal-verification","display_name":"Formal verification","score":0.4197555184364319},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.376675546169281},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.34956419467926025}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8391352891921997},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.8192542195320129},{"id":"https://openalex.org/C173856430","wikidata":"https://www.wikidata.org/wiki/Q3257964","display_name":"Separation logic","level":2,"score":0.7687876224517822},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6543729305267334},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.6012887954711914},{"id":"https://openalex.org/C111498074","wikidata":"https://www.wikidata.org/wiki/Q173326","display_name":"Formal verification","level":2,"score":0.4197555184364319},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.376675546169281},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.34956419467926025}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/3434323","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3434323","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3434323","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:openaire/33a5db27-8cc9-4e30-802d-76fc4dcbbc77","is_oa":true,"landing_page_url":"https://pure.au.dk/portal/en/publications/33a5db27-8cc9-4e30-802d-76fc4dcbbc77","pdf_url":"https://pure.au.dk/ws/files/289643507/3434323.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":"Gondelman, L, Gregersen, S O, Nieto, A, Timany, A & Birkedal, L 2021, 'Distributed causal memory : Modular specification and verification in higher-order distributed separation logic', Proceedings of the ACM on Programming Languages , vol. 5, no. POPL, 42. https://doi.org/10.1145/3434323","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:oai:pure.atira.dk:publications/33a5db27-8cc9-4e30-802d-76fc4dcbbc77","is_oa":true,"landing_page_url":"http://www.scopus.com/inward/record.url?scp=85099064777&partnerID=8YFLogxK","pdf_url":null,"source":{"id":"https://openalex.org/S4306400063","display_name":"Scopus (Elsevier)","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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Gondelman, L, Gregersen, S O, Nieto, A, Timany, A & Birkedal, L 2021, 'Distributed causal memory : Modular specification and verification in higher-order distributed separation logic', Proceedings of the ACM on Programming Languages , vol. 5, no. POPL, 42. https://doi.org/10.1145/3434323","raw_type":"info:eu-repo/semantics/publishedVersion"}],"best_oa_location":{"id":"doi:10.1145/3434323","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3434323","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3434323","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/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"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3114324652.pdf","grobid_xml":"https://content.openalex.org/works/W3114324652.grobid-xml"},"referenced_works_count":53,"referenced_works":["https://openalex.org/W13821285","https://openalex.org/W136497439","https://openalex.org/W1582882984","https://openalex.org/W1808398105","https://openalex.org/W1981420413","https://openalex.org/W2014708731","https://openalex.org/W2023808162","https://openalex.org/W2026697016","https://openalex.org/W2053480238","https://openalex.org/W2054584570","https://openalex.org/W2090532555","https://openalex.org/W2091776255","https://openalex.org/W2098618284","https://openalex.org/W2105768827","https://openalex.org/W2115309705","https://openalex.org/W2119887456","https://openalex.org/W2125930899","https://openalex.org/W2130427425","https://openalex.org/W2131460078","https://openalex.org/W2134890934","https://openalex.org/W2147323041","https://openalex.org/W2150013559","https://openalex.org/W2160357235","https://openalex.org/W2161730338","https://openalex.org/W2163490397","https://openalex.org/W2167814583","https://openalex.org/W2168397157","https://openalex.org/W2282477915","https://openalex.org/W2288327952","https://openalex.org/W2293215590","https://openalex.org/W2294707073","https://openalex.org/W2509578035","https://openalex.org/W2529658871","https://openalex.org/W2546854465","https://openalex.org/W2562833768","https://openalex.org/W2727429054","https://openalex.org/W2737641788","https://openalex.org/W2765382207","https://openalex.org/W2776248742","https://openalex.org/W2796428443","https://openalex.org/W2885030506","https://openalex.org/W2899599233","https://openalex.org/W2901454403","https://openalex.org/W2947839876","https://openalex.org/W2948852353","https://openalex.org/W2962923638","https://openalex.org/W2995624592","https://openalex.org/W3016987934","https://openalex.org/W3033481492","https://openalex.org/W3123955090","https://openalex.org/W4237730680","https://openalex.org/W4247648759","https://openalex.org/W6683547222"],"related_works":["https://openalex.org/W3008339103","https://openalex.org/W1667647204","https://openalex.org/W2404647514","https://openalex.org/W4247536566","https://openalex.org/W4241418540","https://openalex.org/W2018477250","https://openalex.org/W2165970356","https://openalex.org/W2111870610","https://openalex.org/W4233335757","https://openalex.org/W4250270300"],"abstract_inverted_index":{"We":[0,28,56,90,123],"present":[1],"the":[2,33,65,87,115,118,126,130,136,140,143],"first":[3],"specification":[4,96],"and":[5,26,30,76,97],"verification":[6,18,98],"of":[7,10,19,24,67,86,120,129],"an":[8,45],"implementation":[9],"a":[11,39,79,101],"causally-consistent":[12,34],"distributed":[13,35,41,54,88],"database":[14,36],"that":[15,58],"supports":[16],"modular":[17,95,103],"full":[20],"functional":[21],"correctness":[22,66],"properties":[23],"clients":[25],"servers.":[27],"specify":[29],"reason":[31],"about":[32],"in":[37,110,139,142],"Aneris,":[38],"higher-order":[40],"separation":[42],"logic":[43,132],"for":[44,52,94],"ML-like":[46],"programming":[47,53],"language":[48],"with":[49],"network":[50],"primitives":[51],"systems.":[55],"demonstrate":[57],"our":[59],"specifications":[60,116],"are":[61],"useful,":[62],"by":[63,77],"proving":[64],"small,":[68],"but":[69],"tricky,":[70],"synthetic":[71],"examples":[72],"involving":[73],"causal":[74],"dependency":[75],"verifying":[78],"session":[80],"manager":[81],"library":[82],"implemented":[83],"on":[84,114],"top":[85],"database.":[89],"use":[91],"Aneris's":[92],"facilities":[93],"to":[99,133],"obtain":[100],"highly":[102],"development,":[104],"where":[105],"each":[106],"component":[107],"is":[108],"verified":[109],"isolation,":[111],"relying":[112],"only":[113],"(not":[117],"implementations)":[119],"other":[121],"components.":[122],"have":[124],"used":[125],"Coq":[127,144],"formalization":[128],"Aneris":[131],"formalize":[134],"all":[135],"results":[137],"presented":[138],"paper":[141],"proof":[145],"assistant.":[146]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":5},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":2}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
