Sunteți pe pagina 1din 18

1 Funcţii generatoare

1.1 Definiţie şi operaţii


Un şir infinit de numere reale (an )n≥0 =< a0 , a1 , a2 , . . . , an , . . . > poate fi
reprezentat cu ajutorul unei serii de puteri:
X
A(z) = a0 + a1 z + a2 z 2 + . . . + an z n + . . . = an z n ,
n≥0

care se numeşte funcţia generatoare a şirului < an >.


De exemplu pentru numerele lui Fibonacci Fn = Fn−1 + Fn−2 , cu F0 = 0,
şi F1 = 1 avem următoarea funcţie generatoare:
X
F (z) = Fn z n = z + z 2 + 2z 3 + 3z 4 + 5z 5 + 8z 6 + 13z 7 + . . .
n≥0

Vom ı̂nmulţi formal membrul I şi II cu z apoi cu z 2 . Deci avem următoarele


formule:

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

reprezintă şirul 0, 0, . . . , 0, a0 , a1 , . . . , iar funcţia


| {z }
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

reprezintă şirul ak , ak+1 , ak+2 , . . .


Exemplu: Fie A(z) = 1 + z + z 2 + . . .. Avem:
1  1
A(z) − 1 = A(z), de unde A(z) =
z 1−z
d) ı̂nmulţire

A(z)B(z) = (a0 + a1 z + . . . + an z n + . . .)(b0 + b1 z + . . . + bn z n + . . .) =


X
= a0 b0 + (a0 b1 + a1 b0 )z + (a0 b2 + a1 b1 + a2 b0 )z 2 + . . . = sn z n
n≥0
n
X
unde sn = ak bn−k .
k=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

Dacă avem şi an = 1 pentru orice n natural, obţinem formula


1 X
= (n + 1)z n . (3)
(1 − z)2 n≥0

e) derivare
X
A0 (z) = a1 + 2a2 z + 3a3 z 2 + . . . = (n + 1)an+1 z n
n≥0

Exemplu: Plecând de la funcţia generatoare

X 1
A(z) = zn = ,
n≥0
1−z

derivând membru cu membru, obţinem:


X 1
A0 (z) = nz n−1 = .
n≥1
(1 − z)2

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

care se poate obţine şi direct ı̂nlocuind z cu z 2 ı̂n A(z).


La fel se poate obţine o formulă pentru suma termenilor cu puteri impari:
 
3 5 1 1 1 1 z
z + z + z + . . . = (A(z) − A(−z)) = − = .
2 2 1−z 1+z 1 − z2

Cu ajutorul funcţiilor generatoare se pot obţine formule interesante. Fie


1
A(z) = = 1 + z + z 2 + z 3 + . . .. Atunci zA(z(1 + z)) = F (z), adică
1−z
tocmai funcţia generatoare a numerelor lui Fibonacci. Din formula de mai sus
obţinem

zA(z(1 + z)) = z + z 2 (1 + z) + z 3 (1 + z)2 + z 4 (1 + z)3 + . . .

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

Reamintim că formula binomului se poate generaliza pentru orice r real,


adică
X r 
r
(1 + z) = zn,
n≥0
n

care reprezintă funcţia generatoare pentru coeficienţii binomiali.


Cu ajutorul formulei de mai sus (pentru r ı̂ntreg negativ) se poate obţine
o formulă asemănătoare utilă ı̂n multe demonstraţii. Să pornim de la funcţia
1 X −m
−m
m
= (1 − z) = (−z)k
(1 − z) k≥0
k

Deoarece după formula (??) avem

   
−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

Se obţine următoarea formulă interesantă:


Xk zm
k
z = , pentru m ı̂ntreg nenegativ. (5)
m (1 − z)m+1
k≥0

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

1.2.1 Numărarea arborilor binari

Câţi arbori binari cu n vârfuri există? Cu un vârf există un singur arbore


binar. Cu două vârfuri există 2 arbori binari, iar cu trei 5.

Vom nota cu bn numărul arborilor binari cu n vârfuri. Prin convenţie


b0 = 1. Dacă fixăm rădăcina arborelui, ne mai rămân n − 1 vârfuri care
pot apărea ı̂n subarborele stâng sau drept. Dacă ı̂n subarborele stâng sunt k
vârfuri, ı̂n subarborele drept trebuie să fie n − 1 − k. Cu aceşti subarbori se pot
forma ı̂n total bk bn−1−k arbori, adunând aceste valori pentru k = 0, 1, . . . , n − 1
vom obţine exact valoarea lui bn . Deci pentru n ≥ 1
n−1
X
bn = b0 bn−1 + b1 bn−2 + . . . + bn−1 b0 = bk bn−1−k (6)
k=0

