Evaluating summations involving Fibonacci numbers in terms of Fibonacci numbers

There is probably no package or algorithm that can give you answer in all cases. However, I would like to suggest a semi-automatic solution. I will illustrate it with few examples. Notice, I do not know solutions in advance.

Example 1

t[1] = Table[Sum[Fibonacci[3 i], {i, 0, k}], {k, 0, 10}]
*({0, 2, 10, 44, 188, 798, 3382, 14328, 60696, 257114, 1089154}*)

This sum is given in OP's question. We can analyse it with

at[1]=FindGeneratingFunction[t[1], x]
(*(2 x)/(1 - 5 x + 3 x^2 + x^3)*)

or

Apart[at[1]]
(*1/(2 (-1 + x)) + (-1 - x)/(2 (-1 + 4 x + x^2))*)

The first term results simplify in $-1/2$ sequence. For the first term we do not know much except that it should be expressible in terms of Fibonacci numbers. Therefore:

FindGeneratingFunction[Table[Fibonacci[3 k], {k, 0, 10}], x]
(*-((2 x)/(-1 + 4 x + x^2))*)
FindGeneratingFunction[Table[Fibonacci[3 k + 1], {k, 0, 10}], x]
(*(-1 + x)/(-1 + 4 x + x^2)*)
FindGeneratingFunction[Table[Fibonacci[3 k + 2], {k, 0, 10}], x]
(*(-1 - x)/(-1 + 4 x + x^2)*)
FindGeneratingFunction[Table[Fibonacci[3 k + 3], {k, 0, 10}], x]
(*-(2/(-1 + 4 x + x^2))*)

Simply by observing the results we conclude

t[1]=1/2 Fibonacci[3 k + 2]-1/2

Consider now another more complicated

Example 2

t[2] = Table[Sum[Fibonacci[5 i] Fibonacci[3 i], {i, 0, k}], {k, 0, 10}]
at[2] = FindGeneratingFunction[t[2], x] // Apart
(*{0, 10, 450, 21190, 995350, 46760600, 2196751960, 103200583850, 4848230682890, 227763641527950, 10700042921088950}*)
(*(1 + x)/(5 (1 - 47 x + x^2)) + (-1 - x)/(5 (1 + 3 x + x^2))*)

Knowing generating functions we can express the sequence as:

t[2]=Fibonacci[8 k + 4]/15 - (-1)^k Fibonacci[1 + 2 k]/5

Rather complicated example

t[3] = Table[
   Sum[Fibonacci[4 i] Fibonacci[3 i] Fibonacci[2 i] Fibonacci[i], {i, 
     0, k}], {k, 0, 15}];
at[3] = FindGeneratingFunction[t[3], x] // Apart
(*1/(25 (1 + x)) + (1 + x)/(25 (1 - 123 x + x^2)) + (-1 - x)/(
 25 (1 - 18 x + x^2)) + (-1 - x)/(25 (1 + 47 x + x^2))*)

Indicating that this sum of products can be expressed in terms of

Fibonacci[6k+a], Fibonacci[8k+b], Fibonacci[10k+c] and a constant.

One knows in principle what is the class of functions to search for. However, I would not dare to make this process fully automatic....


f1[n_] = Sum[Fibonacci[i]*(-1)^i, {i, 0, n}];

If you know or suspect the general form of the model

model = (-1)^n Fibonacci[b*n + c] + d;

data = Table[f1[n], {n, 10}] // Simplify;

f2[n_] = model /. (
   NonlinearModelFit[data, model, {b, c, d}, n][
     "BestFitParameters"] /. 
    x_?NumericQ /; (Abs[x - Round[x]] < 10^-10) :> Round[x])

(*  -1 + (-1)^n Fibonacci[-1 + n]  *)

Verifying equivalence for integer values of n

f1[n] == f2[n] // FunctionExpand //
 Simplify[#, Element[n, Integers]] &

(*  True  *)

EDIT: Added plot

ParametricPlot[ReIm[f2[n]], {n, 0, 9.6},
 PlotRange -> All,
 Epilog -> {Red, AbsolutePointSize[4],
   Tooltip[Point[{#[[2]], 0}], #] & /@
    Table[{n, f1[n] // Simplify}, {n, 9}]}]

enter image description here