/* Boyles law: PV = P*V (V2 = V1*V0) Solutions: code = (X * Y) = [[[1.0,29.75],29.75],[[1.5,19.125],28.687999999999999],[[2.0,14.375],28.75],[[3.0,9.5],28.5],[[4.0,7.125],28.5],[[5.0,5.625],28.125],[[6.0,4.875],29.25],[[7.0,4.25],29.75],[[8.0,3.75],30.0],[[9.0,3.375],30.375],[[10.0,3.0],30.0],[[12.0,2.625],31.5],[[14.0,2.25],31.5],[[16.0,2.0],32.0],[[18.0,1.875],33.75],[[20.0,1.75],35.0],[[24.0,1.5],36.0],[[28.0,1.375],38.5],[[32.0,1.25],40.0]] = [[1,1] = 1] Cf http://hakank.org/jgap/boyles_law.conf */ data(boyles_law,Data,Vars,Unknown,Ops,Constants,MaxC) :- Data = [ [[1.0,29.750],29.750], [[1.5,19.125],28.688], [[2.0,14.375],28.750], [[3.0,9.500],28.500], [[4.0,7.125],28.500], [[5.0,5.625],28.125], [[6.0,4.875],29.250], [[7.0,4.250],29.750], [[8.0,3.750],30.000], [[9.0,3.375],30.375], [[10.0,3.000],30.000], [[12.0,2.625],31.500], [[14.0,2.250],31.500], [[16.0,2.000],32.000], [[18.0,1.875],33.750], [[20.0,1.750],35.000], [[24.0,1.500],36.000], [[28.0,1.375],38.500], [[32.0,1.250],40.000] ], get_global_map().put("use_approx",0.01), % get_global_map().put("debug",true), Ops = new_map([infix=["+","*","-","/"]]), Vars = ["X","Y"], Unknown = [1,1], Constants = 0..10, MaxC = 2.