Înmulţind ambii membri cu z şi ı̂nsumând după n, obţinem:


n−1
!
X X X
bn z n = bk bn−1−k z n
n≥1 n≥1 k=0

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

Atunci membrul drept este egal cu A(z)B(z) = zB 2 (z). Deci

zB 2 (z) = B(z) − 1, B(0) = 1

Rezolvând această ecuaţie ı̂n B(z) obţinem:



1 ± 1 − 4z
B(z) =
2z
Din cauza că B(0) = 1 ne convine numai soluţia cu semnul −. Deci
1 √  1  1

B(z) = 1 − 1 − 4z = 1 − (1 − 4z) 2 =
2z 2z

! !
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

1 0 0 1 2 1


1 2z 2z 22n z n
= − 2 + 2 − . . . − 2 (−1)n +... =
2z 0 2z 1 2z n 2z

1 1 1


3
= 2
2− 2
2 z +...− 2
(−1)n 22n−1 z n−1 + . . . =
1 2 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

Observaţie. Pentru ultima transformare se aplică formula din problema 1 de la


pagina ??:

7
 1   
2 (−1)n 2n
= 2n+1
n+1 2 (n + 1) n

În demonstraţia de mai sus am obţinut următoarea funcţie generatoare



X 1 2n 1 − 1 − 4z
n
z = , (7)
n≥0
n + 1 n 2z

care poate fi utilă ı̂n demonstrarea altor formule.


Am văzut ı̂n calculele de mai sus că avem şi formula:
√ X −1 2n
1 − 4z = zn (8)
n≥0
2n − 1 n

1.2.2 Numărarea frunzelor ı̂n mulţimea arborilor binari


Să calculăm numărul frunzelor (vârfurilor terminale) ı̂n mulţimea arborilor
binari cu n vârfuri. Să notăm acest număr cu fn . De remarcat că rădăcina
arborelui deşi are gradul 1, nu se consideră frunză. Se poate vedea uşor că
f2 = 2, f3 = 6, iar pentru cazurile n = 0 şi n = 1 vom considera f0 = 0,
f1 = 1. (Aceste valori vor fi justificate ulterior.)
Să considerăm arborii binari cu n vârfuri care au ı̂n subarborele stâng k
vârfuri, iar ı̂n subarborele drept n − k − 1 vârfuri. În total sunt bk astfel
de subarbori stângi, al i-lea dintre aceştia are vi frunze. Deci, dacă fixăm
subarborele stâng (ca fiind al i-lea), arborele corespunzător are vi bn−1−k +
fn−1−k frunze. Însumând după i de la 1 la bk obţinem numărul frunzelor
pentru toţi arborii care au un arborele stâng format din k vârfuri, acest număr
fiind bn−1−k fk + bk fn−1−k . Atunci
n−1
X
fn = (fk bn−1−k + bk fn−1−k )
k=0

Printr-un calcul simplu se obţine că

fn = 2(f0 bn−1 + f1 bn−2 + . . . fn−1 b0 ) pentru n ≥ 2. (9)

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

Ţinând cont de f0 = 0 şi f1 = 1, obţinem

F (z) − z = 2zF (z)B(z)

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

Făcând calculele, se obţine


X 2n X 2n − 2
n+1
F (z) = z = zn
n≥0
n n≥1
n − 1

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 .

1.2.3 Numărarea arborilor binari cu n vârfuri şi k frunze


O problemă puţin mai dificilă este următoarea: câţi arbori binari cu n vârfuri
(k)
există care au câte k frunze (vârfuri terminale) fiecare. Să notăm cu bn
numărul arborilor binari cu n vârfuri şi k frunze. Se poate vedea uşor că
(k)
bn = 0 pentru k > b(n+1)/2c. Printr-un raţionament simplu se poate calcula

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

Schimbând ordinea de ı̂nsumare, obţinem:


k−1 X X
n−2
!
X X (k)
X (j) (k−j)
b(k) n
n z = 2 bn−1 z n + bi bn−i−1 zn
n≥1 n≥1 j=1 n≥1 i=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

Din aproape ı̂n aproape, obţinem:


z  (1) 2
B (2) (z) = B (z)
1 − 2z
2z 2  (1) 3
B (3) (z) = B (z)
(1 − 2z)2

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

