fib_array(0,[0]). fib_array(1,[0,1]). fib_array(N,A) :- N > 1, A = new_array(N), A[1] = 1, A[2] = 1, foreach(I in 3..N) A[I] = A[I-1] + A[I-2] end.