/* FizzBuzz We have to figure out a way to encode the Fizz (n modulo 3 = 0) Buzz (n modulo 5 = 0) FizzBuzz (n modulo 3 = 0 and n modulo 5 = 0) Else n Cf fizz_buzz.conf */ import util. data(fizzbuzz,Data,Vars,Unknown,Ops,Constants,MaxSize,Params) :- Data = [ [[A],B] : A in 1..25, fb(A)=B], % Ops = [+,/,-,mod,if_then_else,==,!=,and,or,not,<,if_less], Ops = [+,/,-,mod,if_less], Constants = [-15,-5,-3,0,3,5,15], Vars = ['N'], Unknown = [30], MaxSize = 11, Params = new_map([show_best=10, init_size=500 ]). fb(I) = fb(I, I mod 3, I mod 5). fb(_I,0,0) = -15. fb(_I,_,0) = -3. fb(_I,0,_) = -5. fb(I,_,_) = I.