Relational program synthesis with numerical reasoning
C\'eline Hocquette, Andrew Cropper

TL;DR
NUMSYNTH is a novel inductive logic programming method that combines relational learning with numerical reasoning, enabling efficient synthesis of programs involving continuous numerical values from diverse domains.
Contribution
It introduces NUMSYNTH, a new approach that leverages satisfiability modulo theories to learn programs with numerical values, outperforming existing methods in accuracy and speed.
Findings
Successfully learns programs with numerical values from linear arithmetic.
Outperforms existing approaches in accuracy and learning time.
Effective across diverse domains like game playing and program synthesis.
Abstract
Program synthesis approaches struggle to learn programs with numerical values. An especially difficult problem is learning continuous values over multiple examples, such as intervals. To overcome this limitation, we introduce an inductive logic programming approach which combines relational learning with numerical reasoning. Our approach, which we call NUMSYNTH, uses satisfiability modulo theories solvers to efficiently learn programs with numerical values. Our approach can identify numerical values in linear arithmetic fragments, such as real difference logic, and from infinite domains, such as real numbers or integers. Our experiments on four diverse domains, including game playing and program synthesis, show that our approach can (i) learn programs with numerical values from linear arithmetical reasoning, and (ii) outperform existing approaches in terms of predictive accuracies and…
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
Taxonomy
TopicsLogic, programming, and type systems · Formal Methods in Verification · Logic, Reasoning, and Knowledge
