/* Data from Push's example Ackermann.inputs http://en.wikipedia.org/wiki/Ackermann_function * stop_criteria=generations gen = 349 (time: 21.231s) results_best = [[94,pow_mod2(-1 + y,x + y)]] Cf ackermann.conf */ data(ackermann,Data,Vars,Unknown,Ops,Constants,MaxSize,Params) :- Seq = [1.74369,1.57483,1.40299,1.23749,1.08657,0.95934,0.85755,0.77850,0.71739,0.66865,0.53873,0.45803,0.37487,0.31905,0.25126,0.21060], Data = [ [[1,3],13], [[1,2],5], [[1,1],3], [[0,1],2], [[0,0],1], [[3,2],9], [[4,2],11], [[3,3],61], [[5,2],13], [[2,3],29], [[4,3],125], [[5,3],253], [[1,0],2], [[2,0],3], [[4,0],5], [[3,1],5], [[2,1],4], [[4,1],6], [[5,1],7], [[2,2],7], [[3,2],4] ], Ops = [*,+,-,/,mod,pow_mod2,if_then_else,==,!=], Vars = ['x','y'], Constants = -10..10, MaxSize = 5, Params = new_map([ num_gens=1000, stop_criteria=generations ]).