Documente Academic
Documente Profesional
Documente Cultură
F (z) = F0 + F1 z + F2 z 2 + F3 z 3 + . . . + Fn z n + . . .
zF (z) = F0 z + F1 z 2 + F2 z 3 + . . . + Fn−1 z n + . . .
z 2 F (z) = F0 z 2 + F1 z 3 + . . . + Fn−2 z n + . . .
Dacă scădem membru cu membru cele două formule din urmă din prima, şi
ţinem cont de formula de definiţie a numerelor lui Fibonacci, obţinem:
F (z)(1 − z − z 2 ) = z
de unde
z
F (z) = (1)
1 − z − z2
Calculele de mai sus pot fi justificate matematic, dar nu insistăm asupra aces-
teia. Totuşi, dacă dezvoltăm funcţia de mai sus ı̂n serie MacLauren, obţinem
exact seria generatoare a numerelor lui Fibonacci. Pentru seriile de puteri
se potp stabile valorile lui z pentru care seria converge. Dacă z ∈ R şi
lim n
|an | = r atunci seria este convergentă pentru orice |z| < r. Pentru
n→∞
cele ce urmează convergenţa nu are importanţă, dacă totuşi ne ı̂ndoim de
justeţea calculelor efectuate, rezultatul obţinut se poate verifica totdeaunea şi
prin alte căi.
1
Funcţiile generatoare au multe aplicaţii. Cu ajutorul lor pot fi demonstrate
o serie de identităţi, pot fi obţinute formule
Xinteresante. X
Fie date funcţiile generatoare: A(z) = an z n şi B(z) = bn z n , ı̂nşirăm
n≥0 n≥0
ı̂n continuare câteva operaţii care se pot efectua cu ele.
a) egalitate
A(z) = B(z) dacă şi numai dacă an = bn pentru orice n ∈ N.
b) adunare
X
αA(z) + βB(z) = (αan + βbn )z n
n≥0
c) deplasare
Funcţia
X X
z k A(z) = an z n+k = an−k z n
n≥0 n≥k
1 2 k−1
X
n−k
X
(A(z) − a 0 − a 1 z − a 2 z − . . . − a k−1 z ) = a n z = ak−n z n
zk n≥k n≥0
2
Caz particular: Dacă bn = 1 pentru orice n natural, atunci
n
1 X X
A(z) = ( ak )z n (2)
1−z n≥0 k=0
e) derivare
X
A0 (z) = a1 + 2a2 z + 3a3 z 2 + . . . = (n + 1)an+1 z n
n≥0
X 1
A(z) = zn = ,
n≥0
1−z
f) integrare
Z z
1 1 X1
A(t)dt = a0 z + a1 z 2 + a2 z 3 + . . . = an−1 z n
0 2 3 n≥1
n
Exemplu:
Fie funcţia generatoare:
1
= 1 + z + z2 + z3 + . . .
1−z
Prin integrare membru cu membru obţinem:
1 1 1 X1
ln = z + z2 + z3 + . . . = zn
1−z 2 3 n≥1
n
3
Prin ı̂nmulţirea celor două funcţii generatoare de mai sus, obţinem:
1 1 X
ln = Hn z n
1−z 1−z n≥1
1 1 1
unde Hn = 1 + + + . . . + , (H0 = 0, H1 = 1) sunt aşa-numitele nu-
2 3 n
mere armonice.
g) schimbarea argumentului
X
Fie dată funcţia generatoare A(z) = an z n reprezentând şirul
n≥0
X
a0 , a1 , a2 , . . ., atunci funcţia A(cz) = cn a n z n reprezintă şirul
n≥0
a0 , ca1 , c2 a2 , . . . cn an , . . .. Avem şi următoarele formule:
1
(A(z) + A(−z)) = a0 + a2 z 2 + . . . + a2n z 2n + . . .
2
1
(A(z) − A(−z)) = a1 z + a3 z 3 + . . . + a2n−1 z 2n−1 + . . .
2
1
Exemplu: Fie A(z) = 1 + z + z 2 + z 3 + . . . = . Atunci
1−z
2 4 1 1 1 1 1
1 + z + z + . . . = (A(z) + A(−z)) = + =
2 2 1−z 1+z 1 − z2
4
Coeficientul lui z n+1 din membrul stâng este Fn+1 (adică, al (n + 1)-lea număr
Fibonacci), iar coeficientul lui z n+1 dinmembrul drept, după aplicarea formulei
X n − k
binomului ı̂n fiecare termen, este . De unde obţinem formula
k
k≥0
b n+1 c
X n − k X 2
n−k
Fn+1 = = (4)
k≥0
k k=0
k
−m k m+k−1
= (−1) ,
k k
se poate obţine următoarea formulă:
1 X m + k
= zk
(1 − z)m+1 k≥0
k
Atunci
zm X m + k X m + k Xk
m+k m+k
= z = z = zk
(1 − z)m+1 k≥0
k k≥0
m k≥0
m
5
1.2 Aplicaţiile funcţiilor generatoare
Funcţiile generatoare, printre altele, pot fi aplicate la numărarea unor obiecte,
la demonstrarea unor identităţi, la rezolvarea problemelor de partiţionare.
Numărarea unor obiecte se face prin obţinerea unor formule recursive, care
pe urmă sunt folosite ı̂n funcţii generatoare, care după dezvoltarea lor ne dau
valorile căutate.
Demonstrarea unor identităţi se poate face ı̂n mai multe moduri:
– prin dezvoltarea unor funcţii generatoare ı̂n două moduri şi egalând
coeficienţii obţinuţi,
– prin schimbarea ordinii de ı̂nsumare, dacă coeficienţii sunt deasemenea
sume,
– prin diferite operaţii (derivare, integrare) asupra unor funcţii generatoare,
– prin folosirea formulelor recursive (ı̂nlocuirea valorilor cunoscute).
X
Fie B(z) = bn z n funcţia generatoare a numerelor bn . În acest caz
n≥0
membrul stâng de mai sus este egal cu B(z) − 1 (deoarece b0 = 1). Membrul
6
drept seamănă foarte mult cu produsul a două funcţii generatoare. Fie
X X
A(z) = zB(z) = bn z n+1 = bn−1 z n
n≥0 n≥1
! !
1 X 1 1 X 1
= 1− 2 (−4z)n = 1− 2 (−1)n 22n z n =
2z n≥0
n 2z n≥0
n
X 1
X 1
2n n
2 n 2n+1 n
= (−1) 2 z = z
n≥0
n+1 n≥0
n+1 n
1 2n
De unde bn = .
n+1 n
7
1
2 (−1)n 2n
= 2n+1
n+1 2 (n + 1) n
Fie
X X
F (z) = fn z n şi B(z) = bn z n .
n≥0 n≥0
8
Înmulţind ı̂n (9) cu z n ı̂n ambii membri şi ı̂nsumând după n, obţinem
n−1
!
X X X
fn z n = 2 fk bn−1−k z n
n≥2 n≥2 k=0
De unde
z
F (z) = ,
1 − 2zB(z)
dar ştiind că
1 √
B(z) = 1 − 1 − 4z ,
2z
obţinem
z X − 1
−1/2 2 (−4z)n
F (z) = √ = z(1 − 4z) =z
1 − 4z n≥0
n
de unde se obţine
2n − 2 2n
fn = sau fn+1 = = (n + 1)bn .
n−1 n
Conform definiţiei combinărilor generalizate se obţin valorile corecte pentru f0
şi f1 .
9
(1)
cazul particular k = 1, adică bn = 2n−1 pentru n ≥ 1. Prin convenţie se poate
(0)
considera b0 = 1. Ca şi la problemele anterioare, vom număra arborii binari
ı̂n cauză prin a studia subarborele stâng, respectiv subarborele drept. Dacă ı̂n
subarborele stâng avem i vârfuri cu j frunze, atunci ı̂n subarborele drept avem
(j) (k−j)
n−i−1 vârfuri cu k −j frunze. Produsul bi bn−i−1 reprezintă numărul acestor
arbori. Făcând suma după k şi j, obţinem următoarea formulă de recurenţă:
n−2 X
X k−1
(k) (j) (k−j)
b(k)
n = 2bn−1 + bi bn−i−1 . (10)
i=1 j=1
X
Să considerăm funcţia generatoare B (k) (z) = b(k) n
n z (pentru k ≥ 1 suma
n≥0
(k)
se poate considera şi de la 1, deoarece b0
= 0). Să ı̂nmulţim ambii membri
n
ai formulei (10) cu z şi să le adunăm aceste egalităţi (pentru n = 0, 1, 2, . . .)
membru cu membru. Obţinem:
n−2 X
k−1
!
X X (k) X X (j) (k−j)
b(k) n
n z = 2 bn−1 z n + bi bn−i−1 z n
n≥1 n≥1 n≥1 i=1 j=1
De unde se obţine:
k−1
!
X
B (k) (z) = 2zB (k) (z) + z B (j) (z)B (k−j) (z)
j=1
sau
k−1
!
z X
B (k) (z) = B (j) (z)B (k−j) (z) (11)
1 − 2z j=1
10
5z 3 (1) 4
B (4) (z) = B (z)
(1 − 2z)3
Căutăm soluţia generală sub forma:
ck z k−1 (1) k
B (k) (z) = B (z) ,
(1 − 2z)k−1
unde, după cum am văzut, avem c2 = 1, c3 = 2, c4 = 5. După ı̂nlocuire ı̂n
(11), obţinem următoarea relaţie de recurenţă pentru numerele ck :
k−1
X
ck = ci ck−i .
i=1
11
Ştiind că
1 X n + m − 1
m
= zn,
(1 − z) n≥0
n
avem
X
(k) 1 2k 2k + n − 2 n 2k+n−1
B (z) = 2 z
2(2k − 1) k n≥0 n
X
1 2k n−1
= 2n−2k+1 z n
2(2k − 1) k n − 2k + 1
n≥2k−1
De unde se obţine
1 2k n − 1 n−2k
b(k)
n = 2
2k − 1 k 2k − 2
sau
1 2k n
b(k)
n = 2n−2k .
n k 2k − 1
12
2n − 2
de unde obţinem an = .
n−1
Pe de altă parte
√
z z 1 − 4z z √
A(z) = √ = = 1 − 4z
1 − 4z 1 − 4z 1 − 4z
Avem:
z X X X
=z (4z)n = 4n z n+1 = 4n−1 z n (12)
1 − 4z n≥0 n≥0 n≥1
Prin ı̂nmulţirea celor două funcţii din (12) şi (13) obţinem:
! !
X X −1 2n
A(z) = 4n−1 z n zn
n≥1 n≥0
2n − 1 n
13
Să ı̂ncepem cu o identitate simplă. Să demonstrăm că:
X n
= 2n−1
k≥0
2k + 1
z X z 2 k z 1
= 2 2
= 2
· z2
(1 − z) k≥0 (1 − z) (1 − z) 1 − (1−z) 2
z 1
= =z = z(1 + 2z + (2z)2 + . . . + (2z)k + . . .)
1 − 2z 1 − 2z
Coeficentul lui z n ı̂n dezvoltarea de mai sus este egal cu 2n−1 , ceea ce demon-
strează identitatea. Exact la fel se poate demonstra şi identitatea următoare
(care de fapt se poate obţine şi direct, ţinând cont de faptul că suma coeficien-
ţilor binomiali este egală cu 2n ):
X n
= 2n−1
2k
k≥0
Considerăm funcţia generatoare pentru care termenul general ı̂n n este mem-
brul stâng al identităţii (considerăm m fixat):
!
X X n + k 2k (−1)k
A(z) = zn
n≥0 k≥0
m + 2k k k + 1
X 2k (−1)k X n + k
−k
= z z n+k
k≥0
k k+1 n≥0
m + 2k
14
Pentru ultima sumă se foloseşte formula (5), şi se obţine
X 2k (−1)k z m+2k
A(z) = z −k
k k+1 (1 − z)m+2k+1
k≥0
zm X 2k 1 −z k
=
(1 − z)m+1 k≥0 k k + 1 (1 − z)2
Ţinând cont de formula (7) obţinem:
s !
zm (1 − z)2 4z
A(z) = · 1− 1+
(1 − z)m+1 −2z (1 − z)2
Făcând calculele se ajunge la
zm z m−1
A(z) = = z (14)
(1 − z)m (1 − z)m
Membrul stâng al identităţii originale va fi egal cu coeficientul lui z n ı̂n (14),
care se obţine ţinând cont de formula (5) (de fapt, din cauza lui z din faţa
z m−1
fracţiei, se ia coeficientul lui z n−1 din dezvoltarea fracţiei , astfel acest
(1 − z)m
n−1
coeficient este .
m−1
Se pot obţine identităţi şi prin utilizarea
unor formule de recurenţe. De
1 2n
exemplu, dacă se ı̂nlocuieşte bn = (numărul arborilor binari cu n
n+1 n
vârfuri) ı̂n formula (6), se obţine:
X n−1
1 2n 1 2i 1 2n − 2i − 2
= ,
n+1 n i=0
i+1 i n−i n−i−1
adică
n
X 1 2i − 2 2n − 2i 1 2n
= , pentru n ≥ 1.
i=1
(n − i + 1)i i − 1 n−i n+1 n
15
Dacă ţinem cont de faptul că numărul fn al frunzelor ı̂n mulţimea arborilor
(k)
binari cu n vârfuri este egal cu suma kbn pentru k = 1, 2 . . ., adică
b n+1
2
c
X
fn = kb(k)
n ,
k=1
obţinem identitatea:
b n+1 c
2n − 2 X k n 2k
2
= 2n−2k
n−1 k=1
n 2k − 1 k
sau
X k n 2k
n 2n − 2
= n pentru n ≥ 1.
k≥1
22k 2k − 1 k 2 n−1
16
X 1
zn = 1 + z + z2 + z3 + . . . =
n≥0
1−z
X 1
(−1)n z n = 1 − z + z 2 − z 3 + . . . =
n≥0
1+z
X n + p
p p+1
p+2 2 1
n
z = + z+ z +... = p+1
, p∈N
n≥0
p p p p (1 − z)
X1 1 1 1
z n = z + z 2 + z 3 + . . . = ln
n≥1
n 2 3 1−z
X 1
z 2n = 1 + z 2 + z 4 + z 6 . . . =
n≥0
1 − z2
X r
r
r 2
r 3
n
z =1+ z+ z + z . . . = (1 + z)r , r ∈ R
n≥0
n 1 2 3
X n
p p
p + 1 p+1
p + 2 p+2 xp
n
z = z + z + z +... = , p∈N
n≥0
p p p p (1 + x)p+1
X 2n
2
4 2
6 3 1
n
z =1+ z+ z + z +... = √
n≥0
n 1 2 3 1 − 4z
X −1 2n
2
1 4 2 1 6 3
√
n
z =1− z− z − z − . . . = 1 − 4z
n≥0
2n − 1 n 1 3 2 5 3
√
X 1 2n
1 2
1 4 2 1 6 3
1 − 1 − 4z
n
z =1+ z+ z + z +... =
n≥0
n + 1 n 2 1 3 2 4 3 2z
X 1
2n z n = 1 + 2z + 22 z 2 + 23 z 3 + . . . =
n≥0
1 − 2z
17
1.2.5 Probleme de partiţionare
Cu ajutorul funcţiilor generatoare se pot rezolva şi problemele de partiţionare
a unui număr natural ı̂n sume de numere naturale.
Să pornim de la produsul următor de funcţii generatoare:
1 1 1 1
· 2
· 3
···
1−z 1−z 1−z 1 − zn
= (1 + z + z 2 + z 3 . . .)(1 + z 2 + z 4 + z 6 . . .) . . . (1 + z n + z 2n + z 3n . . .)
XX X
= ... z k1 +2k2 +...nkn
k1 ≥0 k2 ≥0 kn ≥0
În această dezvoltare coeficientul lui z n reprezintă numărul ı̂n câte moduri
poate fi descompus n ı̂n sumă de numere naturale mai mici decât el. Expo-
nentul k1 + 2k2 + . . . nkn = n ne arată că ı̂n descompunere apare 1 de k1 ori,
2 de k2 ori ş.a.m.d. Evident că dacă kn este 1 atunci toate celelalte ki -uri
trebuie să fie 0. De exemplu pentru n = 3 avem următoarele descompuneri
3, 1 + 2, 1 + 1 + 1 (adică 3 = 0 · 1 + 0 · 2 + 1 · 3, 3 = 1 · 1 + 1 · 2 + 0 · 3,
3 = 3 · 1 + 0 · 2 + 0 · 3). Dacă k1 + k2 + . . . kn = m, atunci ı̂n descompunerea
numărului n se face folosind m numere.
Dacă ı̂n descompunere fiecare număr poate să apară de cel mult o dată,
atunci funcţia generatoare corespunzătoare este:
(1 + z)(1 + z 2 )(1 + z 3 ) . . . (1 + z n ).
Dacă dorim ca ı̂n descompunerea lui n să apară numerele n1 , n2 , . . . nk ,
atunci funcţia generatoare este:
1 1 1
. . . .
1 − z n1 1 − z n2 1 − z n2
Probleme.
1. Să se demonstreze formula
X n + k − 1 1
zk =
k≥0
k (1 − z)n
18