Synthesis of Super-Optimized Smart Contracts Using Max-SMT
Elvira Albert, Pablo Gordillo, Albert Rubio, Maria Anna Schett
Abstract
With the advent of smart contracts that execute on the blockchain ecosystem, a new mode of reasoning is required for developers that must pay meticulous attention to the gas spent by their smart contracts, as well as for optimization tools that must be capable of effectively reducing the gas required by the smart contracts. Super-optimization is a technique which attempts to find the best translation of a block of code by trying all possible sequences of instructions that produce the same result. This paper presents a novel approach for super-optimization of smart contracts based on Max-SMT which is split into two main phases: (i) the extraction of a stack functional specification from the basic blocks of the smart contract, which is simplified using rules that capture the semantics of the arithmetic, bit-wise, relational operations, etc. (ii) the synthesis of optimized blocks which, by means of an efficient Max-SMT encoding, finds the bytecode blocks with minimal gas cost whose stack functional specification is equal (modulo commutativity) to the extracted one. Our experimental results are very promising: we are able to optimize 55.41 % of the blocks, and prove that 34.28 % were already optimal, for more than 61 000 blocks from the most called 2500 Ethereum contracts.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 0725d8a0-9c4e-43f7-a300-eb202e6196f3Cited by top-tier papers4
- Symbolic value-flow static analysis: deep, precise, complete modeling of Ethereum smart contractsYannis Smaragdakis, Neville Grech, Sifis Lagouvardos, Konstantinos Triantafyllou et al.OOPSLA 2021 · 18 citations
- Synthesis-powered optimization of smart contracts via data type refactoringYanju Chen, Yuepeng Wang, Maruth Goyal, James Dong et al.OOPSLA 2022 · 14 citations
- SuperStack: Superoptimization of Stack-Bytecode via Greedy, Constraint-Based, and SAT TechniquesElvira Albert, Maria Garcia de la Banda, Alejandro Hernández-Cerezo, Alexey Ignatiev et al.PLDI 2024 · 9 citations
- A Local Search Algorithm for MaxSMT(LIA)Xiang He, Bohan Li, Mengyu Zhao, Shaowei CaiFM 2024
Builds on1
Related papers
- FunRedisp: Reordering Function Dispatch in Smart Contract to Reduce Invocation Gas FeesYunqi Liu, Wei SongISSTA 2024 · 3 citations
- Synthesis of Sound and Precise Storage Cost Bounds via Unsound Resource Analysis and Max-SMTElvira Albert, Jesús Correas, Pablo Gordillo, Guillermo Román-Díez et al.ISSTA 2024 · 1 citation
- Asparagus: Automated Synthesis of Parametric Gas Upper-Bounds for Smart ContractsZhuo Cai, Soroush Farokhnia, Amir Kafshdar Goharshady, S. HitarthOOPSLA 2023 · 16 citations
- Rich specifications for Ethereum smart contract verificationChristian Bräm, Marco Eilers, Peter Müller, Robin Sierra et al.OOPSLA 2021 · 23 citations
- LENT-SSE: Leveraging Executed and Near Transactions for Speculative Symbolic Execution of Smart ContractsPeilin Zheng, Bowei Su, Xiapu Luo, Ting Chen et al.ISSTA 2024 · 1 citation
