{"id":"https://openalex.org/W2120836115","doi":"https://doi.org/10.1145/1185448.1185597","title":"Phoenix-based clone detection using suffix trees","display_name":"Phoenix-based clone detection using suffix trees","publication_year":2006,"publication_date":"2006-03-10","ids":{"openalex":"https://openalex.org/W2120836115","doi":"https://doi.org/10.1145/1185448.1185597","mag":"2120836115"},"language":"en","primary_location":{"id":"doi:10.1145/1185448.1185597","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1185448.1185597","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 44th annual Southeast regional conference","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5036701645","display_name":"Robert Tairas","orcid":"https://orcid.org/0009-0000-2352-0277"},"institutions":[{"id":"https://openalex.org/I32389192","display_name":"University of Alabama at Birmingham","ror":"https://ror.org/008s83205","country_code":"US","type":"education","lineage":["https://openalex.org/I32389192"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Robert Tairas","raw_affiliation_strings":["University of Alabama at Birmingham, Birmingham, AL"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Alabama at Birmingham, Birmingham, AL","institution_ids":["https://openalex.org/I32389192"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5014568612","display_name":"Jeff Gray","orcid":"https://orcid.org/0000-0003-0082-6753"},"institutions":[{"id":"https://openalex.org/I32389192","display_name":"University of Alabama at Birmingham","ror":"https://ror.org/008s83205","country_code":"US","type":"education","lineage":["https://openalex.org/I32389192"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Jeff Gray","raw_affiliation_strings":["University of Alabama at Birmingham, Birmingham, AL"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Alabama at Birmingham, Birmingham, AL","institution_ids":["https://openalex.org/I32389192"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I32389192"],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":68,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"679","last_page":"684"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":1.0,"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"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":1.0,"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"}},{"id":"https://openalex.org/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9962999820709229,"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9955000281333923,"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/computer-science","display_name":"Computer science","score":0.7385059595108032},{"id":"https://openalex.org/keywords/software-maintenance","display_name":"Software maintenance","score":0.7257068753242493},{"id":"https://openalex.org/keywords/code-refactoring","display_name":"Code refactoring","score":0.6970040202140808},{"id":"https://openalex.org/keywords/clone","display_name":"clone (Java method)","score":0.6029534935951233},{"id":"https://openalex.org/keywords/abstract-syntax-tree","display_name":"Abstract syntax tree","score":0.5968155264854431},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.571140468120575},{"id":"https://openalex.org/keywords/suffix","display_name":"Suffix","score":0.5225626826286316},{"id":"https://openalex.org/keywords/suffix-tree","display_name":"Suffix tree","score":0.5189366340637207},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.516154408454895},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5060033202171326},{"id":"https://openalex.org/keywords/modularity","display_name":"Modularity (biology)","score":0.49651509523391724},{"id":"https://openalex.org/keywords/lexical-analysis","display_name":"Lexical analysis","score":0.49649983644485474},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.4466889500617981},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.30644863843917847},{"id":"https://openalex.org/keywords/software-system","display_name":"Software system","score":0.27944889664649963},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.26762980222702026},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.2074352502822876},{"id":"https://openalex.org/keywords/data-structure","display_name":"Data structure","score":0.16723859310150146},{"id":"https://openalex.org/keywords/biology","display_name":"Biology","score":0.11158409714698792}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7385059595108032},{"id":"https://openalex.org/C101317890","wikidata":"https://www.wikidata.org/wiki/Q940053","display_name":"Software maintenance","level":4,"score":0.7257068753242493},{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.6970040202140808},{"id":"https://openalex.org/C81089528","wikidata":"https://www.wikidata.org/wiki/Q5134986","display_name":"clone (Java method)","level":3,"score":0.6029534935951233},{"id":"https://openalex.org/C58646249","wikidata":"https://www.wikidata.org/wiki/Q127380","display_name":"Abstract syntax tree","level":3,"score":0.5968155264854431},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.571140468120575},{"id":"https://openalex.org/C2779804580","wikidata":"https://www.wikidata.org/wiki/Q102047","display_name":"Suffix","level":2,"score":0.5225626826286316},{"id":"https://openalex.org/C2781166958","wikidata":"https://www.wikidata.org/wiki/Q1426863","display_name":"Suffix tree","level":3,"score":0.5189366340637207},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.516154408454895},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5060033202171326},{"id":"https://openalex.org/C2779478453","wikidata":"https://www.wikidata.org/wiki/Q6889748","display_name":"Modularity (biology)","level":2,"score":0.49651509523391724},{"id":"https://openalex.org/C176982825","wikidata":"https://www.wikidata.org/wiki/Q835922","display_name":"Lexical analysis","level":2,"score":0.49649983644485474},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.4466889500617981},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.30644863843917847},{"id":"https://openalex.org/C149091818","wikidata":"https://www.wikidata.org/wiki/Q2429814","display_name":"Software system","level":3,"score":0.27944889664649963},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.26762980222702026},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.2074352502822876},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.16723859310150146},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.11158409714698792},{"id":"https://openalex.org/C552990157","wikidata":"https://www.wikidata.org/wiki/Q7430","display_name":"DNA","level":2,"score":0.0},{"id":"https://openalex.org/C54355233","wikidata":"https://www.wikidata.org/wiki/Q7162","display_name":"Genetics","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/1185448.1185597","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1185448.1185597","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 44th annual Southeast regional conference","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.477.3677","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.477.3677","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://gray.cs.ua.edu/pubs/acmse-2006-robert.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":12,"referenced_works":["https://openalex.org/W1964795700","https://openalex.org/W1989130222","https://openalex.org/W1990061958","https://openalex.org/W1991604845","https://openalex.org/W2029414465","https://openalex.org/W2095685450","https://openalex.org/W2107248520","https://openalex.org/W2109943392","https://openalex.org/W2134329651","https://openalex.org/W2143238865","https://openalex.org/W2157532207","https://openalex.org/W4254691308"],"related_works":["https://openalex.org/W2186150085","https://openalex.org/W2336361681","https://openalex.org/W2041019171","https://openalex.org/W2321083942","https://openalex.org/W2010680342","https://openalex.org/W2069073539","https://openalex.org/W1985559452","https://openalex.org/W2027488246","https://openalex.org/W2116610783","https://openalex.org/W1966036917"],"abstract_inverted_index":{"A":[0,116],"code":[1,22,43,68,204],"clone":[2,102,168],"represents":[3],"a":[4,15,24,53,67,92,106,124,173,186,217],"sequence":[5],"of":[6,14,26,38,66,149,202],"statements":[7],"that":[8,78,111,118,235,255],"are":[9,213],"duplicated":[10],"in":[11,20,142,158,185,244,259,263],"multiple":[12,27],"locations":[13],"program.":[16],"Clones":[17],"often":[18],"arise":[19],"source":[21],"as":[23,172],"result":[25],"cut/paste":[28],"operations":[29],"on":[30,62,223,251],"the":[31,36,49,63,159,199,203,206,224,232,252,264],"source,":[32],"or":[33,57,83,147],"due":[34],"to":[35,88,215,226,240,247],"emergence":[37],"crosscutting":[39],"concerns.":[40],"Programs":[41],"containing":[42],"clones":[44,72,90,122,136,151,184],"can":[45,80,104,119,137,152],"manifest":[46],"problems":[47],"during":[48,127],"maintenance":[50,96],"phase.":[51],"When":[52],"fault":[54],"is":[55,60,112,256],"found":[56,76,139],"an":[58,132,163,166],"update":[59],"needed":[61],"original":[64],"copy":[65],"section,":[69],"all":[70],"similar":[71],"must":[73],"also":[74,113],"be":[75,81,105,138,227],"so":[77],"they":[79],"fixed":[82],"updated":[84,141],"accordingly.":[85],"The":[86,210],"ability":[87],"detect":[89,121],"becomes":[91],"necessity":[93],"when":[94],"performing":[95],"tasks.":[97],"However,":[98],"if":[99],"done":[100],"manually,":[101],"detection":[103,134,169],"slow":[107],"and":[108,140,156,193],"tedious":[109],"activity":[110],"error":[114],"prone.":[115],"tool":[117],"automatically":[120],"offers":[123],"significant":[125],"advantage":[126],"software":[128],"evolution.":[129],"With":[130],"such":[131],"automated":[133],"tool,":[135],"less":[143],"time.":[144],"Moreover,":[145],"restructuring":[146],"refactoring":[148],"these":[150],"yield":[153],"better":[154],"performance":[155],"modularity":[157],"program.This":[160],"paper":[161],"describes":[162],"investigation":[164,181],"into":[165],"automatic":[167],"technique":[170],"developed":[171],"plug-in":[174],"for":[175,249],"Microsoft's":[176],"new":[177],"Phoenix":[178],"framework.":[179],"Our":[180],"finds":[182],"function-level":[183],"program":[187],"using":[188],"abstract":[189],"syntax":[190],"trees":[191],"(ASTs)":[192],"suffix":[194,218,253],"trees.":[195],"An":[196],"AST":[197,211],"provides":[198],"structural":[200],"representation":[201],"after":[205],"lexical":[207],"analysis":[208,222],"process.":[209],"nodes":[212,225],"used":[214],"generate":[216],"tree,":[219],"which":[220,258],"allows":[221],"performed":[228],"rapidly.":[229],"We":[230],"use":[231],"same":[233],"methods":[234],"have":[236],"been":[237],"successfully":[238],"applied":[239],"find":[241],"duplicate":[242],"sections":[243],"biological":[245],"sequences":[246],"search":[248],"matches":[250,262],"tree":[254],"generated,":[257],"turn":[260],"reveal":[261],"code.":[265]},"counts_by_year":[{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":5},{"year":2020,"cited_by_count":4},{"year":2019,"cited_by_count":4},{"year":2018,"cited_by_count":5},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":1},{"year":2015,"cited_by_count":5},{"year":2014,"cited_by_count":4},{"year":2013,"cited_by_count":5},{"year":2012,"cited_by_count":6}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
