Learning Continuous Semantic Representations of Symbolic Expressions
Miltiadis Allamanis, Pankajan Chanthirasegaran, Pushmeet Kohli,, Charles Sutton

TL;DR
This paper introduces neural equivalence networks that learn continuous semantic representations of algebraic and logical expressions, effectively capturing semantic equivalence despite syntactic differences.
Contribution
It presents a novel neural architecture designed to represent semantic equivalence of symbolic expressions in a continuous space, addressing the challenge of syntax-sensitive semantics.
Findings
Model significantly outperforms existing architectures in equivalence checking.
Effective in handling diverse algebraic and boolean expressions.
Demonstrates the potential of neural networks for symbolic reasoning tasks.
Abstract
Combining abstract, symbolic reasoning with continuous neural reasoning is a grand challenge of representation learning. As a step in this direction, we propose a new architecture, called neural equivalence networks, for the problem of learning continuous semantic representations of algebraic and logical expressions. These networks are trained to represent semantic equivalence, even of expressions that are syntactically very different. The challenge is that semantic representations must be computed in a syntax-directed manner, because semantics is compositional, but at the same time, small changes in syntax can lead to very large changes in semantics, which can be difficult for continuous neural architectures. We perform an exhaustive evaluation on the task of checking equivalence on a highly diverse class of symbolic algebraic and boolean expression types, showing that our model…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsTopic Modeling · Natural Language Processing Techniques · Software Engineering Research
