Learning programs with magic values
This addresses a bottleneck in program synthesis for domains requiring unexplained constants, offering incremental improvements in efficiency and scalability.
The paper tackles the problem of learning programs with magic values, which are unexplained constants that hinder existing synthesis methods, and introduces an inductive logic programming approach that outperforms prior methods in predictive accuracy and learning time across domains like program synthesis, drug design, and game playing.
A magic value in a program is a constant symbol that is essential for the execution of the program but has no clear explanation for its choice. Learning programs with magic values is difficult for existing program synthesis approaches. To overcome this limitation, we introduce an inductive logic programming approach to efficiently learn programs with magic values. Our experiments on diverse domains, including program synthesis, drug design, and game playing, show that our approach can (i) outperform existing approaches in terms of predictive accuracies and learning times, (ii) learn magic values from infinite domains, such as the value of pi, and (iii) scale to domains with millions of constant symbols.