Pentru k = 2 avem c2 = c1 c1 , de unde c1 = 1. Să considerăm c0X = 1. (Vom


vedea mai târziu că această alegere este benefică.) Dacă C(z) = cn z n este
n≥0
funcţia generatoare a numerelor cn , atunci, ţinând cont de produsul funcţiilor
generatoare, avem:
C(z) − 1 − z = (C(z) − 1)2 adică C 2 (z) − 3C(z) + z + 2 = 0,
care după rezolvare ı̂n C(z), ne dă:

3 − 1 − 4z
C(z) = (Se alege semnul minus pentru că C(0)=1.)
2
După dezvoltarea ı̂n serie (a se vedea formula (8)), se obţine:
 
3 1 1 3 1 X −1 2n n
C(z) = − (1 − 4z) 2 = − z
2 2 2 2 n≥0 2n − 1 n
   
3 X 1 2n n X 1 2n n
= + z =1+ z .
2 n≥0 2(2n − 1) n n≥1
2(2n − 1) n
De unde se obţine:
 
1 2n
cn = , pentru n ≥ 1.
2(2n − 1) n
(1)
Tinând cont de faptul că bn = 2n−1 pentru n ≥ 1, se poate verifica uşor că
z
B (1) = . Deci
1 − 2z
 
(k) 1 2k z 2k−1
B (z) =
2(2k − 1) k (1 − 2z)2k−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

1.2.4 Demonstrarea unor identităţi


Funcţiile generatoare pot fi utilizate pentru demonstrarea unor identităţi, care
altfel se demonstrează destul de greu.
Prima idee este de a dezvolta o funcţie generatoare ı̂n două moduri diferite
şi pe urmă de a egala coeficienţii lui z n din ambele dezvoltări.
Considerăm următoarea funcţie generatoare:
1 X − 1 
− 12 2 (−4z)n =
√ = (1 − 4z) =
1 − 4z n≥0
n
   
X
n − 12 2n n X 2n n
= (−1) 2 z = z
n≥0
n n≥0
n
z
Folosind această formulă la dezvoltarea funcţiei A(z) = √ ı̂n două
1 − 4z
moduri diferite, vom obţine o formulă interesantă.
Conform expresiei de mai sus avem:
X z X 2n X 2n − 2
n n+1
A(z) = an z = √ = z = zn,
n≥0
1 − 4z n≥0
n n≥1
n − 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

şi formula (8):


 
√ X −1 2n n
1 − 4z = z (13)
n≥0
2n − 1 n

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

De unde, ţinând cont de formula produsului funcţiilor generatoare,


obţinem:
n−1  
X
n−1−k −1 2k
an = 4 ·
k=0
2k − 1 k

Egalând cele două expresii ale lui an , obţinem:


n−1    
n−1
X 1 2k 2n − 2
−4 =
4k (2k − 1) k n−1
k=0

care poate fi scrisă şi ı̂n felul următor (ı̂nlocuind n − 1 cu n):


n    
X 4n−k 2k n 2n
=4 − pentru n ≥ 1.
2k − 1 k n
k=1

Pentru demonstarea unor identităţi combinatoriale se poate folosi şi metoda


inversării ordinii de ı̂nsumare ı̂n formule ([?], [?]).

13
Să ı̂ncepem cu o identitate simplă. Să demonstrăm că:
X n 
= 2n−1
k≥0
2k + 1

Se formează funcţia generatoare care are ca termen general membrul stâng


al identităţii de mai sus, se schimbă ordinea de ı̂nsumare, se aplică formula (5)
şi se obţine:
! !
X X n  X X n  X z 2k+1
zn = zn =
n≥0 k≥0
2k + 1 k≥0 n≥0
2k + 1 k≥0
(1 − z)2k+2

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

Să demonstrăm o identitate mai complexă ([?]):


X  n + k 2k  (−1)k  n − 1 
= , pentru m, n ı̂ntregi nenegative.
k≥0
m + 2k k k + 1 m − 1

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

Asemănător, dacă se ı̂nlocuiesc valorile pentru bn (numărul arborilor binari


cu n vârfuri) şi fn (numărul frunzelor ı̂n mulţimea arborilor binari cu n vârfuri)
ı̂n formula (9), se obţine următoarea identitate:
n     
X 1 2k − 2 2n − 2k 1 2n
= , pentru n ≥ 1.
k k−1 n−k 2 n
k=1

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

Câteva funcţii generatoare mai uzuale

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

2. Să se demonstreze cu ajutorul funcţiilor generatoare că


 
k n+k−1
Cn = ,
k
k
unde C n reprezintă combinările cu repetiţii de n elemente luate câte k.

18

S-ar putea să vă placă și