{"id":"https://openalex.org/W2152397470","doi":"https://doi.org/10.1145/1480881.1480915","title":"Equality saturation","display_name":"Equality saturation","publication_year":2009,"publication_date":"2009-01-20","ids":{"openalex":"https://openalex.org/W2152397470","doi":"https://doi.org/10.1145/1480881.1480915","mag":"2152397470"},"language":"en","primary_location":{"id":"doi:10.1145/1480881.1480915","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1480881.1480915","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages","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/A5001655224","display_name":"Ross Tate","orcid":"https://orcid.org/0000-0002-7608-4605"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Ross Tate","raw_affiliation_strings":["University of Califorina, San Diego, San Diego, CA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Califorina, San Diego, San Diego, CA, USA","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5011902555","display_name":"Michael Stepp","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Michael Stepp","raw_affiliation_strings":["University of Califorina, San Diego, San Diego, CA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Califorina, San Diego, San Diego, CA, USA","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5042187082","display_name":"Zachary Tatlock","orcid":"https://orcid.org/0000-0002-4731-0124"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Zachary Tatlock","raw_affiliation_strings":["University of Califorina, San Diego, San Diego, CA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Califorina, San Diego, San Diego, CA, USA","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5043665959","display_name":"Sorin Lerner","orcid":"https://orcid.org/0000-0003-3957-0628"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Sorin Lerner","raw_affiliation_strings":["University of Califorina, San Diego, San Diego, CA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Califorina, San Diego, San Diego, CA, USA","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":6.9358,"has_fulltext":false,"cited_by_count":192,"citation_normalized_percentile":{"value":0.98147557,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":97,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"264","last_page":"276"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/T10142","display_name":"Formal Methods in Verification","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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.9983000159263611,"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.9976000189781189,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/optimizing-compiler","display_name":"Optimizing compiler","score":0.8495092988014221},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7942609190940857},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.711338460445404},{"id":"https://openalex.org/keywords/intermediate-language","display_name":"Intermediate language","score":0.6328810453414917},{"id":"https://openalex.org/keywords/program-optimization","display_name":"Program optimization","score":0.5600947737693787},{"id":"https://openalex.org/keywords/representation","display_name":"Representation (politics)","score":0.5495376586914062},{"id":"https://openalex.org/keywords/structuring","display_name":"Structuring","score":0.5410714149475098},{"id":"https://openalex.org/keywords/heuristic","display_name":"Heuristic","score":0.5156368017196655},{"id":"https://openalex.org/keywords/overhead","display_name":"Overhead (engineering)","score":0.47385361790657043},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.397402286529541},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.37888431549072266},{"id":"https://openalex.org/keywords/mathematical-optimization","display_name":"Mathematical optimization","score":0.3584381639957428},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.32465681433677673},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.14616551995277405},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.11847200989723206}],"concepts":[{"id":"https://openalex.org/C190902152","wikidata":"https://www.wikidata.org/wiki/Q1325106","display_name":"Optimizing compiler","level":3,"score":0.8495092988014221},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7942609190940857},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.711338460445404},{"id":"https://openalex.org/C77660490","wikidata":"https://www.wikidata.org/wiki/Q244916","display_name":"Intermediate language","level":3,"score":0.6328810453414917},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.5600947737693787},{"id":"https://openalex.org/C2776359362","wikidata":"https://www.wikidata.org/wiki/Q2145286","display_name":"Representation (politics)","level":3,"score":0.5495376586914062},{"id":"https://openalex.org/C2775945657","wikidata":"https://www.wikidata.org/wiki/Q381442","display_name":"Structuring","level":2,"score":0.5410714149475098},{"id":"https://openalex.org/C173801870","wikidata":"https://www.wikidata.org/wiki/Q201413","display_name":"Heuristic","level":2,"score":0.5156368017196655},{"id":"https://openalex.org/C2779960059","wikidata":"https://www.wikidata.org/wiki/Q7113681","display_name":"Overhead (engineering)","level":2,"score":0.47385361790657043},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.397402286529541},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.37888431549072266},{"id":"https://openalex.org/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.3584381639957428},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.32465681433677673},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.14616551995277405},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.11847200989723206},{"id":"https://openalex.org/C94625758","wikidata":"https://www.wikidata.org/wiki/Q7163","display_name":"Politics","level":2,"score":0.0},{"id":"https://openalex.org/C10138342","wikidata":"https://www.wikidata.org/wiki/Q43015","display_name":"Finance","level":1,"score":0.0},{"id":"https://openalex.org/C162324750","wikidata":"https://www.wikidata.org/wiki/Q8134","display_name":"Economics","level":0,"score":0.0},{"id":"https://openalex.org/C17744445","wikidata":"https://www.wikidata.org/wiki/Q36442","display_name":"Political science","level":0,"score":0.0},{"id":"https://openalex.org/C199539241","wikidata":"https://www.wikidata.org/wiki/Q7748","display_name":"Law","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1480881.1480915","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1480881.1480915","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":66,"referenced_works":["https://openalex.org/W79144062","https://openalex.org/W1485585934","https://openalex.org/W1507693023","https://openalex.org/W1507826418","https://openalex.org/W1508641834","https://openalex.org/W1509875415","https://openalex.org/W1536119593","https://openalex.org/W1568285589","https://openalex.org/W1580664042","https://openalex.org/W1605034451","https://openalex.org/W1605152326","https://openalex.org/W1971388424","https://openalex.org/W1974831460","https://openalex.org/W1978948468","https://openalex.org/W1980491396","https://openalex.org/W1981830935","https://openalex.org/W1986583217","https://openalex.org/W1990087033","https://openalex.org/W1996138408","https://openalex.org/W2002529995","https://openalex.org/W2002749185","https://openalex.org/W2005985523","https://openalex.org/W2017351599","https://openalex.org/W2022554539","https://openalex.org/W2022667180","https://openalex.org/W2030776771","https://openalex.org/W2040856861","https://openalex.org/W2052934867","https://openalex.org/W2055477538","https://openalex.org/W2058866239","https://openalex.org/W2065748025","https://openalex.org/W2073904768","https://openalex.org/W2076090418","https://openalex.org/W2081917916","https://openalex.org/W2084804301","https://openalex.org/W2088056808","https://openalex.org/W2094080019","https://openalex.org/W2098293014","https://openalex.org/W2100894869","https://openalex.org/W2101430044","https://openalex.org/W2101811680","https://openalex.org/W2103184499","https://openalex.org/W2110423393","https://openalex.org/W2113757735","https://openalex.org/W2114012357","https://openalex.org/W2125872407","https://openalex.org/W2127382014","https://openalex.org/W2136202785","https://openalex.org/W2144344516","https://openalex.org/W2145852050","https://openalex.org/W2150871888","https://openalex.org/W2152885483","https://openalex.org/W2153131284","https://openalex.org/W2154403892","https://openalex.org/W2160145830","https://openalex.org/W2162310026","https://openalex.org/W2164778826","https://openalex.org/W2295914203","https://openalex.org/W2318815169","https://openalex.org/W2911450990","https://openalex.org/W4285091613","https://openalex.org/W4285719527","https://openalex.org/W4301666354","https://openalex.org/W6611627176","https://openalex.org/W6630572589","https://openalex.org/W6634136847"],"related_works":["https://openalex.org/W2577630842","https://openalex.org/W2956382393","https://openalex.org/W2113798250","https://openalex.org/W1488300410","https://openalex.org/W4225492247","https://openalex.org/W2069117531","https://openalex.org/W4320560513","https://openalex.org/W2083681681","https://openalex.org/W1877657449","https://openalex.org/W2508091716"],"abstract_inverted_index":{"Optimizations":[0],"in":[1,110,191],"a":[2,17,30,39,56,97,121,142,213],"traditional":[3],"compiler":[4],"are":[5],"applied":[6],"sequentially,":[7],"with":[8,79],"each":[9],"optimization":[10,36,136,144,203],"destructively":[11],"modifying":[12],"the":[13,25,35,46,76,83,91,101,106,111,131,139],"program":[14,19,72,104],"to":[15,24,55,68,133,156],"produce":[16],"transformed":[18],"that":[20,51,146,186],"is":[21,189,198,206],"then":[22],"passed":[23],"next":[26],"optimization.":[27],"We":[28,167,180],"present":[29,168,182],"new":[31],"approach":[32,129,188],"for":[33,212],"structuring":[34,118],"phase":[37],"of":[38,48,90,117,123,141,177,193],"compiler.":[40],"In":[41],"our":[42,128,165,169,175,187],"approach,":[43,170],"optimizations":[44],"take":[45],"form":[47],"equality":[49,53],"analyses":[50,67],"add":[52],"information":[54],"common":[57],"intermediate":[58,77,84,178],"representation.":[59,113,179],"The":[60],"optimizer":[61],"works":[62],"by":[63],"repeatedly":[64],"applying":[65],"these":[66],"infer":[69],"equivalences":[70],"between":[71],"fragments,":[73],"thus":[74],"saturating":[75],"representation":[78,85],"equalities.":[80],"Once":[81],"saturated,":[82],"encodes":[86],"multiple":[87],"optimized":[88,103,150],"versions":[89],"input":[92],"program.":[93],"At":[94],"this":[95],"point,":[96],"profitability":[98],"heuristic":[99,145],"picks":[100],"final":[102],"from":[105],"various":[107],"programs":[108],"represented":[109],"saturated":[112],"Our":[114],"proposed":[115],"way":[116],"optimizers":[119],"has":[120],"variety":[122],"benefits":[124],"over":[125],"previous":[126],"approaches:":[127],"obviates":[130],"need":[132],"worry":[134],"about":[135],"ordering,":[137],"enables":[138],"use":[140],"global":[143],"selects":[147],"among":[148],"fully":[149],"programs,":[151],"and":[152,173,195,205],"can":[153],"be":[154],"used":[155],"perform":[157],"translation":[158,210],"validation,":[159],"even":[160],"on":[161],"compilers":[162],"other":[163],"than":[164],"own.":[166],"formalize":[171],"it,":[172],"describe":[174],"choice":[176],"also":[181],"experimental":[183],"results":[184],"showing":[185],"practical":[190],"terms":[192],"time":[194],"space":[196],"overhead,":[197],"effective":[199,207],"at":[200,208],"discovering":[201],"intricate":[202],"opportunities,":[204],"performing":[209],"validation":[211],"realistic":[214],"optimizer.":[215]},"counts_by_year":[{"year":2026,"cited_by_count":21},{"year":2025,"cited_by_count":18},{"year":2024,"cited_by_count":21},{"year":2023,"cited_by_count":18},{"year":2022,"cited_by_count":8},{"year":2021,"cited_by_count":17},{"year":2020,"cited_by_count":6},{"year":2019,"cited_by_count":11},{"year":2018,"cited_by_count":5},{"year":2017,"cited_by_count":6},{"year":2016,"cited_by_count":4},{"year":2015,"cited_by_count":11},{"year":2014,"cited_by_count":7},{"year":2013,"cited_by_count":15},{"year":2012,"cited_by_count":9}],"updated_date":"2026-08-11T07:18:39.950985","created_date":"2025-10-10T00:00:00"}
