If you use the latest version of YAP rather than the exact build used in this paper it will crash with the provided ProGolem. To fix that issue, edit file GILPS/examples/examples.pl, and in line 205 change nb_getval(VarName, _),!. % variable already exists, use it's current value to nb_current(VarName, _),!. % variable already exists, use it's current value This problem is due to a change in the YAP compiler that no longer supports calls to nb_getval/2 where the first argument is a non-existing variable. This has been fixed in later ProGolem versions but so have many other things and you would not be guaranteed to have the same results.