{"id":"https://openalex.org/W2980011154","doi":"https://doi.org/10.1145/3360583","title":"Precise reasoning with structured time, structured heaps, and collective operations","display_name":"Precise reasoning with structured time, structured heaps, and collective operations","publication_year":2019,"publication_date":"2019-10-10","ids":{"openalex":"https://openalex.org/W2980011154","doi":"https://doi.org/10.1145/3360583","mag":"2980011154"},"language":"en","primary_location":{"id":"doi:10.1145/3360583","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3360583","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3360583","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/3360583","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5015770451","display_name":"Gr\u00e9gory M. Essertel","orcid":null},"institutions":[{"id":"https://openalex.org/I219193219","display_name":"Purdue University West Lafayette","ror":"https://ror.org/02dqehb95","country_code":"US","type":"education","lineage":["https://openalex.org/I219193219"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Gr\u00e9gory M. Essertel","raw_affiliation_strings":["Purdue University, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Purdue University, USA","institution_ids":["https://openalex.org/I219193219"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5054308182","display_name":"Guannan Wei","orcid":"https://orcid.org/0000-0002-3150-2033"},"institutions":[{"id":"https://openalex.org/I219193219","display_name":"Purdue University West Lafayette","ror":"https://ror.org/02dqehb95","country_code":"US","type":"education","lineage":["https://openalex.org/I219193219"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Guannan Wei","raw_affiliation_strings":["Purdue University, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Purdue University, USA","institution_ids":["https://openalex.org/I219193219"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5003153354","display_name":"Tiark Rompf","orcid":"https://orcid.org/0000-0002-2068-3238"},"institutions":[{"id":"https://openalex.org/I219193219","display_name":"Purdue University West Lafayette","ror":"https://ror.org/02dqehb95","country_code":"US","type":"education","lineage":["https://openalex.org/I219193219"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Tiark Rompf","raw_affiliation_strings":["Purdue University, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Purdue University, USA","institution_ids":["https://openalex.org/I219193219"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I219193219"],"apc_list":null,"apc_paid":null,"fwci":1.3645,"has_fulltext":true,"cited_by_count":7,"citation_normalized_percentile":{"value":0.81991975,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":88,"max":97},"biblio":{"volume":"3","issue":"OOPSLA","first_page":"1","last_page":"30"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998999834060669,"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"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998999834060669,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9990000128746033,"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/T10260","display_name":"Software Engineering Research","score":0.9976000189781189,"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.8264341354370117},{"id":"https://openalex.org/keywords/program-analysis","display_name":"Program analysis","score":0.6361436247825623},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5770208239555359},{"id":"https://openalex.org/keywords/heap","display_name":"Heap (data structure)","score":0.5747355818748474},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.548240602016449},{"id":"https://openalex.org/keywords/c-dynamic-memory-allocation","display_name":"C dynamic memory allocation","score":0.4988408088684082},{"id":"https://openalex.org/keywords/symbolic-execution","display_name":"Symbolic execution","score":0.4678502678871155},{"id":"https://openalex.org/keywords/data-structure","display_name":"Data structure","score":0.44560280442237854},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.43669384717941284},{"id":"https://openalex.org/keywords/memory-model","display_name":"Memory model","score":0.42475053668022156},{"id":"https://openalex.org/keywords/merge","display_name":"Merge (version control)","score":0.424611896276474},{"id":"https://openalex.org/keywords/compile-time","display_name":"Compile time","score":0.4181176722049713},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.19022992253303528},{"id":"https://openalex.org/keywords/shared-memory","display_name":"Shared memory","score":0.1827702820301056},{"id":"https://openalex.org/keywords/overlay","display_name":"Overlay","score":0.1454589068889618}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8264341354370117},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.6361436247825623},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5770208239555359},{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.5747355818748474},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.548240602016449},{"id":"https://openalex.org/C34339311","wikidata":"https://www.wikidata.org/wiki/Q1050390","display_name":"C dynamic memory allocation","level":4,"score":0.4988408088684082},{"id":"https://openalex.org/C2779639559","wikidata":"https://www.wikidata.org/wiki/Q7661178","display_name":"Symbolic execution","level":3,"score":0.4678502678871155},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.44560280442237854},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.43669384717941284},{"id":"https://openalex.org/C12186640","wikidata":"https://www.wikidata.org/wiki/Q6815743","display_name":"Memory model","level":3,"score":0.42475053668022156},{"id":"https://openalex.org/C197129107","wikidata":"https://www.wikidata.org/wiki/Q1921621","display_name":"Merge (version control)","level":2,"score":0.424611896276474},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.4181176722049713},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.19022992253303528},{"id":"https://openalex.org/C133875982","wikidata":"https://www.wikidata.org/wiki/Q764810","display_name":"Shared memory","level":2,"score":0.1827702820301056},{"id":"https://openalex.org/C136085584","wikidata":"https://www.wikidata.org/wiki/Q910289","display_name":"Overlay","level":2,"score":0.1454589068889618},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.0},{"id":"https://openalex.org/C176649486","wikidata":"https://www.wikidata.org/wiki/Q2308807","display_name":"Memory management","level":3,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3360583","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3360583","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3360583","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/3360583","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3360583","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3360583","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/G1083356329","display_name":"SHF: Medium: Collaborative Research: From Volume to Velocity: Big Data Analytics in Near-Realtime","funder_award_id":"1564207","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G3747613611","display_name":"CAREER: Generative Programming and DSLs for Safe Performance Critical Systems","funder_award_id":"1553471","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G632803094","display_name":"PROGRAM GENERATORS FOR EXASCALE AND BEYOND","funder_award_id":"DESC0018050","funder_id":"https://openalex.org/F4320306084","funder_display_name":"U.S. Department of Energy"},{"id":"https://openalex.org/G6500779413","display_name":null,"funder_award_id":"DE-SC001805","funder_id":"https://openalex.org/F4320306084","funder_display_name":"U.S. Department of Energy"},{"id":"https://openalex.org/G787217599","display_name":"FMitF: Track I: Symbolic Reasoning with Graph Networks","funder_award_id":"1918483","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/F4320306084","display_name":"U.S. Department of Energy","ror":"https://ror.org/01bj3aw27"},{"id":"https://openalex.org/F4320309327","display_name":"Google","ror":"https://ror.org/00njsd438"},{"id":"https://openalex.org/F4320316785","display_name":"VMware","ror":"https://ror.org/01mwmh458"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2980011154.pdf","grobid_xml":"https://content.openalex.org/works/W2980011154.grobid-xml"},"referenced_works_count":63,"referenced_works":["https://openalex.org/W1598202309","https://openalex.org/W1987727095","https://openalex.org/W1991069419","https://openalex.org/W1991837261","https://openalex.org/W1992012690","https://openalex.org/W1997978901","https://openalex.org/W2008070495","https://openalex.org/W2013885073","https://openalex.org/W2022800813","https://openalex.org/W2027402438","https://openalex.org/W2040943118","https://openalex.org/W2047937237","https://openalex.org/W2059518671","https://openalex.org/W2060697066","https://openalex.org/W2078738604","https://openalex.org/W2081418732","https://openalex.org/W2095810701","https://openalex.org/W2097699872","https://openalex.org/W2100894869","https://openalex.org/W2103953153","https://openalex.org/W2104958979","https://openalex.org/W2110423393","https://openalex.org/W2111996055","https://openalex.org/W2118927907","https://openalex.org/W2119179558","https://openalex.org/W2119664062","https://openalex.org/W2121457325","https://openalex.org/W2125346056","https://openalex.org/W2130179171","https://openalex.org/W2137628566","https://openalex.org/W2139900441","https://openalex.org/W2143609451","https://openalex.org/W2149127686","https://openalex.org/W2289508293","https://openalex.org/W2294854295","https://openalex.org/W2398327122","https://openalex.org/W2409856616","https://openalex.org/W2412440871","https://openalex.org/W2513640037","https://openalex.org/W2556618900","https://openalex.org/W2560674852","https://openalex.org/W2560908054","https://openalex.org/W2572499666","https://openalex.org/W2594730095","https://openalex.org/W2626029330","https://openalex.org/W2798609500","https://openalex.org/W2953057551","https://openalex.org/W2998195985","https://openalex.org/W3003421191","https://openalex.org/W3010216686","https://openalex.org/W3011838635","https://openalex.org/W3043123483","https://openalex.org/W3045575840","https://openalex.org/W3117114023","https://openalex.org/W3119451573","https://openalex.org/W4231970275","https://openalex.org/W4233804642","https://openalex.org/W4234890740","https://openalex.org/W4235348386","https://openalex.org/W4235832836","https://openalex.org/W4239564484","https://openalex.org/W4240382083","https://openalex.org/W4246378947"],"related_works":["https://openalex.org/W345638404","https://openalex.org/W2006860739","https://openalex.org/W2514597554","https://openalex.org/W2401568214","https://openalex.org/W3026405340","https://openalex.org/W2152565783","https://openalex.org/W3134905881","https://openalex.org/W2996310549","https://openalex.org/W2082172430","https://openalex.org/W4245197793"],"abstract_inverted_index":{"Despite":[0],"decades":[1],"of":[2,71,109,141,202],"progress,":[3],"static":[4],"analysis":[5,97,178,257],"tools":[6],"still":[7],"have":[8],"great":[9],"difficulty":[10],"dealing":[11],"with":[12,159],"programs":[13],"that":[14,136,187,195],"combine":[15],"arithmetic,":[16],"loops,":[17],"dynamic":[18,157],"memory":[19],"allocation,":[20],"and":[21,45,73,104,120,148,191,232,266],"linked":[22],"data":[23,52],"structures.":[24],"In":[25],"this":[26,36,230],"paper":[27,168],"we":[28,88],"draw":[29],"attention":[30],"to":[31,62,90,229,256,271],"two":[32],"fundamental":[33],"reasons":[34],"for":[35,124,220,258],"difficulty:":[37],"First,":[38],"typical":[39],"underlying":[40,223],"program":[41,77,96,118,165,264],"abstractions":[42],"are":[43,226],"low-level":[44],"inherently":[46],"scalar,":[47],"characterizing":[48],"compound":[49],"entities":[50],"like":[51],"structures":[53],"or":[54],"results":[55,198,209],"computed":[56],"through":[57],"iteration":[58],"only":[59],"indirectly.":[60],"Second,":[61],"ensure":[63],"termination,":[64],"analyses":[65],"typically":[66],"project":[67],"away":[68],"the":[69,107,144,156,164],"dimension":[70,140],"time,":[72,142],"merge":[74],"information":[75],"per":[76],"point,":[78],"which":[79,216],"incurs":[80],"a":[81,86,131,138,160,170,175,180,184,200,211,218,244],"loss":[82],"in":[83,95,102,117,155,163,183,210,236,243],"precision.":[84],"As":[85],"remedy,":[87],"propose":[89,130],"make":[91],"collective":[92],"operations":[93,116],"first-class":[94],"\u2013":[98],"inspired":[99],"by":[100,106],"\u03a3-notation":[101],"mathematics,":[103],"also":[105,262],"success":[108],"high-level":[110,176],"intermediate":[111,177],"languages":[112,126],"based":[113,173],"on":[114,174,199],"@map/reduce@":[115],"generators":[119],"aggressive":[121],"optimizing":[122],"compilers":[123],"domain-specific":[125],"(DSLs).":[127],"We":[128],"further":[129],"novel":[132],"structured":[133],"heap":[134],"abstraction":[135],"preserves":[137],"symbolic":[139],"reflecting":[143],"program\u2019s":[145],"loop":[146],"structure":[147],"thus":[149],"unambiguously":[150],"correlating":[151],"multiple":[152],"temporal":[153],"points":[154],"execution":[158],"single":[161],"point":[162],"text.":[166],"This":[167],"presents":[169],"formal":[171],"model,":[172,215],"language,":[179],"practical":[181],"realization":[182],"prototype":[185],"tool":[186],"analyzes":[188],"C":[189,269],"code,":[190],"an":[192],"experimental":[193],"evaluation":[194],"demonstrates":[196],"competitive":[197],"series":[201],"benchmarks.":[203],"Remarkably,":[204],"our":[205,251],"implementation":[206,252],"achieves":[207],"these":[208],"fully":[212],"semantics-preserving":[213,249],"strongest-postcondition":[214],"is":[217,253],"worst-case":[219],"analysis/verification.":[221],"The":[222],"ideas,":[224],"however,":[225],"not":[227,254],"tied":[228],"model":[231],"would":[233],"equally":[234],"apply":[235],"other":[237],"settings,":[238],"e.g.,":[239],"demand-driven":[240],"invariant":[241],"inference":[242],"weakest-precondition":[245],"model.":[246],"Given":[247],"its":[248],"nature,":[250],"limited":[255],"verification,":[259],"but":[260],"can":[261],"check":[263],"equivalence,":[265],"translate":[267],"legacy":[268],"code":[270],"high-performance":[272],"DSLs.":[273]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":1}],"updated_date":"2026-08-29T07:29:34.045763","created_date":"2025-10-10T00:00:00"}
