{"ID":2890357,"CreatedAt":"2026-06-01T04:54:23.091178241Z","UpdatedAt":"2026-06-01T04:54:23.091178241Z","DeletedAt":null,"paper_url":"https://arxiv.org/abs/2507.19012","arxiv_id":"2507.19012","title":"A Formalization of the Yul Language and Some Verified Yul Code Transformations","abstract":"Yul is an intermediate language used in the compilation of the Solidity programming language for Ethereum smart contracts. The compiler applies customizable sequences of transformations to Yul code. To help ensure the correctness of these transformations and their sequencing, we used the ACL2 theorem prover to develop a formalization of the syntax and semantics of Yul, proofs relating static and dynamic semantics, a formalization of some Yul code transformations, and correctness proofs for these transformations.","short_abstract":"Yul is an intermediate language used in the compilation of the Solidity programming language for Ethereum smart contracts. The compiler applies customizable sequences of transformations to Yul code. To help ensure the correctness of these transformations and their sequencing, we used the ACL2 theorem prover to develop...","url_abs":"https://arxiv.org/abs/2507.19012","url_pdf":"https://arxiv.org/pdf/2507.19012v1","authors":"[\"Alessandro Coglio\",\"Eric McCarthy\"]","published":"2025-07-25T07:08:02Z","proceeding":"cs.LO","tasks":"[\"cs.LO\",\"cs.PL\"]","methods":"[]","has_code":false}
