CounterExample Guided Neural Synthesis
Not on the map. Why?
Abstract (arXiv)
Program synthesis is the generation of a program from a specification. Correct synthesis is difficult, and methods that provide formal guarantees suffer from scalability issues. On the other hand, neural networks are able to generate programs from examples quickly but are unable to guarantee that the program they output actually meets the logical specification. In this work we combine neural networks with formal reasoning: using the latter to convert a logical specification into a sequence of examples that guides the neural network towards a correct solution, and to guarantee that any solution returned satisfies the formal specification. We apply our technique to synthesising loop invariants and compare the performance to existing solvers that use SMT and existing techniques that use neural networks. Our results show that the formal reasoning based guidance improves the performance of the neural network substantially, nearly doubling the number of benchmarks it can solve.
Key facts. Cited by 4 papers in the map (data through 7 Oct 2026). First posted on arXiv 25 Jan 2020.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2023: 3; 2024: 0; 2025: 1.
4 papers.
- 2025Can Language Models Falsify? Evaluating Algorithmic Reasoning with Counterexample Creation26 Feb 2025
- 2023Formally Explaining Neural Networks within Reactive Systems31 Jul 2023
- 2023DelBugV: Delta-Debugging Neural Network Verifiers29 May 2023
- 2023Verifying Generalization in Deep Learning11 Feb 2023