This document provides the user with a description of the algebraic programming system REDUCE. The capabilities of this system include:

  1. expansion and ordering of polynomials and rational functions,
  2. substitutions and pattern matching in a wide variety of forms,
  3. automatic and user controlled simplification of expressions,
  4. calculations with symbolic matrices,
  5. arbitrary precision integer and real arithmetic,
  6. facilities for defining new functions and extending program syntax,
  7. analytic differentiation and integration,
  8. factorization of polynomials,
  9. facilities for the solution of a variety of algebraic equations,
  10. facilities for the output of expressions in a variety of formats,
  11. facilities for generating numerical programs from symbolic input,
  12. Dirac matrix calculations of interest to high energy physicists.