{"id":"https://openalex.org/W4414988710","doi":"https://doi.org/10.1145/3763069","title":"Correct Black-Box Monitors for Distributed Deadlock Detection: Formalisation and Implementation","display_name":"Correct Black-Box Monitors for Distributed Deadlock Detection: Formalisation and Implementation","publication_year":2025,"publication_date":"2025-10-09","ids":{"openalex":"https://openalex.org/W4414988710","doi":"https://doi.org/10.1145/3763069"},"language":"en","primary_location":{"id":"doi:10.1145/3763069","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763069","pdf_url":null,"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":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://doi.org/10.1145/3763069","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5066159878","display_name":"Rados\u0142aw Rowicki","orcid":"https://orcid.org/0009-0003-0758-722X"},"institutions":[{"id":"https://openalex.org/I96673099","display_name":"Technical University of Denmark","ror":"https://ror.org/04qtj9h94","country_code":"DK","type":"education","lineage":["https://openalex.org/I96673099"]}],"countries":["DK"],"is_corresponding":true,"raw_author_name":"Rados\u0142aw Jan Rowicki","raw_affiliation_strings":["Technical University of Denmark, Kongens Lyngby, Denmark"],"affiliations":[{"raw_affiliation_string":"Technical University of Denmark, Kongens Lyngby, Denmark","institution_ids":["https://openalex.org/I96673099"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5077349456","display_name":"Adrian Francalanza","orcid":"https://orcid.org/0000-0003-3829-7391"},"institutions":[{"id":"https://openalex.org/I197854408","display_name":"University of Malta","ror":"https://ror.org/03a62bv60","country_code":"MT","type":"education","lineage":["https://openalex.org/I197854408"]}],"countries":["MT"],"is_corresponding":false,"raw_author_name":"Adrian Francalanza","raw_affiliation_strings":["University of Malta, Msida, Malta"],"affiliations":[{"raw_affiliation_string":"University of Malta, Msida, Malta","institution_ids":["https://openalex.org/I197854408"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5033402139","display_name":"Alceste Scalas","orcid":"https://orcid.org/0000-0002-1153-6164"},"institutions":[{"id":"https://openalex.org/I96673099","display_name":"Technical University of Denmark","ror":"https://ror.org/04qtj9h94","country_code":"DK","type":"education","lineage":["https://openalex.org/I96673099"]}],"countries":["DK"],"is_corresponding":false,"raw_author_name":"Alceste Scalas","raw_affiliation_strings":["Technical University of Denmark, Kongens Lyngby, Denmark"],"affiliations":[{"raw_affiliation_string":"Technical University of Denmark, Kongens Lyngby, Denmark","institution_ids":["https://openalex.org/I96673099"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5066159878"],"corresponding_institution_ids":["https://openalex.org/I96673099"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.3309481,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"9","issue":"OOPSLA2","first_page":"527","last_page":"554"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9987999796867371,"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":0.9987999796867371,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9970999956130981,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10400","display_name":"Network Security and Intrusion Detection","score":0.9954000115394592,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/deadlock-prevention-algorithms","display_name":"Deadlock prevention algorithms","score":0.7900999784469604},{"id":"https://openalex.org/keywords/deadlock","display_name":"Deadlock","score":0.7810999751091003},{"id":"https://openalex.org/keywords/artifact","display_name":"Artifact (error)","score":0.49570000171661377},{"id":"https://openalex.org/keywords/block","display_name":"Block (permutation group theory)","score":0.43459999561309814},{"id":"https://openalex.org/keywords/false-positive-paradox","display_name":"False positive paradox","score":0.412200003862381},{"id":"https://openalex.org/keywords/distributed-algorithm","display_name":"Distributed algorithm","score":0.34689998626708984},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.3197000026702881}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.839900016784668},{"id":"https://openalex.org/C113429609","wikidata":"https://www.wikidata.org/wiki/Q4060699","display_name":"Deadlock prevention algorithms","level":3,"score":0.7900999784469604},{"id":"https://openalex.org/C159023740","wikidata":"https://www.wikidata.org/wiki/Q623276","display_name":"Deadlock","level":2,"score":0.7810999751091003},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.5885000228881836},{"id":"https://openalex.org/C2779010991","wikidata":"https://www.wikidata.org/wiki/Q2720909","display_name":"Artifact (error)","level":2,"score":0.49570000171661377},{"id":"https://openalex.org/C2777210771","wikidata":"https://www.wikidata.org/wiki/Q4927124","display_name":"Block (permutation group theory)","level":2,"score":0.43459999561309814},{"id":"https://openalex.org/C64869954","wikidata":"https://www.wikidata.org/wiki/Q1859747","display_name":"False positive paradox","level":2,"score":0.412200003862381},{"id":"https://openalex.org/C130120984","wikidata":"https://www.wikidata.org/wiki/Q2835898","display_name":"Distributed algorithm","level":2,"score":0.34689998626708984},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.3197000026702881},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.3027999997138977},{"id":"https://openalex.org/C2778755073","wikidata":"https://www.wikidata.org/wiki/Q10858537","display_name":"Scale (ratio)","level":2,"score":0.30140000581741333},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.28220000863075256},{"id":"https://openalex.org/C2780378061","wikidata":"https://www.wikidata.org/wiki/Q25351891","display_name":"Service (business)","level":2,"score":0.2784999907016754},{"id":"https://openalex.org/C3739613","wikidata":"https://www.wikidata.org/wiki/Q679003","display_name":"Distributed Computing Environment","level":2,"score":0.27489998936653137},{"id":"https://openalex.org/C84511453","wikidata":"https://www.wikidata.org/wiki/Q2914952","display_name":"Concurrency control","level":3,"score":0.2718000113964081},{"id":"https://openalex.org/C25016198","wikidata":"https://www.wikidata.org/wiki/Q781833","display_name":"Temporal logic","level":2,"score":0.25929999351501465},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.25429999828338623}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3763069","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763069","pdf_url":null,"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:arXiv.org:2508.14851","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2508.14851","pdf_url":"https://arxiv.org/pdf/2508.14851","source":{"id":"https://openalex.org/S4393918464","display_name":"ArXiv.org","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"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":null,"raw_type":"text"}],"best_oa_location":{"id":"doi:10.1145/3763069","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763069","pdf_url":null,"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":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":51,"referenced_works":["https://openalex.org/W258022877","https://openalex.org/W1544441750","https://openalex.org/W1560340731","https://openalex.org/W1832790877","https://openalex.org/W1862182621","https://openalex.org/W1979930990","https://openalex.org/W1984599424","https://openalex.org/W1992135271","https://openalex.org/W1994350081","https://openalex.org/W2001478969","https://openalex.org/W2008518474","https://openalex.org/W2008838944","https://openalex.org/W2023408771","https://openalex.org/W2039528863","https://openalex.org/W2044660684","https://openalex.org/W2044770819","https://openalex.org/W2046261467","https://openalex.org/W2047260020","https://openalex.org/W2060992753","https://openalex.org/W2085243417","https://openalex.org/W2100578622","https://openalex.org/W2109065830","https://openalex.org/W2117224408","https://openalex.org/W2136168913","https://openalex.org/W2146516325","https://openalex.org/W2148901852","https://openalex.org/W2151021286","https://openalex.org/W2155462705","https://openalex.org/W2167814583","https://openalex.org/W2294770514","https://openalex.org/W2296352734","https://openalex.org/W2475064380","https://openalex.org/W2786819761","https://openalex.org/W2889549856","https://openalex.org/W2971448699","https://openalex.org/W2971750408","https://openalex.org/W2998338832","https://openalex.org/W3101218110","https://openalex.org/W3127398300","https://openalex.org/W3138331993","https://openalex.org/W3143325848","https://openalex.org/W3172646970","https://openalex.org/W3200633237","https://openalex.org/W4286447266","https://openalex.org/W4293196736","https://openalex.org/W4380986974","https://openalex.org/W4384163161","https://openalex.org/W6929409908","https://openalex.org/W7077043504","https://openalex.org/W7077462428","https://openalex.org/W7077492759"],"related_works":[],"abstract_inverted_index":{"Many":[0],"software":[1],"applications":[2],"rely":[3],"on":[4,76],"concurrent":[5],"and":[6,13,26,30,38,82,84,109,117,120,141,151,179,194],"distributed":[7,100,143,196],"(micro)services":[8],"that":[9,103,131,147,189],"interact":[10],"via":[11],"message-passing":[12],"various":[14],"forms":[15],"of":[16,34,67,79,176,213],"remote":[17],"procedure":[18],"calls":[19],"(RPC).":[20],"As":[21,62],"these":[22],"systems":[23],"organically":[24],"evolve":[25],"grow":[27],"in":[28,139,168,206],"scale":[29],"complexity,":[31],"the":[32,59,65,68,77,80,86,96,115,174,186,192,210],"risk":[33],"introducing":[35],"deadlocks":[36,111],"increases":[37],"their":[39],"impact":[40],"may":[41,53],"worsen:":[42],"even":[43],"if":[44],"only":[45,113],"a":[46,63,128,142,169],"few":[47],"services":[48,52,156],"deadlock,":[49],"many":[50],"other":[51,124],"block":[54],"while":[55],"awaiting":[56],"responses":[57],"from":[58],"deadlocked":[60,155],"ones.":[61],"result,":[64],"\"core\"":[66],"deadlock":[69,200],"can":[70,88],"be":[71,89],"obfuscated":[72],"by":[73,98,112],"its":[74,182],"consequences":[75],"rest":[78],"system,":[81],"diagnosing":[83],"fixing":[85],"problem":[87],"challenging.":[90],"In":[91],"this":[92,214],"work":[93,188],"we":[94,148,180],"tackle":[95],"challenge":[97],"proposing":[99],"black-box":[101,144,197],"monitors":[102,198],"are":[104,204],"deployed":[105],"alongside":[106],"each":[107],"service":[108],"detect":[110],"observing":[114],"incoming":[116],"outgoing":[118],"messages,":[119],"exchanging":[121],"probes":[122],"with":[123,157],"monitors.":[125],"We":[126,164],"present":[127],"formal":[129],"model":[130],"captures":[132],"popular":[133],"RPC-based":[134],"application":[135],"styles":[136],"(e.g.,":[137],"gen_servers":[138],"Erlang/OTP),":[140],"monitoring":[145,175],"algorithm":[146],"prove":[149],"sound":[150],"complete":[152],"(i.e.,":[153],"identifies":[154],"neither":[158],"false":[159,162],"positives":[160],"nor":[161],"negatives).":[163],"implement":[165],"our":[166],"results":[167,203],"tool":[170],"called":[171],"DDMon":[172,208],"for":[173,199],"Erlang/OTP":[177],"applications,":[178],"evaluate":[181],"performance.":[183],"This":[184],"is":[185,209],"first":[187],"formalises,":[190],"proves":[191],"correctness,":[193],"implements":[195],"detection.":[201],"Our":[202],"mechanised":[205],"Coq.":[207],"companion":[211],"artifact":[212],"paper.":[215]},"counts_by_year":[],"updated_date":"2026-03-27T05:58:40.876381","created_date":"2025-10-09T00:00:00"}
