Я нашел код, который умножает матрицы. % SWI-Prolog has transpose/2 in its clpfd library
:- use_module(library(clpfd)).
% N is the dot product of lists V1 and V2.
dot(V1, V2, N) :- maplist(product
Я пытаюсь выяснить, как сгенерировать список множеств, где каждый набор имеет длину N, а сумма каждого набора равна X. Я нашел этот код: num_split(0,[]).
num_split(N, [X | List]):-
between(1,N,X
У меня есть очень большое количество уравнений, которые я пытаюсь использовать PROLOG для решения. Тем не менее, я пришел к второстепенному урожаю, поскольку они не указаны в каком-либо полезном поряд
Я пытаюсь написать решатель для головоломок End View, используя CLPFD (для незнакомых, вот простое описание http://www.funwithpuzzles.com/2009/12/abcd-end-view-a1.html). Я работаю над ограничением, ко
fd_domain([A, B, C], 0, 9), (A**(B+C)) #= ((A**B)*(A**C)).
Возможно, некоторые решения? Кажется, хорошо, P Я получаю эту конкретную ошибку: uncaught exception: error(instantiation_error,(#=)/2)
Я пытаюсь использовать constrain X, чтобы не быть значением в списке. От SICStus Prolog manual: ?X in_set +FDSet
Я не могу понять, как преобразовать список в FDSet, хотя. У меня есть список целых чи