In 2017 I created logic-evolver, one of my experiments for creating logic automatically or better said evolving logic automatically.
In some way, the computer create its own program that satisfies a set of tests defined by a human.
This implementation in rust, contains a fast cpu emulator than can execute one million instructions in less than two seconds. And a simple genetic algorithm to do the evolution.
Here we create the genetic algorithm, and configure a population of 1000 individuals, and the top 5 to crossover. We run the genetic algorithm with 500 cycles maximum.
Note that in this case the population are programs initially random until take the correct shape.
An evaluation function is provided in the run method as well, and looks like this: