{"id":"https://openalex.org/W4399872410","doi":"https://doi.org/10.1145/3656435","title":"SuperStack: Superoptimization of Stack-Bytecode via Greedy, Constraint-Based, and SAT Techniques","display_name":"SuperStack: Superoptimization of Stack-Bytecode via Greedy, Constraint-Based, and SAT Techniques","publication_year":2024,"publication_date":"2024-06-20","ids":{"openalex":"https://openalex.org/W4399872410","doi":"https://doi.org/10.1145/3656435"},"language":"en","primary_location":{"id":"doi:10.1145/3656435","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3656435","pdf_url":null,"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://doi.org/10.1145/3656435","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5091905437","display_name":"Elvira Albert","orcid":"https://orcid.org/0000-0003-0048-0705"},"institutions":[{"id":"https://openalex.org/I121748325","display_name":"Universidad Complutense de Madrid","ror":"https://ror.org/02p0gd045","country_code":"ES","type":"education","lineage":["https://openalex.org/I121748325"]}],"countries":["ES"],"is_corresponding":false,"raw_author_name":"Elvira Albert","raw_affiliation_strings":["Complutense University of Madrid, Madrid, Spain"],"raw_orcid":"https://orcid.org/0000-0003-0048-0705","affiliations":[{"raw_affiliation_string":"Complutense University of Madrid, Madrid, Spain","institution_ids":["https://openalex.org/I121748325"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5083095334","display_name":"Mar\u00eda Garc\u00eda de la Banda","orcid":"https://orcid.org/0000-0002-6666-514X"},"institutions":[{"id":"https://openalex.org/I56590836","display_name":"Monash University","ror":"https://ror.org/02bfwt286","country_code":"AU","type":"education","lineage":["https://openalex.org/I56590836"]}],"countries":["AU"],"is_corresponding":false,"raw_author_name":"Maria Garcia de la Banda","raw_affiliation_strings":["Monash University, Melbourne, Australia"],"raw_orcid":"https://orcid.org/0000-0002-6666-514X","affiliations":[{"raw_affiliation_string":"Monash University, Melbourne, Australia","institution_ids":["https://openalex.org/I56590836"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5030687454","display_name":"Alejandro Hern\u00e1ndez-Cerezo","orcid":"https://orcid.org/0000-0003-2109-8863"},"institutions":[{"id":"https://openalex.org/I121748325","display_name":"Universidad Complutense de Madrid","ror":"https://ror.org/02p0gd045","country_code":"ES","type":"education","lineage":["https://openalex.org/I121748325"]}],"countries":["ES"],"is_corresponding":false,"raw_author_name":"Alejandro Hern\u00e1ndez-Cerezo","raw_affiliation_strings":["Complutense University of Madrid, Madrid, Spain"],"raw_orcid":"https://orcid.org/0000-0003-2109-8863","affiliations":[{"raw_affiliation_string":"Complutense University of Madrid, Madrid, Spain","institution_ids":["https://openalex.org/I121748325"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5051305025","display_name":"Alexey Ignatiev","orcid":"https://orcid.org/0000-0002-4535-2902"},"institutions":[{"id":"https://openalex.org/I56590836","display_name":"Monash University","ror":"https://ror.org/02bfwt286","country_code":"AU","type":"education","lineage":["https://openalex.org/I56590836"]}],"countries":["AU"],"is_corresponding":false,"raw_author_name":"Alexey Ignatiev","raw_affiliation_strings":["Monash University, Melbourne, Australia"],"raw_orcid":"https://orcid.org/0000-0002-4535-2902","affiliations":[{"raw_affiliation_string":"Monash University, Melbourne, Australia","institution_ids":["https://openalex.org/I56590836"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5021913033","display_name":"Albert Rubio","orcid":"https://orcid.org/0000-0002-0501-9830"},"institutions":[{"id":"https://openalex.org/I121748325","display_name":"Universidad Complutense de Madrid","ror":"https://ror.org/02p0gd045","country_code":"ES","type":"education","lineage":["https://openalex.org/I121748325"]}],"countries":["ES"],"is_corresponding":false,"raw_author_name":"Albert Rubio","raw_affiliation_strings":["Complutense University of Madrid, Madrid, Spain"],"raw_orcid":"https://orcid.org/0000-0002-0501-9830","affiliations":[{"raw_affiliation_string":"Complutense University of Madrid, Madrid, Spain","institution_ids":["https://openalex.org/I121748325"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5064839018","display_name":"Peter J. Stuckey","orcid":"https://orcid.org/0000-0003-2186-0459"},"institutions":[{"id":"https://openalex.org/I56590836","display_name":"Monash University","ror":"https://ror.org/02bfwt286","country_code":"AU","type":"education","lineage":["https://openalex.org/I56590836"]}],"countries":["AU"],"is_corresponding":false,"raw_author_name":"Peter J. Stuckey","raw_affiliation_strings":["Monash University, Melbourne, Australia"],"raw_orcid":"https://orcid.org/0000-0003-2186-0459","affiliations":[{"raw_affiliation_string":"Monash University, Melbourne, Australia","institution_ids":["https://openalex.org/I56590836"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":2.0675,"has_fulltext":true,"cited_by_count":9,"citation_normalized_percentile":{"value":0.88137392,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"8","issue":"PLDI","first_page":"1437","last_page":"1462"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.9975000023841858,"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/T11269","display_name":"Algorithms and Data Compression","score":0.9975000023841858,"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/T11106","display_name":"Data Management and Algorithms","score":0.9969000220298767,"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/T10317","display_name":"Advanced Database Systems and Queries","score":0.9966999888420105,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/bytecode","display_name":"Bytecode","score":0.8237705230712891},{"id":"https://openalex.org/keywords/stack","display_name":"Stack (abstract data type)","score":0.7013961672782898},{"id":"https://openalex.org/keywords/constraint","display_name":"Constraint (computer-aided design)","score":0.6048126816749573},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.5623494982719421},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.4919447600841522},{"id":"https://openalex.org/keywords/greedy-algorithm","display_name":"Greedy algorithm","score":0.44567185640335083},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.3066900670528412},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.29945939779281616},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.04385054111480713}],"concepts":[{"id":"https://openalex.org/C2779818221","wikidata":"https://www.wikidata.org/wiki/Q837330","display_name":"Bytecode","level":3,"score":0.8237705230712891},{"id":"https://openalex.org/C9395851","wikidata":"https://www.wikidata.org/wiki/Q177929","display_name":"Stack (abstract data type)","level":2,"score":0.7013961672782898},{"id":"https://openalex.org/C2776036281","wikidata":"https://www.wikidata.org/wiki/Q48769818","display_name":"Constraint (computer-aided design)","level":2,"score":0.6048126816749573},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.5623494982719421},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4919447600841522},{"id":"https://openalex.org/C51823790","wikidata":"https://www.wikidata.org/wiki/Q504353","display_name":"Greedy algorithm","level":2,"score":0.44567185640335083},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.3066900670528412},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.29945939779281616},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.04385054111480713},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1145/3656435","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3656435","pdf_url":null,"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"},{"id":"pmh:oai:monash.edu:publications/0c6e84a1-f3fb-4355-9260-55decff94545","is_oa":true,"landing_page_url":"https://research.monash.edu/files/622948174/606177842-oa.pdf","pdf_url":"https://researchmgt.monash.edu/ws/files/622948174/606177842-oa.pdf","source":{"id":"https://openalex.org/S4306402625","display_name":"Monash University Research Portal (Monash University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I56590836","host_organization_name":"Monash University","host_organization_lineage":["https://openalex.org/I56590836"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"info:eu-repo/semantics/conferenceObject"},{"id":"pmh:oai:monash.edu:openaire/0c6e84a1-f3fb-4355-9260-55decff94545","is_oa":true,"landing_page_url":"https://research.monash.edu/en/publications/0c6e84a1-f3fb-4355-9260-55decff94545","pdf_url":null,"source":{"id":"https://openalex.org/S4306402625","display_name":"Monash University Research Portal (Monash University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I56590836","host_organization_name":"Monash University","host_organization_lineage":["https://openalex.org/I56590836"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"info:eu-repo/semantics/conferenceObject"},{"id":"pmh:oai:jupiter.its.unimelb.edu.au:11343/351634","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3656435.","pdf_url":null,"source":{"id":"https://openalex.org/S4377196259","display_name":"Minerva Access (University of Melbourne)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I165779595","host_organization_name":"The University of Melbourne","host_organization_lineage":["https://openalex.org/I165779595"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Journal Article"}],"best_oa_location":{"id":"doi:10.1145/3656435","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3656435","pdf_url":null,"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":[],"funders":[{"id":"https://openalex.org/F4320329018","display_name":"Ethereum Foundation","ror":null}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":61,"referenced_works":["https://openalex.org/W4015096","https://openalex.org/W82625556","https://openalex.org/W194026504","https://openalex.org/W1511069520","https://openalex.org/W1511809518","https://openalex.org/W1540013686","https://openalex.org/W1971822872","https://openalex.org/W1977279860","https://openalex.org/W2012413542","https://openalex.org/W2033246449","https://openalex.org/W2100609826","https://openalex.org/W2116758077","https://openalex.org/W2141811956","https://openalex.org/W2160145830","https://openalex.org/W2287661067","https://openalex.org/W2294628582","https://openalex.org/W2330908417","https://openalex.org/W2340812064","https://openalex.org/W2575733488","https://openalex.org/W2598139937","https://openalex.org/W2625141509","https://openalex.org/W2807992309","https://openalex.org/W2809729522","https://openalex.org/W2810136497","https://openalex.org/W2888390390","https://openalex.org/W2901284989","https://openalex.org/W2911377854","https://openalex.org/W2946988234","https://openalex.org/W2957725408","https://openalex.org/W2978964184","https://openalex.org/W2995373617","https://openalex.org/W3007850870","https://openalex.org/W3009278394","https://openalex.org/W3042306937","https://openalex.org/W3047099936","https://openalex.org/W3102494136","https://openalex.org/W3109233608","https://openalex.org/W3112215678","https://openalex.org/W3126185111","https://openalex.org/W3126605304","https://openalex.org/W3127358641","https://openalex.org/W3128774331","https://openalex.org/W3128807438","https://openalex.org/W3151748982","https://openalex.org/W3174847842","https://openalex.org/W3208517628","https://openalex.org/W3209347631","https://openalex.org/W3213720897","https://openalex.org/W3215794244","https://openalex.org/W4200315417","https://openalex.org/W4212832141","https://openalex.org/W4225656807","https://openalex.org/W4238216513","https://openalex.org/W4289313229","https://openalex.org/W4301666354","https://openalex.org/W4307886768","https://openalex.org/W4312402125","https://openalex.org/W4313270705","https://openalex.org/W4384154547","https://openalex.org/W6777785452","https://openalex.org/W6968152829"],"related_works":["https://openalex.org/W1889284597","https://openalex.org/W4323026556","https://openalex.org/W4241431292","https://openalex.org/W1500443504","https://openalex.org/W2070229111","https://openalex.org/W2156734947","https://openalex.org/W1994666727","https://openalex.org/W1598565505","https://openalex.org/W4244248952","https://openalex.org/W2177718015"],"abstract_inverted_index":{"Given":[0],"a":[1,9,22,53,64,79,87,96,115,172],"loop-free":[2],"sequence":[3,17],"of":[4,27,35,48,74,82,89,98,132],"instructions,":[5],"superoptimization":[6],"techniques":[7],"use":[8],"constraint":[10],"solver":[11],"to":[12,56,67,104,127,158,169],"search":[13,29,107],"for":[14,21,45,109],"an":[15],"equivalent":[16],"that":[18],"is":[19,156],"optimal":[20,76,110,129],"desired":[23],"objective.":[24],"The":[25],"complexity":[26],"the":[28,33,36,41,69,72,75,83,106,149,174],"grows":[30],"exponentially":[31],"with":[32],"length":[34,73],"solution":[37],"being":[38],"constructed":[39],"and":[40,101,153,167],"problem":[42,85],"becomes":[43],"intractable":[44],"large":[46],"sequences":[47,147],"instructions.":[49],"This":[50],"paper":[51],"presents":[52],"new":[54,80],"approach":[55],"superoptimizing":[57],"stack-bytecode":[58],"via":[59],"three":[60],"novel":[61],"components:":[62],"(1)":[63],"greedy":[65],"algorithm":[66],"refine":[68],"bound":[70],"on":[71,143],"solution;":[77],"(2)":[78],"representation":[81],"optimization":[84,161,175],"as":[86],"set":[88],"weighted":[90],"soft":[91],"clauses":[92],"in":[93],"MaxSAT;":[94],"(3)":[95],"series":[97],"domain-specific":[99],"dominance":[100],"redundant":[102],"constraints":[103],"reduce":[105,168],"space":[108],"solutions.":[111],"We":[112],"have":[113],"developed":[114],"tool,":[116],"named":[117],"S":[118,120],"uper":[119],"tack":[121],",":[122],"which":[123],"can":[124],"be":[125],"used":[126],"find":[128],"code":[130],"translations":[131],"modern":[133],"stack-based":[134],"bytecode,":[135],"namely":[136],"WebAssembly":[137],"or":[138],"Ethereum":[139],"bytecode.":[140],"Experimental":[141],"evaluation":[142],"more":[144],"than":[145],"500,000":[146],"shows":[148],"proposed":[150],"greedy,":[151],"constraint-based":[152],"SAT":[154],"combination":[155],"able":[157],"greatly":[159],"increase":[160],"gains":[162],"achieved":[163],"by":[164],"existing":[165],"superoptimizers":[166],"at":[170],"least":[171],"fourth":[173],"time.":[176]},"counts_by_year":[{"year":2026,"cited_by_count":3},{"year":2025,"cited_by_count":5},{"year":2024,"cited_by_count":1}],"updated_date":"2026-08-31T07:19:18.363097","created_date":"2025-10-10T00:00:00"}
