i make this program to solve the soliter (a game) but when i make the query listeboule(25,X) and further i have this message {ERROR: bus error} { Execution aborted } what's happenning i'm a beginner with prolog thanks for answering
closeto(boule(2,1),boule(2,2),boule(2,3)). closeto(boule(2,1),boule(4,7),boule(4,4)). closeto(boule(2,1),boule(1,3),boule(1,2)). closeto(boule(2,1),boule(2,4),boule(2,7)).
closeto(boule(2,2),boule(2,3),boule(3,1)). closeto(boule(2,2),boule(4,8),boule(4,5)). closeto(boule(2,2),boule(2,1),boule(1,3)). closeto(boule(2,2),boule(2,5),boule(2,8)).
closeto(boule(2,3),boule(2,6),boule(2,9)). closeto(boule(2,3),boule(4,9),boule(4,6)). closeto(boule(2,3),boule(2,2),boule(2,1)). closeto(boule(2,3),boule(3,1),boule(3,2)).
closeto(boule(2,4),boule(2,5),boule(2,6)). closeto(boule(2,4),boule(2,1),boule(4,7)). closeto(boule(2,4),boule(1,6),boule(1,5)). closeto(boule(2,4),boule(2,7),boule(5,1)).
closeto(boule(2,5),boule(2,6),boule(3,4)). closeto(boule(2,5),boule(2,2),boule(4,8)). closeto(boule(2,5),boule(2,4),boule(1,6)). closeto(boule(2,5),boule(2,8),boule(5,2)).
closeto(boule(2,6),boule(3,4),boule(3,5)). closeto(boule(2,6),boule(2,3),boule(4,9)). closeto(boule(2,6),boule(2,5),boule(2,4)). closeto(boule(2,6),boule(2,9),boule(5,3)).
closeto(boule(2,7),boule(2,8),boule(2,9)). closeto(boule(2,7),boule(2,4),boule(2,1)). closeto(boule(2,7),boule(1,9),boule(1,8)). closeto(boule(2,7),boule(5,1),boule(5,4)).
closeto(boule(2,8),boule(2,9),boule(3,7)). closeto(boule(2,8),boule(2,5),boule(2,2)). closeto(boule(2,8),boule(2,7),boule(1,9)). closeto(boule(2,8),boule(5,2),boule(5,5)).
closeto(boule(2,9),boule(3,7),boule(3,8)). closeto(boule(2,9),boule(2,6),boule(2,3)). closeto(boule(2,9),boule(2,8),boule(2,7)). closeto(boule(2,9),boule(5,3),boule(5,6)).
closeto(boule(1,1),boule(1,2),boule(1,3)). closeto(boule(1,1),boule(1,4),boule(1,7)).
closeto(boule(1,2),boule(1,3),boule(2,1)). closeto(boule(1,2),boule(1,5),boule(1,8)).
closeto(boule(1,3),boule(2,1),boule(2,2)). closeto(boule(1,3),boule(1,6),boule(1,9)). closeto(boule(1,3),boule(1,2),boule(1,1)).
closeto(boule(1,4),boule(1,5),boule(1,6)).
closeto(boule(1,5),boule(1,6),boule(2,4)).
closeto(boule(1,6),boule(2,4),boule(2,5)). closeto(boule(1,6),boule(1,5),boule(1,4)).
closeto(boule(1,7),boule(1,8),boule(1,9)). closeto(boule(1,7),boule(1,4),boule(1,1)).
closeto(boule(1,8),boule(1,9),boule(2,7)). closeto(boule(1,8),boule(1,4),boule(1,1)).
closeto(boule(1,9),boule(2,7),boule(2,8)). closeto(boule(1,9),boule(1,6),boule(1,3)). closeto(boule(1,9),boule(1,8),boule(1,7)).
closeto(boule(3,1),boule(3,2),boule(3,3)). closeto(boule(3,1),boule(2,3),boule(2,2)). closeto(boule(3,1),boule(3,4),boule(3,7)).
closeto(boule(3,2),boule(3,1),boule(2,3)). closeto(boule(3,2),boule(3,5),boule(3,8)).
closeto(boule(3,3),boule(3,2),boule(3,1)). closeto(boule(3,3),boule(3,6),boule(3,9)).
closeto(boule(3,4),boule(2,6),boule(2,5)). closeto(boule(3,4),boule(3,5),boule(3,6)).
closeto(boule(3,5),boule(3,4),boule(2,6)).
closeto(boule(3,6),boule(3,5),boule(3,4)).
closeto(boule(3,7),boule(3,8),boule(3,9)). closeto(boule(3,7),boule(3,4),boule(3,1)). closeto(boule(3,7),boule(2,9),boule(2,8)).
closeto(boule(3,8),boule(3,5),boule(3,2)). closeto(boule(3,8),boule(3,7),boule(2,9)).
closeto(boule(3,9),boule(3,6),boule(3,3)). closeto(boule(3,9),boule(3,8),boule(3,7)).
closeto(boule(4,1),boule(4,2),boule(4,3)). closeto(boule(4,1),boule(4,4),boule(4,7)).
closeto(boule(4,2),boule(4,5),boule(4,8)).
closeto(boule(4,3),boule(4,2),boule(4,1)). closeto(boule(4,3),boule(4,6),boule(4,9)).
closeto(boule(4,4),boule(4,5),boule(4,6)). closeto(boule(4,1),boule(4,7),boule(2,1)).
closeto(boule(4,5),boule(4,8),boule(2,2)).
closeto(boule(4,6),boule(4,5),boule(4,4)). closeto(boule(4,6),boule(4,9),boule(2,3)).
closeto(boule(4,7),boule(4,8),boule(4,9)). closeto(boule(4,7),boule(4,4),boule(4,1)). closeto(boule(4,7),boule(2,1),boule(2,4)).
closeto(boule(4,8),boule(4,5),boule(4,2)). closeto(boule(4,8),boule(2,2),boule(2,5)).
closeto(boule(4,9),boule(4,6),boule(4,3)). closeto(boule(4,9),boule(4,8),boule(4,7)). closeto(boule(4,9),boule(2,3),boule(2,6)).
closeto(boule(5,1),boule(5,2),boule(5,3)). closeto(boule(5,1),boule(2,7),boule(2,4)). closeto(boule(5,1),boule(5,4),boule(5,7)).
closeto(boule(5,2),boule(2,8),boule(2,5)). closeto(boule(5,2),boule(5,5),boule(5,8)).
closeto(boule(5,3),boule(2,9),boule(2,6)). closeto(boule(5,3),boule(5,2),boule(5,1)). closeto(boule(5,3),boule(5,6),boule(5,9)).
closeto(boule(5,4),boule(5,5),boule(5,6)). closeto(boule(5,4),boule(5,1),boule(2,7)).
closeto(boule(5,5),boule(5,2),boule(2,8)).
closeto(boule(5,6),boule(5,3),boule(2,9)). closeto(boule(5,6),boule(5,5),boule(5,4)).
closeto(boule(5,7),boule(5,8),boule(5,9)). closeto(boule(5,7),boule(5,4),boule(5,1)).
closeto(boule(5,8),boule(5,5),boule(5,2)).
closeto(boule(5,9),boule(5,6),boule(5,3)). closeto(boule(5,9),boule(5,8),boule(5,7)).
listeboule(1,[boule(1,1),boule(1,2),boule(1,3),boule(1,4),boule(1,5),boule(1,6),boule(1,7),boule(1,8),boule(1,9),boule(2,1),boule(2,2),boule(2,3),boule(2,4),boule(2,5),boule(2,6),boule(2,7),boule(2,8),boule(2,9),boule(3,1),boule(3,2),boule(3,4),boule(3,5),boule(3,6),boule(3,7),boule(3,8),boule(3,9),boule(4,1),boule(4,2),boule(4,3),boule(4,4),boule(4,5),boule(4,6),boule(4,7),boule(4,8),boule(4,9),boule(5,1),boule(5,2),boule(5,3),boule(5,4),boule(5,5),boule(5,6),boule(5,7),boule(5,8)]). listeboule(N,X):-N > 1,N1 is N-1,listeboule(N1,X7),listeboulevide(N1,X8),closeto(X3,X4,X5),member(X5,X8),member(X3,X7),member(X4,X7),append([X5],X7,X9),deletelist([X3,X4],X9,X). listeboulevide(1,[boule(5,9)]). listeboulevide(N,X):-N > 1,N1 is N-1,listeboule(N1,X1),listeboulevide(N1,X2),closeto(X3,X4,X5),member(X4,X1),member(X5,X2),member(X3,X1),append([X3,X4],X2,X6),delete(X5,X6,X). append([],L2,L2). append([A|B],L2,[A|C]):-append(B,L2,C). delete(_,[],[]). delete(X,[X|Q],R):-delete(X,Q,R). delete(X,[T|Q],[T|RQ]):-X=T,delete(X,Q,RQ). deletelist([X,Y],A,B):-delete(X,A,Z1),delete(Y,Z1,B).