Обобщающая последовательность Фибоначчи с помощью SICStus Prolog

Я пытаюсь найти решение для запроса по обобщенной последовательности Фибоначчи (GFS). Вопрос: есть ли GFS, у которых 885 в качестве 12-го числа? Начальные 2 числа могут быть ограничены от 1 до 10.

Я уже нашел решение найти N-е число в последовательности, которая начинается с (1, 1), в которой я явно определяю начальные числа. Вот что у меня есть для этого:

fib(1, 1).
fib(2, 1).

fib(N, X) :-
    N #> 1,
    Nmin1 #= N - 1,
    Nmin2 #= N - 2,
    fib(Nmin1, Xmin1),
    fib(Nmin2, Xmin2),
    X #= Xmin1 + Xmin2.

Для упомянутого запроса я думал, что следующее поможет, в котором я повторно использую метод fib без явного определения начальных чисел, так как теперь это нужно делать динамически:

fib(N, X) :-
    N #> 1,
    Nmin1 #= N - 1,
    Nmin2 #= N - 2,
    fib(Nmin1, Xmin1),
    fib(Nmin2, Xmin2),
    X #= Xmin1 + Xmin2.

fib2 :-
    X1 in 1..10,
    X2 in 1..10,
    fib(1, X1),
    fib(2, X2),
    fib(12, 885).

... но это не похоже на работу.

Разве невозможно таким образом определить начальные числа, или я делаю что-то ужасно неправильно? Я не прошу решения, но любой совет, который мог бы помочь мне решить это, был бы очень признателен.

Ответы на вопрос(6)

Ваш ответ на вопрос