paper-with-me

홈 › Papers

Graph Neural Networks For Mapping Variables Between Programs -- Extended Version

2023-07-24 · Pedro Orvalho, Jelle Piepenbrock, Mikoláš Janota, Vasco Manquinho

Automated program analysis is a pivotal research domain in many areas of Computer Science -- Formal Methods and Artificial Intelligence, in particular. Due to the undecidability of the problem of program equivalence, comparing two programs is highly challenging. Typically, in order to compare two programs, a relation between both programs' sets of variables is required. Thus, mapping variables between two programs is useful for a panoply of tasks such as program equivalence, program analysis, program repair, and clone detection. In this work, we propose using graph neural networks (GNNs) to map the set of variables between two programs based on both programs' abstract syntax trees (ASTs). To demonstrate the strength of variable mappings, we present three use-cases of these mappings on the task of program repair to fix well-studied and recurrent bugs among novice programmers in introductory programming assignments (IPAs). Experimental results on a dataset of 4166 pairs of incorrect/correct programs show that our approach correctly maps 83% of the evaluation dataset. Moreover, our experiments show that the current state-of-the-art on program repair, greatly dependent on the programs' structure, can only repair about 72% of the incorrect programs. In contrast, our approach, which is solely based on variable mappings, can repair around 88.5%.

📄 PDF Abstract BibTeX arXiv:2307.13014

Code (1)

pmorvalho/ecai23-gnns-for-mapping-variables-between-programs 공식 구현

Tasks

Clone DetectionProgram Repair

Methods 이 논문이 사용한 방법론

Repair 설명 없음

Similar Papers 제목 키워드 기반

String Diagrams with Factorized Densities

2023-05-04 · Eli Sennesh, Jan-Willem van de Meent

A growing body of research on probabilistic programs and causal models has highlighted the need to reason compositionally about model classes that extend directed graphical models. Both probabilistic programs and causal …

Causal InferenceProbabilistic Programming

Bayesian Logic Programs

2001-11-23 · Kristian Kersting, Luc De Raedt

Bayesian networks provide an elegant formalism for representing and reasoning about uncertainty using probability theory. Theyare a probabilistic extension of propositional logic and, hence, inherit some of the limitatio…

Dimension Reduction via Colour Refinement

2013-07-22 · Martin Grohe, Kristian Kersting, Martin Mladenov, Erkal Selman

Colour refinement is a basic algorithmic routine for graph isomorphism testing, appearing as a subroutine in almost all practical isomorphism solvers. It partitions the vertices of a graph into "colour classes" in such a…

Dimensionality ReductionIsomorphism TestingMath

On Representing Linear Programs by Graph Neural Networks

2022-09-25 · Ziang Chen, Jialin Liu, Xinshang Wang, Jianfeng Lu 외

Learning to optimize is a rapidly growing area that aims to solve optimization problems or improve existing optimization algorithms using machine learning (ML). In particular, the graph neural network (GNN) is considered…

Graph Neural Network

Solving Conic Programs over Sparse Graphs using a Variational Quantum Approach: The Case of the Optimal Power Flow

2025-08-30 · Thinh Viet Le, Mark M. Wilde, Vassilis Kekatos arxiv

Conic programs arise broadly in physics, quantum information, machine learning, and engineering, many of which are defined over sparse graphs. Although such problems can be solved in polynomial time using classical inter…

Quantum Machine Learning