mlsanityData to 7 Oct 2026

Proving Equivalence Between Complex Expressions Using Graph-to-Sequence Neural Models

arXiv 2106.02452 ↗First posted 1 Jun 2021cs.PL cs.LGcited by 2

Not on the map. Why?

Abstract (arXiv)

We target the problem of provably computing the equivalence between two complex expression trees. To this end, we formalize the problem of equivalence between two such programs as finding a set of semantics-preserving rewrite rules from one into the other, such that after the rewrite the two programs are structurally identical, and therefore trivially equivalent.We then develop a graph-to-sequence neural network system for program equivalence, trained to produce such rewrite sequences from a carefully crafted automatic example generation algorithm. We extensively evaluate our system on a rich multi-type linear algebra expression language, using arbitrary combinations of 100+ graph-rewriting axioms of equivalence. Our machine learning system guarantees correctness for all true negatives, and ensures 0 false positive by design. It outputs via inference a valid proof of equivalence for 93% of the 10,000 equivalent expression pairs isolated for testing, using up to 50-term expressions. In all cases, the validity of the sequence produced and therefore the provable assertion of program equivalence is always computable, in negligible time.

Key facts. Cited by 2 papers in the map (data through 7 Oct 2026). Builds on 22 of its 66 references that are in the map. First posted on arXiv 1 Jun 2021.

Builds on

22 of 66 references.

References · 22

  1. 2014Neural Machine Translation by Jointly Learning to Align and Translatecited by 4,530
  2. 2013Distributed Representations of Words and Phrases and their Compositionalitycited by 3,462
  3. 2019A Comprehensive Survey on Graph Neural Networkscited by 2,906
  4. 2017Hindsight Experience Replaycited by 1,096
  5. 2015Effective Approaches to Attention-based Neural Machine Translationcited by 1,024
  6. 2015Gated Graph Sequence Neural Networkscited by 792
  7. 2019Deep Learning for Symbolic Mathematicscited by 266
  8. 2017OpenNMT: Open-source Toolkit for Neural Machine Translationcited by 251
  9. 2018code2vec: Learning Distributed Representations of Codecited by 249
  10. 2017A Survey of Machine Learning for Big Code and Naturalnesscited by 220
  11. 2017Learning to Represent Programs with Graphscited by 219
  12. 2016Professor Forcing: A New Algorithm for Training Recurrent Networkscited by 214
10 more
  1. 2018SequenceR: Sequence-to-Sequence Learning for End-to-End Program Repaircited by 144
  2. 2018An Empirical Study on Learning Bug-Fixing Patches in the Wild via Neural Machine Translationcited by 106
  3. 2017Neural Network-based Graph Embedding for Cross-Platform Binary Code Similarity Detectioncited by 65
  4. 2018Graph-to-Sequence Learning using Gated Graph Neural Networkscited by 61
  5. 2020INT: An Inequality Benchmark for Evaluating Generalization in Theorem Provingcited by 44
  6. 2019DIRE: A Neural Approach to Decompiled Identifier Namingcited by 36
  7. 2017An Empirical Evaluation of Rule Extraction from Recurrent Neural Networkscited by 21
  8. 2020Learning to Prove from Synthetic Theoremscited by 13
  9. 2018Context2Name: A Deep Learning-Based Approach to Infer Natural Variable Names from Usage Contextscited by 11
  10. 2019Learning dynamic polynomial proofscited by 8

Built on by

Cited by year

Citing papers per year: 2021: 1; 2022: 0; 2023: 0; 2024: 1.

2 papers.