Generalizando a sequência de Fibonacci com o SICStus Prolog

Estou tentando encontrar uma solução para uma consulta em uma seqüência generalizada de Fibonacci (GFS). A consulta é: existe algum GFS que tenha 885 como seu 12º número? Os 2 números iniciais podem ser restritos entre 1 e 10.

Eu já encontrei a solução para encontrar o enésimo número em uma sequência que começa em (1, 1) na qual defino explicitamente os números iniciais. Aqui está o que eu tenho para isso:

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.

Para a consulta mencionada, pensei que o seguinte faria o truque, no qual reutilizo o método fib sem definir explicitamente os números iniciais, pois isso agora precisa ser feito dinamicamente:

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).

... mas isso não parece funcionar.

Não é possível definir os números iniciais ou estou fazendo algo terrivelmente errado? Não estou pedindo a solução, mas qualquer conselho que possa me ajudar a resolver isso será muito apreciado.

questionAnswers(6)

yourAnswerToTheQuestion