LGFLMLFeb 17, 2020

Equivalence of Dataflow Graphs via Rewrite Rules Using a Graph-to-Sequence Neural Model

arXiv:2002.06799v26 citations
AI Analysis

This addresses the challenge of automated program verification for developers and researchers, offering a novel neural approach to a classical problem, though it is incremental in applying neural methods to graph rewriting.

The paper tackles the problem of proving equivalence between programs represented as dataflow graphs by formalizing it as finding semantics-preserving rewrite rules and developing a graph-to-sequence neural network to generate such rewrite sequences. The system achieved a 96% success rate on 10,000 test program pairs using 30-term programs, with provable equivalence computed in negligible time.

In this work we target the problem of provably computing the equivalence between two programs represented as dataflow graphs. To this end, we formalize the problem of equivalence between two 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 the first 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 system outputs via inference a correct rewrite sequence for 96% of the 10,000 program pairs isolated for testing, using 30-term programs. And in all cases, the validity of the sequence produced and therefore the provable assertion of program equivalence is computable, in negligible time.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes