This is documentation for Mathematica 6, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)


RSolve[eqn, a[n], n]
solves a recurrence equation for a[n].
RSolve[{eqn1, eqn2, ...}, {a1[n], a2[n], ...}, n]
solves a system of recurrence equations.
RSolve[eqn, a[n1, n2, ...], {n1, n2, ...}]
solves a partial recurrence equation.
  • RSolve[eqn, a, n] gives solutions for a as pure functions.
  • The equations can involve objects of the form a[n+i] where i is any fixed integer, or objects of the form a[q^in].
  • Equations such as a[0]val can be given to specify end conditions.
  • If not enough end conditions are specified, RSolve will give general solutions in which undetermined constants are introduced.
  • For partial recurrence equations, RSolve generates arbitrary functions C[n][...].
  • Solutions given by RSolve sometimes include sums that cannot be carried out explicitly by Sum. Dummy variables with local names are used in such sums.
  • RSolve sometimes gives implicit solutions in terms of Solve.
  • RSolve handles both ordinary difference equations and q-difference equations.
  • RSolve handles difference-algebraic equations as well as ordinary difference equations.
  • RSolve can solve linear recurrence equations of any order with constant coefficients. It can also solve many linear equations up to second order with non-constant coefficients, as well as many nonlinear equations.
New in 5