Exploring Representation of Horn Clauses using GNNs (Extended Technical Report)
Chencheng Liang, Philipp R\"ummer, Marc Brockschmidt

TL;DR
This paper introduces R-HyGNN, a novel graph neural network architecture designed to learn from graph representations of Horn clauses, improving program verification by capturing complex semantic features.
Contribution
The paper proposes R-HyGNN, a new hypergraph neural network architecture, and introduces two graph representations of Horn clauses for enhanced program semantics learning.
Findings
R-HyGNN achieves 90.59% accuracy on complex verification tasks.
R-HyGNN perfectly predicts over 290 clauses in certain graphs.
Graph representations effectively capture syntactic and semantic information.
Abstract
Learning program semantics from raw source code is challenging due to the complexity of real-world programming language syntax and due to the difficulty of reconstructing long-distance relational information implicitly represented in programs using identifiers. Addressing the first point, we consider Constrained Horn Clauses (CHCs) as a standard representation of program verification problems, providing a simple and programming language-independent syntax. For the second challenge, we explore graph representations of CHCs, and propose a new Relational Hypergraph Neural Network (R-HyGNN) architecture to learn program features. We introduce two different graph representations of CHCs. One is called constraint graph (CG), and emphasizes syntactic information of CHCs by translating the symbols and their relations in CHCs as typed nodes and binary edges, respectively, and constructing the…
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
TopicsSoftware Engineering Research · Software Testing and Debugging Techniques · Software Engineering Techniques and Practices
