### 6.15.2 Valeurs d’une suite récurrente ou d’un système de suites récurrentes : seqsolve

Voir aussi rsolve 6.15.3.
seqsolve a comme argument l’expression ou la liste des expressions qui défini(ssen)t une/des relation(s) de récurrence, par exemple f(x,n) si la relation de récurrence est un+1=f(un,n) (resp g(x,y,n) si la relation de récurrence est un+2=g(un,un+1,n)=g(x,y,n)), le nom des variables utilisées (par exemple [x,n] (resp [x,y,n])) et les valeurs de départ de la suite : par exemple a si u0=a (resp [a,b] si u0=a et u1=b).

La relation de récurrence doit comporter une partie homogène linéaire, la partie non homogène doit être une combinaison linéaire de produit de polynôme en n par une suite géométrique en n. seqsolve renvoie alors la valeur de la suite en fonctions de n.

Exemples :

- Valeurs de la suite u0=3, un+1=2un+n
  On tape :
  seqsolve(2x+n,[x,n],3)
  On obtient :
  -n-1+4*2^n
  On peut aussi taper rsolve(u(n+1)=2*u(n)+n,u(n),u(0)=3) (cf6.15.3)
- Valeurs de la suite u0=3, un+1=2un+n3n
  On tape :
  seqsolve(2x+n*3^n,[x,n],3)
  On obtient :
  (n-3)*3^n+6*2^n
- Valeurs de la suite u0=0,u1=1, un+1=un+un−1 pour n>0.
  On tape :
  seqsolve(x+y,[x,y,n],[0,1])
  On obtient :
  (5+sqrt(5))/10*((sqrt(5)+1)/2)^(n-1)+ (5-(sqrt(5)))/10*((-sqrt(5)+1)/2)^(n-1)
- Valeurs de la suite u0=0,u1=1, un+2=2*un+1+un+n+1 pour n>0.
  À la main, on trouve u2=3, u3=9 u4=24 etc...
  On tape :
  seqsolve(x+2y+n+1,[x,y,n],[0,1])
  On obtient :
  (-4*n-3*(-(sqrt(2)-1))`^`n*sqrt(2)+2*(-(sqrt(2)-1))`^`n+3*(sqrt(2)+1)`^`n*sqrt(2)+2*(sqrt(2)+1)`^`n-4)/8
  On vérifie pour n:=4 on obtient bien 24
  Ou on tape car on a un+1=2un+vn+n et vn+1=un (donc vn=un−1) avec u0=0 et u1=2u0+v0+0=1 donc v0=1:
  seqsolve([2x+y+n,x],[x,y,n],[0,1])
  On obtient :
  [(-1)/2-(-2-3*sqrt(2))/8*(sqrt(2)+1)^n- (-2+3*sqrt(2))/8*(-sqrt(2)+1)^n-1/2*n, -(-4+sqrt(2))/8*(sqrt(2)+1)^n- (-4-sqrt(2))/8*(-sqrt(2)+1)^n-1/2*n]
  On vérifie pour n:=4 on obtient bien 24
- Valeurs de la suite u0=0,v0=1, un+1=un+2vn,vn+1=un+n+1 pour n>0.
  On tape :
  seqsolve([x+2*y,n+1+x],[x,y,n],[0,1])
  On obtient :
  [(-2*n-(-1)`^`n+2`^`n*4-3)/2,((-1)`^`n+2*2`^`n-1)/2]
- Valeurs de la suite u0=0,v0=1, un+1=un+2vn+n+1,vn+1=un pour n>0.
  On tape :
  seqsolve([x+2*y+n+1,x],[x,y,n],[0,1])
  On obtient :
  [(-2*n-(-1)`^`n*3+2`^`n*8-5)/4,(-2*n+(-1)`^`n*3+2`^`n*4-3)/4]
- Valeurs de la suite u0=0,v0=1, un+1=un+vn, vn+1=un−vn pour n>0.
  On tape :
  seqsolve([x+y,x-y],[x,y,n],[0,1])
  On obtient :
  [(-4*n-3*(-(sqrt(2)-1))`^`n*sqrt(2)+ 2*(-(sqrt(2)-1))`^`n+ 3*(sqrt(2)+1)`^`n*sqrt(2)+ 2*(sqrt(2)+1)`^`n-4)/8,
  (-4*n+(-(sqrt(2)-1))`^`n*sqrt(2)+ 4*(-(sqrt(2)-1))`^`n-(sqrt(2)+ 1)`^`n*sqrt(2)+ 4*(sqrt(2)+1)`^`n)/8]
- Valeurs de la suite u0=2,v0=0, un+1=4*vn+n+1, vn+1=un, pour n>0.
  On tape :
  seqsolve([4y+n+1,x],[x,y,n],[2,0])
  On obtient :
  [(-8)/9+2*2^n-(-8)/9*(-1)^n*2^n-1/3*n,
  (-5)/9+2^n-4/9*(-1)^n*2^n-1/3*n]