Proof searching in HOL4 with genetic algorithm

Proof searching and proof automation are the two most desired properties in interactive theorem provers (ITPs) as they generally require manual user guidance, which can be quite cumbersome. In this paper, we provide an evolutionary proof searching approach for the HOL4 proof assistant, where a genetic algorithm (GA) with different crossover and mutation operators is used to search and optimize the proofs in different HOL theories. Random proof sequences are first generated from a population of frequently occurring HOL4 proof steps that are discovered with sequential pattern mining. Generated proof sequences are then evolved with GA operators (three crossover and two mutation) till their fitness match the fitness of the target proof sequences. Various crossover and mutation operators are used to compare their effect on the performance of GAs in proof searching. Obtained results suggest that integrating GAs with HOL4 allows us to efficiently support proof finding and optimization.

[1]  Ying-ping Chen,et al.  Proving theorems by using evolutionary search with human involvement , 2017, 2017 IEEE Congress on Evolutionary Computation (CEC).

[2]  Chad E. Brown,et al.  Internal Guidance for Satallax , 2016, IJCAR.

[3]  Meng Sun,et al.  A Formal Design Model for Genetic Algorithms Operators and its Encoding in PVS , 2018, BDIOT 2018.

[4]  John R. Koza,et al.  Genetic programming as a means for programming computers by natural selection , 1994 .

[5]  Sofiène Tahar,et al.  Formal Verification Methods , 2015 .

[6]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[7]  Chao-Hong Chen,et al.  Automatically proving mathematical theorems with evolutionary algorithms and proof assistants , 2016, 2016 IEEE Congress on Evolutionary Computation (CEC).

[8]  Marc Gravel,et al.  Ensuring population diversity in genetic algorithms: A technical note with application to the cell formation problem , 2007, Eur. J. Oper. Res..

[9]  Michael Norrish,et al.  A Brief Overview of HOL4 , 2008, TPHOLs.

[10]  Dorothea Heiss-Czedik,et al.  An Introduction to Genetic Algorithms. , 1997, Artificial Life.

[11]  José Espírito Santo,et al.  Curry-Howard for Sequent Calculus at Last! , 2015, TLCA.

[12]  Yi Li,et al.  A Survey on Theorem Provers in Formal Methods , 2019, ArXiv.

[13]  John R. Koza,et al.  Genetic programming - on the programming of computers by means of natural selection , 1993, Complex adaptive systems.

[14]  Josef Urban,et al.  DeepMath - Deep Sequence Models for Premise Selection , 2016, NIPS.

[15]  Philippe Fournier-Viger,et al.  Proof Guidance in PVS with Sequential Pattern Mining , 2019, FSEN.

[16]  Hazel Duncan,et al.  The use of data-mining for the automatic formation of tactics , 2004 .

[17]  Thibault Gauthier,et al.  TacticToe: Learning to Reason with HOL4 Tactics , 2017, LPAR.

[18]  Yun Sing Koh,et al.  A Survey of Sequential Pattern Mining , 2017 .

[19]  Cezary Kaliszyk,et al.  HolStep: A Machine Learning Dataset for Higher-order Logic Theorem Proving , 2017, ICLR.

[20]  Cezary Kaliszyk,et al.  Machine Learning of Coq Proof Guidance: First Experiments , 2014, SCSS.

[21]  Yves Bertot,et al.  Interactive Theorem Proving and Program Development: Coq'Art The Calculus of Inductive Constructions , 2010 .