Hi Jan
Sorry to bother, I was curious about s(CASP), then I tried
$ git clone https://github.com/JanWielemaker/sCASP.git
$ cd sCASP
$ make
$ swipl -O -o scasp -c prolog/scasp/main.pl
% Disabled autoloading (loaded 41 files)
[Thread 1 (main) at Sun Sep 5 14:56:25 2021] /home/carlo/swipl-devel/src/pl-comp.c:4924: mark_bvar_access___LD: Assertion failed: max >= 0
C-stack trace labeled "assert_fail":
[0] save_backtrace() at /home/carlo/swipl-devel/src/os/pl-cstack.c:333 [0x7f91a90d5908]
[1] __assert_fail() at /home/carlo/swipl-devel/src/pl-assert.c:103 [0x7f91a907a757]
[2] decompile() at /home/carlo/swipl-devel/src/pl-comp.c:5457 [0x7f91a900980f]
[3] clause() at /home/carlo/swipl-devel/src/pl-comp.c:6605 [0x7f91a9009a52]
[4] pl_clauseva_va() at /home/carlo/swipl-devel/src/pl-comp.c:6663 [0x7f91a900a042]
[5] PL_next_solution___LD() at /home/carlo/swipl-devel/src/pl-vmi.c:4754 [0x7f91a8fe8060]
[6] query_loop() at /home/carlo/swipl-devel/src/pl-pro.c:155 [0x7f91a902cf7c]
[7] prologToplevel() at /home/carlo/swipl-devel/src/pl-pro.c:499 [0x7f91a902d84b]
[8] PL_initialise() at /home/carlo/swipl-devel/src/pl-init.c:1215 [0x7f91a9071dc8]
[9] swipl(+0x6b6) [0x4006b6]
[10] __libc_start_main() at /build/glibc-S7Ft5T/glibc-2.23/csu/../csu/libc-start.c:325 [0x7f91a8c03840]
[11] swipl(+0x709) [0x400709]
Makefile:5: recipe for target 'compile_scasp' failed
make: *** [compile_scasp] Aborted (core dumped)
Iâm using: SWI-Prolog version 8.3.29, compiled today from source, but maybe I have to upgrade gcc ?
$ gcc -v
...
gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~16.04)
BTW, the system seems to work if used interactively (i.e. consulting prolog/scasp.pl, not prolog/scasp/main.pl), that is
$ swipl prolog/scasp.pl
?- scasp_load('/home/carlo/test/prolog/sCASP/examples/queens.pl').
true.
?- ?? nqueens(4, Q).
Answer 1 (in [37088] ms):
JUSTIFICATION_TREE:
nqueens(4,[q(1,2),q(2,4),q(3,1),q(4,3)]) :-
_nqueens(4,4,[],[q(1,2),q(2,4),q(3,1),q(4,3)]) :-
....
I would also like to know what the small s
in s(CASP)
means. Does it stand for symbolic ?