{"id":"https://openalex.org/W2898097209","doi":"https://doi.org/10.1145/3276535","title":"Verified three-way program merge","display_name":"Verified three-way program merge","publication_year":2018,"publication_date":"2018-10-24","ids":{"openalex":"https://openalex.org/W2898097209","doi":"https://doi.org/10.1145/3276535","mag":"2898097209"},"language":"en","primary_location":{"id":"doi:10.1145/3276535","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3276535","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3276535","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/3276535","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5006848018","display_name":"Marcelo Sousa","orcid":null},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Marcelo Sousa","raw_affiliation_strings":["University of Oxford, UK"],"affiliations":[{"raw_affiliation_string":"University of Oxford, UK","institution_ids":["https://openalex.org/I40120149"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5006424908","display_name":"I\u015f\u0131l Dillig","orcid":"https://orcid.org/0000-0001-8006-1230"},"institutions":[{"id":"https://openalex.org/I86519309","display_name":"The University of Texas at Austin","ror":"https://ror.org/00hj54h04","country_code":"US","type":"education","lineage":["https://openalex.org/I86519309"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Isil Dillig","raw_affiliation_strings":["University of Texas at Austin, USA"],"affiliations":[{"raw_affiliation_string":"University of Texas at Austin, USA","institution_ids":["https://openalex.org/I86519309"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5041084431","display_name":"Shuvendu K. Lahiri","orcid":"https://orcid.org/0000-0002-4446-4777"},"institutions":[{"id":"https://openalex.org/I1290206253","display_name":"Microsoft (United States)","ror":"https://ror.org/00d0nc645","country_code":"US","type":"company","lineage":["https://openalex.org/I1290206253"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Shuvendu K. Lahiri","raw_affiliation_strings":["Microsoft Research, USA"],"affiliations":[{"raw_affiliation_string":"Microsoft Research, USA","institution_ids":["https://openalex.org/I1290206253"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5006848018"],"corresponding_institution_ids":["https://openalex.org/I40120149"],"apc_list":null,"apc_paid":null,"fwci":5.5094,"has_fulltext":true,"cited_by_count":40,"citation_normalized_percentile":{"value":0.96792944,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":99},"biblio":{"volume":"2","issue":"OOPSLA","first_page":"1","last_page":"29"},"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.9993000030517578,"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.9993000030517578,"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":0.9991999864578247,"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/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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.870690107345581},{"id":"https://openalex.org/keywords/merge","display_name":"Merge (version control)","score":0.8099937438964844},{"id":"https://openalex.org/keywords/automatic-summarization","display_name":"Automatic summarization","score":0.662049412727356},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.6090235710144043},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5835915803909302},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4655967652797699},{"id":"https://openalex.org/keywords/merge-algorithm","display_name":"Merge algorithm","score":0.42382827401161194},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.23987916111946106},{"id":"https://openalex.org/keywords/information-retrieval","display_name":"Information retrieval","score":0.20072117447853088}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.870690107345581},{"id":"https://openalex.org/C197129107","wikidata":"https://www.wikidata.org/wiki/Q1921621","display_name":"Merge (version control)","level":2,"score":0.8099937438964844},{"id":"https://openalex.org/C170858558","wikidata":"https://www.wikidata.org/wiki/Q1394144","display_name":"Automatic summarization","level":2,"score":0.662049412727356},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6090235710144043},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5835915803909302},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4655967652797699},{"id":"https://openalex.org/C140086265","wikidata":"https://www.wikidata.org/wiki/Q11341754","display_name":"Merge algorithm","level":4,"score":0.42382827401161194},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.23987916111946106},{"id":"https://openalex.org/C23123220","wikidata":"https://www.wikidata.org/wiki/Q816826","display_name":"Information retrieval","level":1,"score":0.20072117447853088},{"id":"https://openalex.org/C108094655","wikidata":"https://www.wikidata.org/wiki/Q181593","display_name":"Sorting algorithm","level":3,"score":0.0},{"id":"https://openalex.org/C111696304","wikidata":"https://www.wikidata.org/wiki/Q2303697","display_name":"Sorting","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3276535","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3276535","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3276535","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/3276535","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3276535","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3276535","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":[{"display_name":"Peace, Justice and strong institutions","id":"https://metadata.un.org/sdg/16","score":0.7099999785423279}],"awards":[{"id":"https://openalex.org/G1445932543","display_name":null,"funder_award_id":"1712067","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G4413782023","display_name":null,"funder_award_id":"CCF-1712067","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G6507447573","display_name":null,"funder_award_id":"several","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G6894402473","display_name":null,"funder_award_id":"Fellowship","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G848032724","display_name":null,"funder_award_id":"Science","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G898061048","display_name":null,"funder_award_id":"8750-14-2-0270","funder_id":"https://openalex.org/F4320338294","funder_display_name":"Air Force Research Laboratory"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320338294","display_name":"Air Force Research Laboratory","ror":"https://ror.org/02e2egq70"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2898097209.pdf","grobid_xml":"https://content.openalex.org/works/W2898097209.grobid-xml"},"referenced_works_count":31,"referenced_works":["https://openalex.org/W26752331","https://openalex.org/W1498946538","https://openalex.org/W1545038039","https://openalex.org/W1587844310","https://openalex.org/W1971741152","https://openalex.org/W1993836075","https://openalex.org/W1996993752","https://openalex.org/W2002537332","https://openalex.org/W2007267771","https://openalex.org/W2039222548","https://openalex.org/W2046368237","https://openalex.org/W2049134176","https://openalex.org/W2064625489","https://openalex.org/W2067871120","https://openalex.org/W2074888021","https://openalex.org/W2097985262","https://openalex.org/W2108629523","https://openalex.org/W2115974895","https://openalex.org/W2121457325","https://openalex.org/W2138224468","https://openalex.org/W2139799388","https://openalex.org/W2147130904","https://openalex.org/W2149996206","https://openalex.org/W2162744351","https://openalex.org/W2418260908","https://openalex.org/W2493946278","https://openalex.org/W2591626899","https://openalex.org/W2597868857","https://openalex.org/W2761459579","https://openalex.org/W2997326335","https://openalex.org/W3161811838"],"related_works":["https://openalex.org/W1997715509","https://openalex.org/W2356015003","https://openalex.org/W2074050947","https://openalex.org/W1838431648","https://openalex.org/W2156833550","https://openalex.org/W2006931095","https://openalex.org/W2060029658","https://openalex.org/W4237134732","https://openalex.org/W1594272482","https://openalex.org/W2165167056"],"abstract_inverted_index":{"Even":[0],"though":[1],"many":[2],"programmers":[3],"rely":[4],"on":[5,89,148],"3-way":[6],"merge":[7,151],"tools":[8,16],"to":[9,28,55,93,101,113,123],"integrate":[10],"changes":[11],"from":[12,154],"different":[13,95,116],"branches,":[14],"such":[15],"can":[17],"introduce":[18,47],"subtle":[19],"bugs":[20],"in":[21,118,137],"the":[22,42,77,134,160],"integration":[23],"process.":[24],"This":[25,107],"paper":[26],"aims":[27],"mitigate":[29],"this":[30,57,80],"problem":[31],"by":[32],"defining":[33],"a":[34,60,85,102,138],"semantic":[35],"notion":[36],"of":[37,128,162],"conflict-freedom,":[38],"which":[39],"ensures":[40],"that":[41,64,170],"merged":[43],"program":[44,70,96,104],"does":[45],"not":[46],"new":[48,139],"unwanted":[49],"behaviors.":[50],"We":[51,131],"also":[52],"show":[53],"how":[54],"verify":[56],"property":[58],"using":[59],"novel,":[61],"compositional":[62],"algorithm":[63,88,112],"combines":[65],"lightweight":[66],"summarization":[67],"for":[68,76,143],"shared":[69,103],"fragments":[71],"with":[72,105],"precise":[73,174],"relational":[74],"reasoning":[75],"modifications.":[78],"Towards":[79],"goal,":[81],"our":[82,110,163],"method":[83],"uses":[84],"4-way":[86],"differencing":[87],"abstract":[90],"syntax":[91],"trees":[92],"represent":[94],"versions":[97],"as":[98],"edits":[99,117],"applied":[100],"holes.":[106],"representation":[108],"allows":[109],"verification":[111],"reason":[114],"about":[115],"isolation":[119],"and":[120,145,168,175],"compose":[121],"them":[122],"obtain":[124],"an":[125],"overall":[126],"proof":[127],"conflict":[129],"freedom.":[130],"have":[132],"implemented":[133],"proposed":[135],"technique":[136],"tool":[140],"called":[141],"SafeMerge":[142,171],"Java":[144],"evaluate":[146],"it":[147],"52":[149],"real-world":[150],"scenarios":[152],"obtained":[153],"Github.":[155],"The":[156],"experimental":[157],"results":[158],"demonstrate":[159],"benefits":[161],"approach":[164],"over":[165],"syntactic":[166],"conflict-freedom":[167],"indicate":[169],"is":[172],"both":[173],"practical.":[176]},"counts_by_year":[{"year":2025,"cited_by_count":6},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":4},{"year":2022,"cited_by_count":8},{"year":2021,"cited_by_count":8},{"year":2020,"cited_by_count":4},{"year":2019,"cited_by_count":5},{"year":2018,"cited_by_count":1}],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
