{"id":"https://openalex.org/W4307731800","doi":"https://doi.org/10.1145/3563343","title":"Taming transitive redundancy for context-free language reachability","display_name":"Taming transitive redundancy for context-free language reachability","publication_year":2022,"publication_date":"2022-10-31","ids":{"openalex":"https://openalex.org/W4307731800","doi":"https://doi.org/10.1145/3563343"},"language":"en","primary_location":{"id":"doi:10.1145/3563343","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563343","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563343","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/3563343","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5082964108","display_name":"Yuxiang Lei","orcid":"https://orcid.org/0000-0002-4484-8172"},"institutions":[{"id":"https://openalex.org/I114017466","display_name":"University of Technology Sydney","ror":"https://ror.org/03f0f6041","country_code":"AU","type":"education","lineage":["https://openalex.org/I114017466"]}],"countries":["AU"],"is_corresponding":false,"raw_author_name":"Yuxiang Lei","raw_affiliation_strings":["University of Technology Sydney, Australia"],"raw_orcid":"https://orcid.org/0000-0002-4484-8172","affiliations":[{"raw_affiliation_string":"University of Technology Sydney, Australia","institution_ids":["https://openalex.org/I114017466"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5053058502","display_name":"Yulei Sui","orcid":"https://orcid.org/0000-0002-9510-6574"},"institutions":[{"id":"https://openalex.org/I114017466","display_name":"University of Technology Sydney","ror":"https://ror.org/03f0f6041","country_code":"AU","type":"education","lineage":["https://openalex.org/I114017466"]}],"countries":["AU"],"is_corresponding":false,"raw_author_name":"Yulei Sui","raw_affiliation_strings":["University of Technology Sydney, Australia"],"raw_orcid":"https://orcid.org/0000-0002-9510-6574","affiliations":[{"raw_affiliation_string":"University of Technology Sydney, Australia","institution_ids":["https://openalex.org/I114017466"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5084788593","display_name":"Shuo Ding","orcid":"https://orcid.org/0000-0003-0843-0729"},"institutions":[{"id":"https://openalex.org/I130701444","display_name":"Georgia Institute of Technology","ror":"https://ror.org/01zkghx44","country_code":"US","type":"education","lineage":["https://openalex.org/I130701444"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Shuo Ding","raw_affiliation_strings":["Georgia Institute of Technology, USA"],"raw_orcid":"https://orcid.org/0000-0003-0843-0729","affiliations":[{"raw_affiliation_string":"Georgia Institute of Technology, USA","institution_ids":["https://openalex.org/I130701444"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5078231842","display_name":"Qirun Zhang","orcid":"https://orcid.org/0000-0001-5367-9377"},"institutions":[{"id":"https://openalex.org/I130701444","display_name":"Georgia Institute of Technology","ror":"https://ror.org/01zkghx44","country_code":"US","type":"education","lineage":["https://openalex.org/I130701444"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Qirun Zhang","raw_affiliation_strings":["Georgia Institute of Technology, USA"],"raw_orcid":"https://orcid.org/0000-0001-5367-9377","affiliations":[{"raw_affiliation_string":"Georgia Institute of Technology, USA","institution_ids":["https://openalex.org/I130701444"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":3.5404,"has_fulltext":true,"cited_by_count":15,"citation_normalized_percentile":{"value":0.93344334,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":98},"biblio":{"volume":"6","issue":"OOPSLA2","first_page":"1556","last_page":"1582"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9991000294685364,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9991000294685364,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T12127","display_name":"Software System Performance and Reliability","score":0.9958000183105469,"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/T10260","display_name":"Software Engineering Research","score":0.9941999912261963,"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/reachability","display_name":"Reachability","score":0.92850261926651},{"id":"https://openalex.org/keywords/transitive-closure","display_name":"Transitive closure","score":0.6842790842056274},{"id":"https://openalex.org/keywords/redundancy","display_name":"Redundancy (engineering)","score":0.6622454524040222},{"id":"https://openalex.org/keywords/transitive-relation","display_name":"Transitive relation","score":0.6563765406608582},{"id":"https://openalex.org/keywords/transitive-reduction","display_name":"Transitive reduction","score":0.6447025537490845},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.5875220894813538},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.5108339786529541},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.5052695870399475},{"id":"https://openalex.org/keywords/graph","display_name":"Graph","score":0.4442515969276428},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.4219362735748291},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.4158775508403778},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.30443352460861206},{"id":"https://openalex.org/keywords/combinatorics","display_name":"Combinatorics","score":0.17781656980514526},{"id":"https://openalex.org/keywords/line-graph","display_name":"Line graph","score":0.17534270882606506},{"id":"https://openalex.org/keywords/voltage-graph","display_name":"Voltage graph","score":0.11308389902114868}],"concepts":[{"id":"https://openalex.org/C136643341","wikidata":"https://www.wikidata.org/wiki/Q1361526","display_name":"Reachability","level":2,"score":0.92850261926651},{"id":"https://openalex.org/C128896722","wikidata":"https://www.wikidata.org/wiki/Q1501387","display_name":"Transitive closure","level":2,"score":0.6842790842056274},{"id":"https://openalex.org/C152124472","wikidata":"https://www.wikidata.org/wiki/Q1204361","display_name":"Redundancy (engineering)","level":2,"score":0.6622454524040222},{"id":"https://openalex.org/C191399111","wikidata":"https://www.wikidata.org/wiki/Q64861","display_name":"Transitive relation","level":2,"score":0.6563765406608582},{"id":"https://openalex.org/C129691609","wikidata":"https://www.wikidata.org/wiki/Q3088151","display_name":"Transitive reduction","level":5,"score":0.6447025537490845},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.5875220894813538},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.5108339786529541},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.5052695870399475},{"id":"https://openalex.org/C132525143","wikidata":"https://www.wikidata.org/wiki/Q141488","display_name":"Graph","level":2,"score":0.4442515969276428},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.4219362735748291},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.4158775508403778},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.30443352460861206},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.17781656980514526},{"id":"https://openalex.org/C203776342","wikidata":"https://www.wikidata.org/wiki/Q1378376","display_name":"Line graph","level":3,"score":0.17534270882606506},{"id":"https://openalex.org/C22149727","wikidata":"https://www.wikidata.org/wiki/Q7940747","display_name":"Voltage graph","level":4,"score":0.11308389902114868},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.0},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3563343","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563343","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563343","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"}],"best_oa_location":{"id":"doi:10.1145/3563343","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563343","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563343","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/G1453356816","display_name":"SHF:Small: Debug Information Validation for Optimizing Compilers","funder_award_id":"2114627","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G1643666990","display_name":null,"funder_award_id":"N66001- 21-C-4024","funder_id":"https://openalex.org/F4320332180","funder_display_name":"Defense Advanced Research Projects Agency"},{"id":"https://openalex.org/G1830883894","display_name":"SHF:Small:Scalable and Precise Program Analyses via Linear Conjunctive Language Reachability","funder_award_id":"1917924","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320332180","display_name":"Defense Advanced Research Projects Agency","ror":"https://ror.org/02caytj08"},{"id":"https://openalex.org/F4320332815","display_name":"Advanced Research Projects Agency","ror":"https://ror.org/02caytj08"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4307731800.pdf","grobid_xml":"https://content.openalex.org/works/W4307731800.grobid-xml"},"referenced_works_count":38,"referenced_works":["https://openalex.org/W1829276407","https://openalex.org/W1966032455","https://openalex.org/W1976177462","https://openalex.org/W1981358946","https://openalex.org/W1981904441","https://openalex.org/W1997981086","https://openalex.org/W2031507118","https://openalex.org/W2064982280","https://openalex.org/W2072385532","https://openalex.org/W2076447414","https://openalex.org/W2079752311","https://openalex.org/W2080573945","https://openalex.org/W2084063516","https://openalex.org/W2084816051","https://openalex.org/W2110920860","https://openalex.org/W2119137801","https://openalex.org/W2145911832","https://openalex.org/W2158487182","https://openalex.org/W2297774820","https://openalex.org/W2493901872","https://openalex.org/W2534652523","https://openalex.org/W2582132278","https://openalex.org/W2777662281","https://openalex.org/W2978234104","https://openalex.org/W2985829845","https://openalex.org/W2998965762","https://openalex.org/W3005402394","https://openalex.org/W3013983845","https://openalex.org/W3019415692","https://openalex.org/W3095860260","https://openalex.org/W3126200532","https://openalex.org/W3130008218","https://openalex.org/W4225793633","https://openalex.org/W4234849644","https://openalex.org/W4234858006","https://openalex.org/W4237417046","https://openalex.org/W4247889999","https://openalex.org/W6912869350"],"related_works":["https://openalex.org/W1553139688","https://openalex.org/W2362009423","https://openalex.org/W2371151875","https://openalex.org/W2383282217","https://openalex.org/W2136009070","https://openalex.org/W4230967508","https://openalex.org/W2012063573","https://openalex.org/W1499233953","https://openalex.org/W1994877243","https://openalex.org/W1996983051"],"abstract_inverted_index":{"Given":[0],"an":[1],"edge-labeled":[2],"graph,":[3],"context-free":[4],"language":[5],"reachability":[6],"(CFL-reachability)":[7],"computes":[8],"reachable":[9,49,64],"node":[10,65],"pairs":[11],"by":[12,103,152,186],"deriving":[13],"new":[14],"edges":[15,36],"and":[16,83,118,156,173,200,217,225,232,252,268,276],"adding":[17],"them":[18],"to":[19,43,81,99,179],"the":[20,26,44,58,120,131,135,139,181,207,223,235],"graph.":[21],"The":[22,257],"redundancy":[23,55,72,190],"that":[24,53,112,260],"limits":[25],"scalability":[27],"of":[28,63,183,210,230],"CFL-reachability":[29,89,101,144,184,237,250],"manifests":[30],"as":[31],"redundant":[32,85,219],"derivations,":[33],"i.e.,":[34],"identical":[35],"can":[37,125],"be":[38],"derived":[39],"multiple":[40],"times":[41],"due":[42],"many":[45],"paths":[46],"between":[47],"two":[48,244],"nodes.":[50],"We":[51,239],"observe":[52],"most":[54,127],"arises":[56],"from":[57,138],"derivations":[59,86,220],"involving":[60],"transitive":[61,106,113,189],"relations":[62,114],"pairs.":[66],"Unfortunately,":[67],"existing":[68],"techniques":[69],"for":[70,122,204,222,272],"reducing":[71,187],"in":[73,133],"transitive-closure-based":[74],"problems":[75],"are":[76,115],"either":[77],"ineffective":[78],"or":[79],"inapplicable":[80],"identifying":[82],"eliminating":[84],"during":[87,143,191],"on-the-fly":[88,192],"solving.":[90,193],"This":[91],"paper":[92],"proposes":[93],"a":[94,148,161,171],"scalable":[95],"yet":[96],"precision-preserving":[97],"approach":[98],"all-pairs":[100],"analysis":[102,185,199,203,275],"taming":[104],"its":[105,188],"redundancy.":[107,128],"Our":[108,194],"key":[109],"insight":[110],"is":[111,262],"intrinsically":[116],"ordered,":[117],"utilizing":[119],"order":[121,137],"edge":[123],"derivation":[124,136],"avoid":[126],"To":[129],"address":[130],"challenges":[132],"determining":[134],"dynamically":[140],"changed":[141],"graph":[142,150],"solving,":[145],"we":[146,169],"introduce":[147],"hybrid":[149],"representation":[151],"combining":[153],"spanning":[154],"trees":[155],"adjacency":[157],"lists,":[158],"together":[159],"with":[160,243],"dynamic":[162],"construction":[163],"algorithm.":[164,238],"Based":[165],"on":[166,196,270],"this":[167],"representation,":[168],"propose":[170],"fast":[172],"effective":[174],"partially":[175],"ordered":[176],"algorithm":[177],"POCR":[178,214,242,261],"boost":[180],"performance":[182,209],"experiments":[195],"context-sensitive":[197],"value-flow":[198,224,274],"field-sensitive":[201],"alias":[202,226,277],"C/C++":[205],"demonstrate":[206,259],"promising":[208],"POCR.":[211],"On":[212],"average,":[213],"eliminates":[215],"98.50%":[216],"97.26%":[218],"respectively":[221],"analysis,":[227],"achieving":[228],"speedups":[229],"21.48\u00d7":[231],"19.57\u00d7":[233],"over":[234,263],"standard":[236],"also":[240],"compare":[241],"recent":[245],"open-source":[246],"tools,":[247],"Graspan":[248,267],"(a":[249,254],"solver)":[251],"Souffl\u00e9":[253,269],"Datalog":[255],"engine).":[256],"results":[258],"3.67\u00d7":[264],"faster":[265],"than":[266],"average":[271],"both":[273],"analysis.":[278]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":6},{"year":2023,"cited_by_count":4}],"updated_date":"2026-08-01T09:00:35.917206","created_date":"2025-10-10T00:00:00"}
