Наша ближайшая цель – определить, какой вид имеет производящая функция произвольной линейной рекуррентной последовательности.
Рассмотрим в качестве примера производящую функцию последовательности чисел Фибоначчи:
F(z) = F0 + F1z + F2z2 + … . (4)
Умножим F(z) на z и на z2:
zF(z) = F0z + F1z2 + F2z3 + … ;
z2F(z) = F0z2 + F1z3 + F2z2 + … .
Так как F2 = F1 + F0; F3 = F2 + F1;… , то
zF(z) + z2F(z) = F0z + F2z2 + F3z3 + … .
Учитывая, что F0 = 0 и F1 =1, получаем:
z + zF(z) + z2F(z) = F(z).
Отсюда получается компактная формула:
F(z) = z . (5)
1 − z − z 2
Используя (5), можно найти явные выражения для чисел
Фибоначчи. Начнем с того, что представим дробь из (5) в виде
Тогда
z
1 − z − z 2
A
= A +
1 − бz
n
B
1 − вz
B
. (6)
n
1 − бz
A ∑ (бz)
n ≥ 0
;
1 − вz
B ∑ (вz) ,
n≥ 0
и, значит,
z
= A ∑(бz)n + B ∑(вz)n = ∑( Aб n Bв n ) z n .
1 − z − z 2
n≥ 0
n≥ 0
n≥0
Таким образом,
Fn = An + Bn.
Чтобы найти неизвестные коэффициенты A, B, и , приведем дроби из (6) к общему знаменателю и приравняем коэффициенты при одинаковых степенях z. Получаются следующие уравнения:
ее производящая функция. Рассмотрим произведение f(z) на
многочлен
h(z) = 1 – a1z – a2z2 –…– arzr .
Коэффициент при zn+r равен
un+r – a1un+r–1 – a2un+r–2 –…– arun ,
и, значит, обращается в ноль в силу (9). Таким образом, в произведении h(z)f(z) все коэффициенты при степенях z, больших или равных r, обращаются в ноль, т. е. g(z) = h(z)f(z) – это многочлен степени не выше чем r – 1. Производящая функция последовательности (8) оказывается равной дробно-
рациональной функции
f ( z)
g(z) .
h(z)
Примеры.1. Для геометрической прогрессии со знаменателем q имеем