{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/neural-network-guided-expression","title":"Neural-Network Guided Expression Transformation","arxiv_id":"1902.02194","date":"2019-02-06","proceeding":null,"authors":["Romain Edelmann","Viktor Kunčak"],"abstract":"Optimizing compilers, as well as other translator systems, often work by\nrewriting expressions according to equivalence preserving rules. Given an input\nexpression and its optimized form, finding the sequence of rules that were\napplied is a non-trivial task. Most of the time, the tools provide no proof, of\nany kind, of the equivalence between the original expression and its optimized\nform. In this work, we propose to reconstruct proofs of equivalence of simple\nmathematical expressions, after the fact, by finding paths of equivalence\npreserving transformations between expressions. We propose to find those\nsequences of transformations using a search algorithm, guided by a neural\nnetwork heuristic. Using a Tree-LSTM recursive neural network, we learn a\ndistributed representation of expressions where the Manhattan distance between\nvectors approximately corresponds to the rewrite distance between expressions.\nWe then show how the neural network can be efficiently used to search for\ntransformation paths, leading to substantial gain in speed compared to an\nuninformed exhaustive search. In one of our experiments, our neural-network\nguided search algorithm is able to solve more instances with a 2 seconds\ntimeout per instance than breadth-first search does with a 5 minutes timeout\nper instance.","url_abs":"http://arxiv.org/abs/1902.02194v1","url_pdf":"http://arxiv.org/pdf/1902.02194v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"neural-network-guided-expression","repo_url":"https://github.com/epfl-lara/nugget","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[],"methods":[{"method_slug":"speed","method_name":"SPEED"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}