{"id":"https://openalex.org/W2017722158","doi":"https://doi.org/10.1145/1290520.1290521","title":"Heap reference analysis using access graphs","display_name":"Heap reference analysis using access graphs","publication_year":2007,"publication_date":"2007-11-01","ids":{"openalex":"https://openalex.org/W2017722158","doi":"https://doi.org/10.1145/1290520.1290521","mag":"2017722158"},"language":"en","primary_location":{"id":"doi:10.1145/1290520.1290521","doi":"https://doi.org/10.1145/1290520.1290521","is_oa":true,"landing_page_url":"https://doi.org/10.1145/1290520.1290521","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/1290520.1290521","source":{"id":"https://openalex.org/S41449414","display_name":"ACM Transactions on Programming Languages and Systems","issn_l":"0164-0925","issn":["0164-0925","1558-4593"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core","jufo-3","norway-2"],"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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Programming Languages and Systems","raw_type":"journal-article"},"volume":null,"type":"article","indexed_in":["arxiv","crossref","datacite"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://dl.acm.org/doi/pdf/10.1145/1290520.1290521","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Uday P. Khedker","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I162827531","display_name":"Indian Institute of Technology Bombay","ror":"https://ror.org/02qyf5152","country_code":"IN","type":"education","lineage":["https://openalex.org/I162827531"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Uday P. Khedker","raw_affiliation_strings":["IIT Bombay, Mumbai, India"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IIT Bombay, Mumbai, India","institution_ids":["https://openalex.org/I162827531"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Amitabha Sanyal","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I162827531","display_name":"Indian Institute of Technology Bombay","ror":"https://ror.org/02qyf5152","country_code":"IN","type":"education","lineage":["https://openalex.org/I162827531"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Amitabha Sanyal","raw_affiliation_strings":["IIT Bombay, Mumbai, India"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IIT Bombay, Mumbai, India","institution_ids":["https://openalex.org/I162827531"]}]},{"author_position":"last","author":{"id":null,"display_name":"Amey Karkare","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I162827531","display_name":"Indian Institute of Technology Bombay","ror":"https://ror.org/02qyf5152","country_code":"IN","type":"education","lineage":["https://openalex.org/I162827531"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Amey Karkare","raw_affiliation_strings":["IIT Bombay, Mumbai, India"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IIT Bombay, Mumbai, India","institution_ids":["https://openalex.org/I162827531"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I162827531"],"apc_list":null,"apc_paid":null,"fwci":0.3933,"has_fulltext":true,"cited_by_count":35,"citation_normalized_percentile":{"value":0.73465234,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":88,"max":98},"biblio":{"volume":"30","issue":"1","first_page":"1","last_page":"1"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"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"}},"topics":[{"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.0003000000142492354,"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/T10260","display_name":"Software Engineering Research","score":9.999999747378752e-05,"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/access-graphs","display_name":"access graphs","score":0.9950000047683716},{"id":"https://openalex.org/keywords/data-flow-analysis","display_name":"data flow analysis","score":0.8119999766349792},{"id":"https://openalex.org/keywords/garbage-collection","display_name":"garbage collection","score":0.8379999995231628},{"id":"https://openalex.org/keywords/liveness-analysis","display_name":"liveness analysis","score":0.800000011920929},{"id":"https://openalex.org/keywords/availability-analysis","display_name":"availability analysis","score":0.8040000200271606},{"id":"https://openalex.org/keywords/memory-leak-detection","display_name":"memory leak detection","score":0.7720000147819519},{"id":"https://openalex.org/keywords/c-c","display_name":"C/C++","score":0.6129999756813049},{"id":"https://openalex.org/keywords/static-analysis","display_name":"static analysis","score":0.5619999766349792},{"id":"https://openalex.org/keywords/monotonicity","display_name":"monotonicity","score":0.4749999940395355}],"concepts":[{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.9282000064849854},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8431000113487244},{"id":"https://openalex.org/C15569618","wikidata":"https://www.wikidata.org/wiki/Q3561421","display_name":"Liveness","level":2,"score":0.7662000060081482},{"id":"https://openalex.org/C75403996","wikidata":"https://www.wikidata.org/wiki/Q5521979","display_name":"Garbage","level":2,"score":0.6097999811172485},{"id":"https://openalex.org/C105122174","wikidata":"https://www.wikidata.org/wiki/Q322202","display_name":"Garbage collection","level":3,"score":0.5856999754905701},{"id":"https://openalex.org/C136643341","wikidata":"https://www.wikidata.org/wiki/Q1361526","display_name":"Reachability","level":2,"score":0.583899974822998},{"id":"https://openalex.org/C119024030","wikidata":"https://www.wikidata.org/wiki/Q759899","display_name":"Call stack","level":3,"score":0.5638999938964844},{"id":"https://openalex.org/C170858558","wikidata":"https://www.wikidata.org/wiki/Q1394144","display_name":"Automatic summarization","level":2,"score":0.5189999938011169},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.5148000121116638},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.4848000109195709},{"id":"https://openalex.org/C34388435","wikidata":"https://www.wikidata.org/wiki/Q2267362","display_name":"Bounded function","level":2,"score":0.4675000011920929},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.426800012588501},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.40560001134872437},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.390500009059906},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.3716999888420105},{"id":"https://openalex.org/C489000","wikidata":"https://www.wikidata.org/wiki/Q747385","display_name":"Data flow diagram","level":2,"score":0.3614000082015991},{"id":"https://openalex.org/C88468194","wikidata":"https://www.wikidata.org/wiki/Q1172416","display_name":"Data-flow analysis","level":3,"score":0.3384999930858612},{"id":"https://openalex.org/C150202949","wikidata":"https://www.wikidata.org/wiki/Q107602","display_name":"Pointer (user interface)","level":2,"score":0.3328999876976013},{"id":"https://openalex.org/C11821877","wikidata":"https://www.wikidata.org/wiki/Q187959","display_name":"Distributive property","level":2,"score":0.3312999904155731},{"id":"https://openalex.org/C2777669093","wikidata":"https://www.wikidata.org/wiki/Q17141570","display_name":"Reachability problem","level":3,"score":0.32330000400543213},{"id":"https://openalex.org/C28034677","wikidata":"https://www.wikidata.org/wiki/Q17092530","display_name":"Interleaving","level":2,"score":0.31200000643730164},{"id":"https://openalex.org/C121329065","wikidata":"https://www.wikidata.org/wiki/Q185612","display_name":"Regular expression","level":2,"score":0.3041999936103821},{"id":"https://openalex.org/C38677869","wikidata":"https://www.wikidata.org/wiki/Q724168","display_name":"Petri net","level":2,"score":0.27810001373291016},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.27219998836517334},{"id":"https://openalex.org/C27458966","wikidata":"https://www.wikidata.org/wiki/Q1187693","display_name":"Control flow graph","level":2,"score":0.26330000162124634},{"id":"https://openalex.org/C102379954","wikidata":"https://www.wikidata.org/wiki/Q2589940","display_name":"Call graph","level":2,"score":0.25999999046325684},{"id":"https://openalex.org/C7263679","wikidata":"https://www.wikidata.org/wiki/Q5978076","display_name":"Pointer analysis","level":3,"score":0.2565000057220459},{"id":"https://openalex.org/C40842320","wikidata":"https://www.wikidata.org/wiki/Q19423","display_name":"Buffer overflow","level":2,"score":0.2556999921798706},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.2502000033855438}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1145/1290520.1290521","doi":"https://doi.org/10.1145/1290520.1290521","is_oa":true,"landing_page_url":"https://doi.org/10.1145/1290520.1290521","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/1290520.1290521","source":{"id":"https://openalex.org/S41449414","display_name":"ACM Transactions on Programming Languages and Systems","issn_l":"0164-0925","issn":["0164-0925","1558-4593"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core","jufo-3","norway-2"],"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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Programming Languages and Systems","raw_type":"journal-article"},{"id":"pmh:oai:arXiv.org:cs/0608104","doi":null,"is_oa":true,"landing_page_url":"http://arxiv.org/abs/cs/0608104","pdf_url":"https://arxiv.org/pdf/cs/0608104","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"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"},{"id":"pmh:oai:dsapce.library.iitb.ac.in:10054/1541","doi":null,"is_oa":false,"landing_page_url":"http://dspace.library.iitb.ac.in/xmlui/handle/10054/1541","pdf_url":null,"source":{"id":"https://openalex.org/S4306400899","display_name":"DSpace (IIT Bombay)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I162827531","host_organization_name":"Indian Institute of Technology Bombay","host_organization_lineage":["https://openalex.org/I162827531"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Article"},{"id":"pmh:oai:dsapce.library.iitb.ac.in:10054/5060","doi":null,"is_oa":false,"landing_page_url":"http://doi.org/10.1145/1290520.1290521","pdf_url":null,"source":{"id":"https://openalex.org/S4306400899","display_name":"DSpace (IIT Bombay)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I162827531","host_organization_name":"Indian Institute of Technology Bombay","host_organization_lineage":["https://openalex.org/I162827531"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Article"},{"id":"doi:10.48550/arxiv.cs/0608104","doi":"https://doi.org/10.48550/arxiv.cs/0608104","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.cs/0608104","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"article-journal"}],"best_oa_location":{"id":"doi:10.1145/1290520.1290521","doi":"https://doi.org/10.1145/1290520.1290521","is_oa":true,"landing_page_url":"https://doi.org/10.1145/1290520.1290521","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/1290520.1290521","source":{"id":"https://openalex.org/S41449414","display_name":"ACM Transactions on Programming Languages and Systems","issn_l":"0164-0925","issn":["0164-0925","1558-4593"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core","jufo-3","norway-2"],"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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Programming Languages and Systems","raw_type":"journal-article"},"sustainable_development_goals":[],"sustainable_development_goals_aurora":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2017722158.pdf","grobid_xml":"https://content.openalex.org/works/W2017722158.grobid-xml"},"referenced_works_count":28,"referenced_works":["https://openalex.org/W1539430313","https://openalex.org/W1996146601","https://openalex.org/W2001427911","https://openalex.org/W2002771912","https://openalex.org/W2004419599","https://openalex.org/W2005172143","https://openalex.org/W2006638707","https://openalex.org/W2014530617","https://openalex.org/W2019810896","https://openalex.org/W2036208810","https://openalex.org/W2036719919","https://openalex.org/W2041508799","https://openalex.org/W2053636330","https://openalex.org/W2064551402","https://openalex.org/W2082827821","https://openalex.org/W2088126145","https://openalex.org/W2091141964","https://openalex.org/W2093818358","https://openalex.org/W2095558030","https://openalex.org/W2100885195","https://openalex.org/W2111695742","https://openalex.org/W2152432695","https://openalex.org/W2156419312","https://openalex.org/W2169275155","https://openalex.org/W2914074464","https://openalex.org/W4230766819","https://openalex.org/W4250522981","https://openalex.org/W4254142897"],"related_works":[],"abstract_inverted_index":{"Despite":[0],"significant":[1],"progress":[2],"in":[3,256],"the":[4,19,25,63,71,74,78,99,102,164,188,208],"theory":[5],"and":[6,29,34,39,52,98,217,219,236,238,244],"practice":[7],"of":[8,13,22,27,37,47,62,73,87,95,101,149,230,232,240],"program":[9,75,138],"analysis,":[10],"analyzing":[11],"properties":[12,61],"heap":[14,48,64,123,213],"data":[15,41,49,114,198],"has":[16,155],"not":[17],"reached":[18],"same":[20],"level":[21],"maturity":[23],"as":[24],"analysis":[26,125,169,233,247],"static":[28,40,168],"stack":[30,38],"data.":[31,65],"The":[32,80,93],"spatial":[33],"temporal":[35],"structure":[36,72],"is":[42,53,68,126,132,192],"well":[43],"understood":[44],"while":[45],"that":[46,59,76,120,154],"seems":[50],"arbitrary":[51],"unbounded.":[54],"We":[55,162,177],"devise":[56],"bounded":[57],"representations":[58,83,97],"summarize":[60],"This":[66,190],"summarization":[67],"based":[69],"on":[70],"manipulates":[77],"heap.":[79],"resulting":[81],"summary":[82],"are":[84],"certain":[85],"kinds":[86],"graphs":[88,91],"called":[89],"access":[90],".":[92],"boundedness":[94],"these":[96],"monotonicity":[100],"operations":[103],"to":[104,110,170,181],"manipulate":[105],"them":[106,112],"make":[107,182],"it":[108,195],"possible":[109],"compute":[111],"through":[113],"flow":[115,199],"analysis.":[116],"An":[117],"important":[118],"application":[119,191],"benefits":[121],"from":[122,137,174],"reference":[124],"garbage":[127,144,150],"collection,":[128],"where":[129],"currently":[130],"liveness":[131],"conservatively":[133],"approximated":[134],"by":[135,158,186],"reachability":[136],"variables.":[139],"As":[140],"a":[141,147,152],"consequence,":[142],"current":[143],"collectors":[145],"leave":[146],"lot":[148],"uncollected,":[151],"fact":[153],"been":[156],"confirmed":[157],"several":[159],"empirical":[160],"studies.":[161],"propose":[163,220],"first":[165],"ever":[166],"end-to-end":[167],"distinguish":[171],"live":[172],"objects":[173,184],"reachable":[175],"objects.":[176],"use":[178],"this":[179],"information":[180,200,241],"dead":[183],"unreachable":[185],"modifying":[187],"program.":[189],"interesting":[193],"because":[194],"requires":[196],"discovering":[197],"representing":[201],"complex":[202],"semantics.":[203],"In":[204],"particular,":[205],"we":[206],"formulate":[207],"following":[209],"new":[210],"analyses":[211],"for":[212,223,252],"data:":[214],"liveness,":[215],"availability,":[216],"anticipability":[218],"solution":[221],"methods":[222],"them.":[224],"Together,":[225],"they":[226],"cover":[227],"various":[228],"combinations":[229],"directions":[231],"(i.e.,":[234],"forward":[235],"backward)":[237],"confluence":[239],"(i.e.":[242],"union":[243],"intersection).":[245],"Our":[246],"can":[248],"also":[249],"be":[250],"used":[251],"plugging":[253],"memory":[254],"leaks":[255],"C/C++":[257],"languages.":[258]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":4},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":2},{"year":2017,"cited_by_count":4},{"year":2016,"cited_by_count":3},{"year":2014,"cited_by_count":5},{"year":2013,"cited_by_count":4},{"year":2012,"cited_by_count":2}],"updated_date":"2026-10-01T08:54:57.152042","created_date":"2016-06-24T00:00:00"}
