Evolving sqrt into 1/x via Software Data Maintenance

Publication, 2020


W. Langdon, O. Krauss - Evolving sqrt into 1/x via Software Data Maintenance - Proceedings of the Genetic and Evolutionary Computation Conference Companion - GECCO '20, Virtuell, Austria, 2020


While most software automation research concentrates on programs’ code, we have started investigating if Genetic Improvement (GI) of data can assist developers by automating aspects of the maintenance of parameters embedded in source code. We extend recent GI work on optimising compile time constants to give new functionality and describe the transformation of a GNU C library square root function into the double precision reciprocal function, drcp. Multiplying by 1/x (drcp) allows division free division without requiring the hardware to support division. The evolution (6 seconds) and indeed the GI dp division (7.14±0.012 nS) are both surprisingly fast.