Journal of Automated Reasoning

, Volume 53, Issue 2, pp 141–172

Machine Learning for First-Order Theorem Proving

Learning to Select a Good Heuristic


  • James P. Bridge
    • Computer LaboratoryUniversity of Cambridge
    • Computer LaboratoryUniversity of Cambridge
  • Lawrence C. Paulson
    • Computer LaboratoryUniversity of Cambridge

DOI: 10.1007/s10817-014-9301-5

Cite this article as:
Bridge, J.P., Holden, S.B. & Paulson, L.C. J Autom Reasoning (2014) 53: 141. doi:10.1007/s10817-014-9301-5


We applied two state-of-the-art machine learning techniques to the problem of selecting a good heuristic in a first-order theorem prover. Our aim was to demonstrate that sufficient information is available from simple feature measurements of a conjecture and axioms to determine a good choice of heuristic, and that the choice process can be automatically learned. Selecting from a set of 5 heuristics, the learned results are better than any single heuristic. The same results are also comparable to the prover’s own heuristic selection method, which has access to 82 heuristics including the 5 used by our method, and which required additional human expertise to guide its design. One version of our system is able to decline proof attempts. This achieves a significant reduction in total time required, while at the same time causing only a moderate reduction in the number of theorems proved. To our knowledge no earlier system has had this capability.


Automatic theorem provingMachine learningFirst-order logic with equalityFeature selectionSupport vector machinesGaussian processes

Copyright information

© Springer Science+Business Media Dordrecht 2014