Semantic Code Repair using Neuro-Symbolic Transformation Networks
Not on the map. Why?
Abstract (arXiv)
We study the problem of semantic code repair, which can be broadly defined as automatically fixing non-syntactic bugs in source code. The majority of past work in semantic code repair assumed access to unit tests against which candidate repairs could be validated. In contrast, the goal here is to develop a strong statistical model to accurately predict both bug locations and exact fixes without access to information about the intended correct behavior of the program. Achieving such a goal requires a robust contextual repair model, which we train on a large corpus of real-world source code that has been augmented with synthetically injected bugs. Our framework adopts a two-stage approach where first a large set of repair candidates are generated by rule-based processors, and then these candidates are scored by a statistical model using a novel neural network architecture which we refer to as Share, Specialize, and Compete. Specifically, the architecture (1) generates a shared encoding of the source code using an RNN over the abstract syntax tree, (2) scores each candidate repair using specialized network modules, and (3) then normalizes these scores together so they can compete against one another in comparable probability space. We evaluate our model on a real-world test set gathered from GitHub containing four common categories of bugs. Our model is able to predict the exact correct repair 41% of the time with a single guess, compared to 13% accuracy for an attentional sequence-to-sequence model.
Key facts. Cited by 13 papers in the map (data through 14 Oct 2026). First posted on arXiv 30 Oct 2017.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 3; 2022: 2; 2023: 2; 2024: 4; 2025: 2.
13 papers.
Sort:
By area:
- 2023Unifying the Perspectives of NLP and Software Engineering: A Survey on Language Models for Codecited by 62
- 2021Generating Bug-Fixes Using Pretrained Transformerscited by 18
- 2021DeepDebug: Fixing Python Bugs Using Stack Traces, Backtranslation, and Code Skeletonscited by 17
- 2024Neuro-Symbolic AI: Explainability, Challenges, and Future Trendscited by 10
- 2024DeepCode AI Fix: Fixing Security Vulnerabilities with Large Language Modelscited by 7
- 2021Learning to Make Compiler Optimizations More Effectivecited by 4
- 2023Neural Machine Translation for Code Generationcited by 3
- 2025AuPair: Golden Example Pairs for Code Repaircited by 3
- 2022LAMNER: Code Comment Generation Using Character Language Model and Named Entity Recognitioncited by 1
- 2022Example-based Synthesis of Static Analysis Rulescited by 0
- 2024CONCORD: Towards a DSL for Configurable Graph Code Representationcited by 0
- 2024Bridging the Gap: Representation Spaces in Neuro-Symbolic AIcited by 0
1 more
- 2025Toward Neurosymbolic Program Comprehensioncited by 0
- 2025AuPair: Golden Example Pairs for Code Repair12 Feb 2025
- 2025Toward Neurosymbolic Program Comprehension3 Feb 2025
- 2024Bridging the Gap: Representation Spaces in Neuro-Symbolic AI7 Nov 2024
- 2024Neuro-Symbolic AI: Explainability, Challenges, and Future Trends7 Nov 2024
- 2024DeepCode AI Fix: Fixing Security Vulnerabilities with Large Language Models19 Feb 2024
- 2024CONCORD: Towards a DSL for Configurable Graph Code Representation31 Jan 2024
- 2023Unifying the Perspectives of NLP and Software Engineering: A Survey on Language Models for Code14 Nov 2023
- 2023Neural Machine Translation for Code Generation22 May 2023
- 2022Example-based Synthesis of Static Analysis Rules19 Apr 2022
- 2022LAMNER: Code Comment Generation Using Character Language Model and Named Entity Recognition5 Apr 2022
- 2021DeepDebug: Fixing Python Bugs Using Stack Traces, Backtranslation, and Code Skeletons19 May 2021
- 2021Generating Bug-Fixes Using Pretrained Transformers16 Apr 2021
1 more
- 2021Learning to Make Compiler Optimizations More Effective24 Feb 2021
- 2025AuPair: Golden Example Pairs for Code Repaircited by 3
- 2025AuPair: Golden Example Pairs for Code Repair12 Feb 2025
- 2023Unifying the Perspectives of NLP and Software Engineering: A Survey on Language Models for Codecited by 62
- 2021Generating Bug-Fixes Using Pretrained Transformerscited by 18
- 2021DeepDebug: Fixing Python Bugs Using Stack Traces, Backtranslation, and Code Skeletonscited by 17
- 2024Neuro-Symbolic AI: Explainability, Challenges, and Future Trendscited by 10
- 2024DeepCode AI Fix: Fixing Security Vulnerabilities with Large Language Modelscited by 7
- 2021Learning to Make Compiler Optimizations More Effectivecited by 4
- 2023Neural Machine Translation for Code Generationcited by 3
- 2022LAMNER: Code Comment Generation Using Character Language Model and Named Entity Recognitioncited by 1
- 2022Example-based Synthesis of Static Analysis Rulescited by 0
- 2024CONCORD: Towards a DSL for Configurable Graph Code Representationcited by 0
- 2024Bridging the Gap: Representation Spaces in Neuro-Symbolic AIcited by 0
- 2025Toward Neurosymbolic Program Comprehensioncited by 0
- 2025Toward Neurosymbolic Program Comprehension3 Feb 2025
- 2024Bridging the Gap: Representation Spaces in Neuro-Symbolic AI7 Nov 2024
- 2024Neuro-Symbolic AI: Explainability, Challenges, and Future Trends7 Nov 2024
- 2024DeepCode AI Fix: Fixing Security Vulnerabilities with Large Language Models19 Feb 2024
- 2024CONCORD: Towards a DSL for Configurable Graph Code Representation31 Jan 2024
- 2023Unifying the Perspectives of NLP and Software Engineering: A Survey on Language Models for Code14 Nov 2023
- 2023Neural Machine Translation for Code Generation22 May 2023
- 2022Example-based Synthesis of Static Analysis Rules19 Apr 2022
- 2022LAMNER: Code Comment Generation Using Character Language Model and Named Entity Recognition5 Apr 2022
- 2021DeepDebug: Fixing Python Bugs Using Stack Traces, Backtranslation, and Code Skeletons19 May 2021
- 2021Generating Bug-Fixes Using Pretrained Transformers16 Apr 2021
- 2021Learning to Make Compiler Optimizations More Effective24 Feb 2021