{"id":"https://openalex.org/W2900044545","doi":"https://doi.org/10.1145/3290361","title":"Context-, flow-, and field-sensitive data-flow analysis using synchronized Pushdown systems","display_name":"Context-, flow-, and field-sensitive data-flow analysis using synchronized Pushdown systems","publication_year":2019,"publication_date":"2019-01-02","ids":{"openalex":"https://openalex.org/W2900044545","doi":"https://doi.org/10.1145/3290361","mag":"2900044545"},"language":"en","primary_location":{"id":"doi:10.1145/3290361","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3290361","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3290361","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/3290361","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5008520601","display_name":"Johannes Sp\u00e4th","orcid":"https://orcid.org/0000-0003-4462-9372"},"institutions":[{"id":"https://openalex.org/I4210093498","display_name":"Fraunhofer Institute for Mechatronic Systems Design","ror":"https://ror.org/004nttc42","country_code":"DE","type":"facility","lineage":["https://openalex.org/I4210093498","https://openalex.org/I4923324"]}],"countries":["DE"],"is_corresponding":true,"raw_author_name":"Johannes Sp\u00e4th","raw_affiliation_strings":["Fraunhofer IEM, Germany"],"affiliations":[{"raw_affiliation_string":"Fraunhofer IEM, Germany","institution_ids":["https://openalex.org/I4210093498"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5038781215","display_name":"Karim Ali","orcid":"https://orcid.org/0000-0002-5516-1376"},"institutions":[{"id":"https://openalex.org/I154425047","display_name":"University of Alberta","ror":"https://ror.org/0160cpw27","country_code":"CA","type":"education","lineage":["https://openalex.org/I154425047"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Karim Ali","raw_affiliation_strings":["University of Alberta, Canada"],"affiliations":[{"raw_affiliation_string":"University of Alberta, Canada","institution_ids":["https://openalex.org/I154425047"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5076678278","display_name":"Eric Bodden","orcid":"https://orcid.org/0000-0003-3470-3647"},"institutions":[{"id":"https://openalex.org/I206945453","display_name":"Paderborn University","ror":"https://ror.org/058kzsd48","country_code":"DE","type":"education","lineage":["https://openalex.org/I206945453"]},{"id":"https://openalex.org/I4210093498","display_name":"Fraunhofer Institute for Mechatronic Systems Design","ror":"https://ror.org/004nttc42","country_code":"DE","type":"facility","lineage":["https://openalex.org/I4210093498","https://openalex.org/I4923324"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Eric Bodden","raw_affiliation_strings":["University of Paderborn, Germany / Fraunhofer IEM, Germany"],"affiliations":[{"raw_affiliation_string":"University of Paderborn, Germany / Fraunhofer IEM, Germany","institution_ids":["https://openalex.org/I4210093498","https://openalex.org/I206945453"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5008520601"],"corresponding_institution_ids":["https://openalex.org/I4210093498"],"apc_list":null,"apc_paid":null,"fwci":6.966,"has_fulltext":true,"cited_by_count":72,"citation_normalized_percentile":{"value":0.97686265,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":96,"max":100},"biblio":{"volume":"3","issue":"POPL","first_page":"1","last_page":"29"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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.9991000294685364,"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/T10126","display_name":"Logic, programming, and type systems","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/reachability","display_name":"Reachability","score":0.8102701902389526},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6563199758529663},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.6039573550224304},{"id":"https://openalex.org/keywords/path","display_name":"Path (computing)","score":0.5811368823051453},{"id":"https://openalex.org/keywords/flow","display_name":"Flow (mathematics)","score":0.5583192110061646},{"id":"https://openalex.org/keywords/sensitivity","display_name":"Sensitivity (control systems)","score":0.5161405801773071},{"id":"https://openalex.org/keywords/decidability","display_name":"Decidability","score":0.5101673603057861},{"id":"https://openalex.org/keywords/undecidable-problem","display_name":"Undecidable problem","score":0.49856042861938477},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4961722791194916},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.49092796444892883},{"id":"https://openalex.org/keywords/field","display_name":"Field (mathematics)","score":0.4880777597427368},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.4502536356449127},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.3373681306838989},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.08750346302986145},{"id":"https://openalex.org/keywords/pure-mathematics","display_name":"Pure mathematics","score":0.07197496294975281},{"id":"https://openalex.org/keywords/geometry","display_name":"Geometry","score":0.07189983129501343}],"concepts":[{"id":"https://openalex.org/C136643341","wikidata":"https://www.wikidata.org/wiki/Q1361526","display_name":"Reachability","level":2,"score":0.8102701902389526},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6563199758529663},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.6039573550224304},{"id":"https://openalex.org/C2777735758","wikidata":"https://www.wikidata.org/wiki/Q817765","display_name":"Path (computing)","level":2,"score":0.5811368823051453},{"id":"https://openalex.org/C38349280","wikidata":"https://www.wikidata.org/wiki/Q1434290","display_name":"Flow (mathematics)","level":2,"score":0.5583192110061646},{"id":"https://openalex.org/C21200559","wikidata":"https://www.wikidata.org/wiki/Q7451068","display_name":"Sensitivity (control systems)","level":2,"score":0.5161405801773071},{"id":"https://openalex.org/C153269930","wikidata":"https://www.wikidata.org/wiki/Q430001","display_name":"Decidability","level":2,"score":0.5101673603057861},{"id":"https://openalex.org/C192034797","wikidata":"https://www.wikidata.org/wiki/Q3502995","display_name":"Undecidable problem","level":3,"score":0.49856042861938477},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4961722791194916},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.49092796444892883},{"id":"https://openalex.org/C9652623","wikidata":"https://www.wikidata.org/wiki/Q190109","display_name":"Field (mathematics)","level":2,"score":0.4880777597427368},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.4502536356449127},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.3373681306838989},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.08750346302986145},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.07197496294975281},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.07189983129501343},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C24326235","wikidata":"https://www.wikidata.org/wiki/Q126095","display_name":"Electronic engineering","level":1,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3290361","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3290361","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3290361","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/3290361","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3290361","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3290361","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":[{"id":"https://openalex.org/F4320330076","display_name":"Heinz Nixdorf Stiftung","ror":"https://ror.org/04j2tkk21"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2900044545.pdf","grobid_xml":"https://content.openalex.org/works/W2900044545.grobid-xml"},"referenced_works_count":64,"referenced_works":["https://openalex.org/W64156013","https://openalex.org/W100599422","https://openalex.org/W1491036809","https://openalex.org/W1505465226","https://openalex.org/W1517071433","https://openalex.org/W1521221596","https://openalex.org/W1536098516","https://openalex.org/W1589089428","https://openalex.org/W1589224558","https://openalex.org/W1591136029","https://openalex.org/W1604043045","https://openalex.org/W1614825945","https://openalex.org/W1769779070","https://openalex.org/W1846157972","https://openalex.org/W1915915253","https://openalex.org/W1966032455","https://openalex.org/W1970363544","https://openalex.org/W1971327145","https://openalex.org/W1986453394","https://openalex.org/W1986882968","https://openalex.org/W1990810662","https://openalex.org/W1997981086","https://openalex.org/W2017722158","https://openalex.org/W2036157748","https://openalex.org/W2036208810","https://openalex.org/W2044590882","https://openalex.org/W2080573945","https://openalex.org/W2102440514","https://openalex.org/W2105285801","https://openalex.org/W2110833886","https://openalex.org/W2112836639","https://openalex.org/W2119137801","https://openalex.org/W2124153277","https://openalex.org/W2125357166","https://openalex.org/W2133497528","https://openalex.org/W2134429122","https://openalex.org/W2140430779","https://openalex.org/W2140495200","https://openalex.org/W2150874411","https://openalex.org/W2166743230","https://openalex.org/W2169304846","https://openalex.org/W2169953045","https://openalex.org/W2178618765","https://openalex.org/W2209684412","https://openalex.org/W2247002685","https://openalex.org/W2289508293","https://openalex.org/W2396234346","https://openalex.org/W2553375745","https://openalex.org/W2561266941","https://openalex.org/W2623757933","https://openalex.org/W2761352457","https://openalex.org/W2763994238","https://openalex.org/W2770491639","https://openalex.org/W2777662281","https://openalex.org/W2787928226","https://openalex.org/W2796472165","https://openalex.org/W2910404958","https://openalex.org/W2952465326","https://openalex.org/W3005728772","https://openalex.org/W3101981126","https://openalex.org/W3124619212","https://openalex.org/W3163215105","https://openalex.org/W4243644740","https://openalex.org/W4244831445"],"related_works":["https://openalex.org/W2972379433","https://openalex.org/W1501430220","https://openalex.org/W2989332944","https://openalex.org/W2021891065","https://openalex.org/W2583549044","https://openalex.org/W2119045600","https://openalex.org/W2584984136","https://openalex.org/W2962928105","https://openalex.org/W2170336571","https://openalex.org/W2020140696"],"abstract_inverted_index":{"Precise":[0],"static":[1],"analyses":[2,37,263],"are":[3,11,126,136,146,205],"context-,":[4],"field-":[5],"and":[6,9,52,101,118,182,254],"flow-sensitive.":[7],"Context-":[8],"field-sensitivity":[10,39],"both":[12,21,56,98,114,134],"expressible":[13],"as":[14,49,104,207,209],"context-free":[15],"language":[16],"(CFL)":[17],"reachability":[18,109],"problems.":[19,110],"Solving":[20],"CFL":[22,108],"problems":[23,116,135],"along":[24,140],"the":[25,89,141,156,178,184,227],"same":[26,142],"data-flow":[27,36,143],"path":[28],"is":[29,32,76,177],"undecidable,":[30],"which":[31],"why":[33],"most":[34],"flow-sensitive":[35],"over-approximate":[38],"through":[40,45],"k":[41,163,165,210,213,219],"-limited":[42],"access-path,":[43],"or":[44],"access":[46],"graphs.":[47],"Unfortunately,":[48],"our":[50],"experience":[51],"this":[53,197],"paper":[54],"show,":[55],"representations":[57],"do":[58],"not":[59,139],"scale":[60],"very":[61],"well":[62],"when":[63,260],"used":[64,261],"to":[65,167,199,230],"analyze":[66],"programs":[67],"with":[68,212],"recursive":[69],"data":[70,268],"structures.":[71],"Any":[72],"single":[73],"CFL-reachability":[74],"problem":[75],"efficiently":[77],"solvable,":[78],"by":[79],"means":[80],"of":[81,91,180,186,234],"a":[82,190,222],"pushdown":[83,93],"system.":[84],"This":[85],"work":[86],"thus":[87],"introduces":[88],"concept":[90],"synchronized":[92],"systems":[94],"(SPDS).":[95],"SPDS":[96,112,145,154,204,225,249],"encode":[97],"procedure":[99],"calls/returns":[100],"field":[102,239],"stores/loads":[103],"separate":[105],"but":[106,138,241],"\u201csynchronized\u201d":[107],"An":[111],"solves":[113],"individual":[115],"precisely,":[117],"approximation":[119],"occurs":[120],"only":[121],"in":[122,129,189,202,258,262],"corner":[123],"cases":[124],"that":[125,153,236,248,264],"apparently":[127],"rare":[128],"practice:":[130,203],"at":[131],"statements":[132,187],"where":[133,175],"satisfied":[137],"path.":[144],"also":[147],"efficient:":[148],"formal":[149],"complexity":[150,157],"analysis":[151,224,228],"shows":[152,196],"shift":[155,198],"from":[158],"|":[159,161,168,172],"F":[160,171,176],"3":[162],"under":[164],"-limiting":[166,211],"S":[169,183],"||":[170],"2":[173],",":[174],"set":[179,185],"fields":[181],"involved":[188],"data-flow.":[191],"Our":[192],"evaluation":[193],"using":[194],"DaCapo":[195],"pay":[200],"off":[201],"almost":[206],"efficient":[208],"=1":[214],"although":[215],"their":[216],"precision":[217,253],"equals":[218],"=\u221e.":[220],"For":[221],"typestate":[223],"accelerate":[226],"up":[229],"83\u00d7":[231],"for":[232],"data-flows":[233],"objects":[235],"involve":[237],"many":[238],"accesses":[240],"span":[242],"rather":[243,266],"few":[244],"methods.":[245],"We":[246],"conclude":[247],"can":[250],"provide":[251],"high":[252],"further":[255],"improve":[256],"scalability,":[257],"particularly":[259],"expose":[265],"local":[267],"flows.":[269]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":5},{"year":2024,"cited_by_count":10},{"year":2023,"cited_by_count":14},{"year":2022,"cited_by_count":11},{"year":2021,"cited_by_count":18},{"year":2020,"cited_by_count":10},{"year":2019,"cited_by_count":3}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
