REDUCE

Contents

Abstract
1 Introductory Information
2 Structure of Programs
 2.1 The REDUCE Standard Character Set
 2.2 Numbers
 2.3 Identifiers
 2.4 Variables
 2.5 Strings
 2.6 Comments
 2.7 Operators
3 Expressions
 3.1 Scalar Expressions
 3.2 Integer Expressions
 3.3 Boolean Expressions
 3.4 Equations
 3.5 Proper Statements as Expressions
4 Lists
 4.1 Operations on Lists
  4.1.1 LIST
  4.1.2 FIRST
  4.1.3 SECOND
  4.1.4 THIRD
  4.1.5 REST
  4.1.6 . (Cons) Operator
  4.1.7 APPEND
  4.1.8 REVERSE
  4.1.9 List Arguments of Other Operators
  4.1.10 Caveats and Examples
5 Statements
 5.1 Assignment Statements
  5.1.1 Set and Unset Statements
 5.2 Group Statements
 5.3 Conditional Statements
 5.4 FOR Statements
 5.5 WHILE …DO
 5.6 REPEAT …UNTIL
 5.7 Compound Statements
  5.7.1 Compound Statements with GO TO
  5.7.2 Labels and GO TO Statements
  5.7.3 RETURN Statements
6 Commands and Declarations
 6.1 Array Declarations
 6.2 Mode Handling Declarations
 6.3 END
 6.4 BYE Command
 6.5 SHOWTIME Command
 6.6 DEFINE Command
7 Built-in Prefix Operators
 7.1 Numerical Operators
  7.1.1 ABS
  7.1.2 CEILING
  7.1.3 CONJ
  7.1.4 FACTORIAL
  7.1.5 FIX
  7.1.6 FLOOR
  7.1.7 IMPART
  7.1.8 MAX/MIN
  7.1.9 NEXTPRIME
  7.1.10 RANDOM
  7.1.11 RANDOM_NEW_SEED
  7.1.12 REPART
  7.1.13 ROUND
  7.1.14 SIGN
 7.2 Mathematical Functions
 7.3 Bernoulli Numbers and Euler Numbers
 7.4 Fibonacci Numbers and Fibonacci Polynomials
 7.5 Motzkin numbers
 7.6 CHANGEVAR operator
  7.6.1 CHANGEVAR example: The 2-dim. Laplace Equation
  7.6.2 Another CHANGEVAR example: An Euler Equation
 7.7 CONTINUED_FRACTION Operator
 7.8 DF Operator
  7.8.1 Switches influencing differentiation
  7.8.2 Adding Differentiation Rules
 7.9 INT Operator
  7.9.1 Options
  7.9.2 Advanced Use
  7.9.3 References
 7.10 LENGTH Operator
 7.11 MAP Operator
 7.12 MKID Operator
 7.13 The Pochhammer Notation
 7.14 PF Operator
 7.15 SELECT Operator
 7.16 SOLVE Operator
  7.16.1 Handling of Undetermined Solutions
  7.16.2 Solutions of Equations Involving Cubics and Quartics
  7.16.3 Other Options
  7.16.4 Parameters and Variable Dependency
 7.17 Even and Odd Operators
 7.18 Linear Operators
 7.19 Non-Commuting Operators
 7.20 Symmetric and Antisymmetric Operators
 7.21 Declaring New Prefix Operators
 7.22 Declaring New Infix Operators
 7.23 Creating/Removing Variable Dependency
8 Display and Structuring of Expressions
 8.1 Kernels
 8.2 The Expression Workspace
 8.3 Output of Expressions
  8.3.1 LINELENGTH Operator
  8.3.2 Output Declarations
  8.3.3 Output Control Switches
  8.3.4 WRITE Command
  8.3.5 Suppression of Zeros
  8.3.6 FORTRAN Style Output Of Expressions
  8.3.7 Saving Expressions for Later Use as Input
  8.3.8 Displaying Expression Structure
 8.4 Changing the Internal Order of Variables
 8.5 Obtaining Parts of Algebraic Expressions
  8.5.1 COEFF Operator
  8.5.2 COEFFN Operator
  8.5.3 PART Operator
  8.5.4 Substituting for Parts of Expressions
9 Polynomials and Rationals
 9.1 Controlling the Expansion of Expressions
 9.2 Factorization of Polynomials
 9.3 Cancellation of Common Factors
  9.3.1 Determining the GCD of Two Polynomials
 9.4 Working with Least Common Multiples
 9.5 Controlling Use of Common Denominators
 9.6 REMAINDER Operator
 9.7 RESULTANT Operator
 9.8 DECOMPOSE Operator
 9.9 INTERPOL operator
 9.10 Obtaining Parts of Polynomials and Rationals
  9.10.1 DEG Operator
  9.10.2 DEN Operator
  9.10.3 LCOF Operator
  9.10.4 LPOWER Operator
  9.10.5 LTERM Operator
  9.10.6 MAINVAR Operator
  9.10.7 NUM Operator
  9.10.8 REDUCT Operator
  9.10.9 TOTALDEG Operator
 9.11 Polynomial Coefficient Arithmetic
  9.11.1 Rational Coefficients in Polynomials
  9.11.2 Real Coefficients in Polynomials
  9.11.3 Modular Number Coefficients in Polynomials
  9.11.4 Complex Number Coefficients in Polynomials
 9.12 ROOT_VAL Operator
10 Assigning and Testing Algebraic Properties
 10.1 REALVALUED Declaration and Check
 10.2 Declaring Expressions Positive or Negative
11 Substitution Commands
 11.1 SUB Operator
 11.2 LET Rules
  11.2.1 FOR ALL … LET
  11.2.2 FOR ALL … SUCH THAT … LET
  11.2.3 Removing Assignments and Substitution Rules
  11.2.4 Overlapping LET Rules
  11.2.5 Substitutions for General Expressions
 11.3 Rule Lists
 11.4 Asymptotic Commands
12 File Handling Commands
 12.1 IN Command
 12.2 OUT Command
 12.3 SHUT Command
13 Commands for Interactive Use
 13.1 Referencing Previous Results
 13.2 Interactive Editing
 13.3 Interactive File Control
14 Matrix Calculations
 14.1 MAT Operator
 14.2 Matrix Variables
 14.3 Matrix Expressions
 14.4 Operators with Matrix Arguments
  14.4.1 DET Operator
  14.4.2 MATEIGEN Operator
  14.4.3 TP Operator
  14.4.4 Trace Operator
  14.4.5 Matrix Cofactors
  14.4.6 NULLSPACE Operator
  14.4.7 RANK Operator
 14.5 Matrix Assignments
 14.6 Evaluating Matrix Elements
15 Procedures
 15.1 Procedure Heading
 15.2 Procedure Body
 15.3 Matrix-valued Procedures
 15.4 Using LET Inside Procedures
 15.5 LET Rules as Procedures
 15.6 REMEMBER Statement
16 User Contributed Packages
 16.1 ALGINT: Integration of square roots
 16.2 APPLYSYM: Infinitesimal symmetries of differential equations
  16.2.1 Introduction and overview of the symmetry
method

  16.2.2 Applying symmetries with APPLYSYM
  16.2.3 Solving quasilinear PDEs
  16.2.4 Transformation of DEs
 16.3 ARNUM: An algebraic number package
 16.4 ASSERT: Dynamic Verification of Assertions on Function Types
  16.4.1 Loading and Using
  16.4.2 Type Definitions
  16.4.3 Assertions
  16.4.4 Dynamic Checking of Assertions
  16.4.5 Switches
  16.4.6 Efficiency
  16.4.7 Possible Extensions
 16.5 ASSIST: Useful utilities for various applications
  16.5.1 Introduction
  16.5.2 Survey of the Available New Facilities
  16.5.3 Control of Switches
  16.5.4 Manipulation of the List Structure
  16.5.5 The Bag Structure and its Associated Functions
  16.5.6 Sets and their Manipulation Functions
  16.5.7 General Purpose Utility Functions
  16.5.8 Properties and Flags
  16.5.9 Control Functions
  16.5.10 Handling of Polynomials
  16.5.11 Handling of Transcendental Functions
  16.5.12 Handling of n–dimensional Vectors
  16.5.13 Handling of Grassmann Operators
  16.5.14 Handling of Matrices
 16.6 AVECTOR: A vector algebra and calculus package
  16.6.1 Introduction
  16.6.2 Vector declaration and initialisation
  16.6.3 Vector algebra
  16.6.4 Vector calculus
  16.6.5 Volume and Line Integration
  16.6.6 Defining new functions and procedures
  16.6.7 Acknowledgements
 16.7 BIBASIS: A Package for Calculating Boolean Involutive Bases
  16.7.1 Introduction
  16.7.2 Boolean Ring
  16.7.3 Pommaret Involutive Algorithm
  16.7.4 BIBASIS Package
  16.7.5 Examples
 16.8 BOOLEAN: A package for boolean algebra
  16.8.1 Introduction
  16.8.2 Entering boolean expressions
  16.8.3 Normal forms
  16.8.4 Evaluation of a boolean expression
 16.9 CALI: A package for computational commutative algebra
 16.10 CAMAL: Calculations in celestial mechanics
  16.10.1 Introduction
  16.10.2 How CAMAL Worked
  16.10.3 Towards a CAMAL Module
  16.10.4 Integration with REDUCE
  16.10.5 The Simple Experiments
  16.10.6 A Medium-Sized Problem
  16.10.7 Conclusion
 16.11 CANTENS: A Package for Manipulations and Simplifications of Indexed Objects
  16.11.1 Introduction
  16.11.2 Handling of space(s)
  16.11.3 Generic tensors and their manipulation
  16.11.4 Specific tensors
  16.11.5 The simplification function CANONICAL
 16.12 CDE: A package for integrability of PDEs
  16.12.1 Introduction: why CDE?
  16.12.2 Jet space of even and odd variables, and total derivatives
  16.12.3 Differential equations in even and odd variables
  16.12.4 Calculus of variations
  16.12.5 C-differential operators
  16.12.6 C-differential operators
  16.12.7 C-differential operators as superfunctions
  16.12.8 The Schouten bracket
  16.12.9 Computing linearization and its adjoint
  16.12.10 Higher symmetries
  16.12.11 Setting up the jet space and the differential equation.
  16.12.12 Solving the problem via dimensional analysis.
  16.12.13 Solving the problem using CRACK
  16.12.14 Local conservation laws
  16.12.15 Local Hamiltonian operators
  16.12.16 Korteweg–de Vries equation
  16.12.17 Boussinesq equation
  16.12.18 Kadomtsev–Petviashvili equation
  16.12.19 Examples of Schouten bracket of local Hamiltonian operators
  16.12.20 Bi-Hamiltonian structure of the KdV equation
  16.12.21 Bi-Hamiltonian structure of the WDVV equation
  16.12.22 Schouten bracket of multidimensional operators
  16.12.23 Non-local operators
  16.12.24 Non-local Hamiltonian operators for the Korteweg–de Vries equation
  16.12.25 Non-local recursion operator for the Korteweg–de Vries equation
  16.12.26 Non-local Hamiltonian-recursion operators for Plebanski equation
  16.12.27 Appendix: old versions of CDE
 16.13 CDIFF: A package for computations in geometry of Differential Equations
  16.13.1 Introduction
  16.13.2 Computing with CDIFF
 16.14 CGB: Computing Comprehensive Gröbner Bases
  16.14.1 Introduction
  16.14.2 Using the REDLOG Package
  16.14.3 Term Ordering Mode
  16.14.4 CGB: Comprehensive Gröbner Basis
  16.14.5 GSYS: Gröbner System
  16.14.6 GSYS2CGB: Gröbner System to CGB
  16.14.7 Switch CGBREAL: Computing over the Real Numbers
  16.14.8 Switches
 16.15 COMPACT: Package for compacting expressions
 16.16 CRACK: Solving overdetermined systems of PDEs or ODEs
 16.17 CVIT: Fast calculation of Dirac gamma matrix traces
 16.18 DEFINT: A definite integration interface
  16.18.1 Introduction
  16.18.2 Integration between zero and infinity
  16.18.3 Integration over other ranges
  16.18.4 Using the definite integration package
  16.18.5 Integral Transforms
  16.18.6 Additional Meijer G-function Definitions
  16.18.7 The print_conditions function
  16.18.8 Tracing
  16.18.9 Acknowledgements
 16.19 DESIR: Differential linear homogeneous equation solutions in the neighborhood of irregular and regular singular points
  16.19.1 INTRODUCTION
  16.19.2 FORMS OF SOLUTIONS
  16.19.3 INTERACTIVE USE
  16.19.4 DIRECT USE
  16.19.5 USEFUL FUNCTIONS
  16.19.6 LIMITATIONS
 16.20 DFPART: Derivatives of generic functions
  16.20.1 Generic Functions
  16.20.2 Partial Derivatives
  16.20.3 Substitutions
 16.21 DUMMY: Canonical form of expressions with dummy variables
  16.21.1 Introduction
  16.21.2 Dummy variables and dummy summations
  16.21.3 The Operators and their Properties
  16.21.4 The Function CANONICAL
  16.21.5 Bibliography
 16.22 EXCALC: A differential geometry package
  16.22.1 Introduction
  16.22.2 Declarations
  16.22.3 Exterior Multiplication
  16.22.4 Partial Differentiation
  16.22.5 Exterior Differentiation
  16.22.6 Inner Product
  16.22.7 Lie Derivative
  16.22.8 Hodge-* Duality Operator
  16.22.9 Variational Derivative
  16.22.10 Handling of Indices
  16.22.11 Metric Structures
  16.22.12 Riemannian Connections
  16.22.13 Ordering and Structuring
  16.22.14 Summary of Operators and Commands
  16.22.15 Examples
 16.23 FIDE: Finite difference method for partial differential equations
  16.23.1 Abstract
  16.23.2 EXPRES
  16.23.3 IIMET
  16.23.4 APPROX
  16.23.5 CHARPOL
  16.23.6 HURWP
  16.23.7 LINBAND
 16.24 FPS: Automatic calculation of formal power series
  16.24.1 Introduction
  16.24.2 REDUCE operator FPS
  16.24.3 REDUCE operator SimpleDE
  16.24.4 Problems in the current version
 16.25 GCREF: A Graph Cross Referencer
  16.25.1 Basic Usage
  16.25.2 Shell Script "gcref"
  16.25.3 Redering with yED
 16.26 GENTRAN: A code generation package
 16.27 GNUPLOT: Display of functions and surfaces
  16.27.1 Introduction
  16.27.2 Command plot
  16.27.3 Paper output
  16.27.4 Mesh generation for implicit curves
  16.27.5 Mesh generation for surfaces
  16.27.6 GNUPLOT operation
  16.27.7 Saving GNUPLOT command sequences
  16.27.8 Direct Call of GNUPLOT
  16.27.9 Examples
 16.28 GROEBNER: A Gröbner basis package
  16.28.1 Background
  16.28.2 Loading of the Package
  16.28.3 The Basic Operators
  16.28.4 Ideal Decomposition & Equation System Solving
  16.28.5 Calculations “by Hand”
 16.29 GUARDIAN: Guarded Expressions in Practice
  16.29.1 Introduction
  16.29.2 An outline of our method
  16.29.3 Examples
  16.29.4 Outlook
  16.29.5 Conclusions
 16.30 IDEALS: Arithmetic for polynomial ideals
  16.30.1 Introduction
  16.30.2 Initialization
  16.30.3 Bases
  16.30.4 Algorithms
  16.30.5 Examples
 16.31 INEQ: Support for solving inequalities
 16.32 INVBASE: A package for computing involutive bases
  16.32.1 Introduction
  16.32.2 The Basic Operators
 16.33 LALR: A parser generator
 16.34 LAPLACE: Laplace transforms
 16.35 LIE: Functions for the classification of real n-dimensional Lie algebras
 16.36 LIMITS: A package for finding limits
  16.36.1 Normal entry points
  16.36.2 Direction-dependent limits
 16.37 LINALG: Linear algebra package
  16.37.1 Introduction
  16.37.2 Getting started
  16.37.3 What’s available
  16.37.4 Fast Linear Algebra
  16.37.5 Acknowledgments
 16.38 LISTVECOPS: Vector operations on lists
 16.39 LPDO: Linear Partial Differential Operators
  16.39.1 Introduction
  16.39.2 Operators
  16.39.3 Shapes of F-elements
  16.39.4 Commands
 16.40 MODSR: Modular solve and roots
 16.41 NCPOLY: Non–commutative polynomial ideals
  16.41.1 Introduction
  16.41.2 Setup, Cleanup
  16.41.3 Left and right ideals
  16.41.4 Gröbner bases
  16.41.5 Left or right polynomial division
  16.41.6 Left or right polynomial reduction
  16.41.7 Factorization
  16.41.8 Output of expressions
 16.42 NORMFORM: Computation of matrix normal forms
  16.42.1 Introduction
  16.42.2 Smith normal form
  16.42.3 smithex_int
  16.42.4 frobenius
  16.42.5 ratjordan
  16.42.6 jordansymbolic
  16.42.7 jordan
  16.42.8 Algebraic extensions: Using the ARNUM package
  16.42.9 Modular arithmetic
 16.43 NUMERIC: Solving numerical problems
  16.43.1 Syntax
  16.43.2 Minima
  16.43.3 Roots of Functions/ Solutions of Equations
  16.43.4 Integrals
  16.43.5 Ordinary Differential Equations
  16.43.6 Bounds of a Function
  16.43.7 Chebyshev Curve Fitting
  16.43.8 General Curve Fitting
  16.43.9 Function Bases
 16.44 ODESOLVE: Ordinary differential equations solver
  16.44.1 Introduction
  16.44.2 Installation
  16.44.3 User interface
  16.44.4 Output syntax
  16.44.5 Solution techniques
  16.44.6 Extension interface
  16.44.7 Change log
  16.44.8 Planned developments
 16.45 ORTHOVEC: Manipulation of scalars and vectors
  16.45.1 Introduction
  16.45.2 Initialisation
  16.45.3 Input-Output
  16.45.4 Algebraic Operations
  16.45.5 Differential Operations
  16.45.6 Integral Operations
  16.45.7 Test Cases
 16.46 PHYSOP: Operator calculus in quantum theory
  16.46.1 Introduction
  16.46.2 The NONCOM2 Package
  16.46.3 The PHYSOP package
  16.46.4 Known problems in the current release of PHYSOP
  16.46.5 Compilation of the packages
  16.46.6 Final remarks
  16.46.7 Appendix: List of error and warning messages
 16.47 PM: A REDUCE pattern matcher
  16.47.1 M(exp,temp)
  16.47.2 temp _= logical_exp
  16.47.3 S(exp,{temp1 sub1, temp2 sub2, …}, rept, depth)
  16.47.4 temp :- exp and temp ::- exp
  16.47.5 Arep({rep1,rep2,…})
  16.47.6 Drep({rep1,rep2,..})
  16.47.7 Switches
 16.48 POLYDIV: Enhanced Polynomial Division
  16.48.1 Introduction
  16.48.2 Polynomial Division
  16.48.3 Polynomial Pseudo-Division
 16.49 QSUM: Indefinite and Definite Summation of q-hypergeometric Terms
  16.49.1 Introduction
  16.49.2 Elementary q-Functions
  16.49.3 q-Gosper Algorithm
  16.49.4 q-Zeilberger Algorithm
  16.49.5 REDUCE operator QGOSPER
  16.49.6 REDUCE operator QSUMRECURSION
  16.49.7 Simplification Operators
  16.49.8 Global Variables and Switches
  16.49.9 Messages
 16.50 RANDPOLY: A random polynomial generator
  16.50.1 Introduction
  16.50.2 Basic use of randpoly
  16.50.3 Advanced use of randpoly
  16.50.4 Subsidiary functions: rand, proc, random
  16.50.5 Examples
  16.50.6 Appendix: Algorithmic background
 16.51 RATAPRX: Rational Approximations Package for REDUCE
  16.51.1 Periodic Decimal Representation
  16.51.2 Continued Fractions
  16.51.3 Padé Approximation
 16.52 REACTEQN: Support for chemical reaction equation systems
 16.53 REDLOG: Extend REDUCE to a computer logic system
 16.54 RESET: Code to reset REDUCE to its initial state
 16.55 RESIDUE: A residue package
 16.56 RLFI: REDUCE LATEX formula interface
  16.56.1 APPENDIX: Summary and syntax
 16.57 ROOTS: A REDUCE root finding package
  16.57.1 Introduction
  16.57.2 Root Finding Strategies
  16.57.3 Top Level Functions
  16.57.4 Switches Used in Input
  16.57.5 Internal and Output Use of Switches
  16.57.6 Root Package Switches
  16.57.7 Operational Parameters and Parameter Setting.
  16.57.8 Avoiding truncation of polynomials on input
 16.58 RSOLVE: Rational/integer polynomial solvers
  16.58.1 Introduction
  16.58.2 The user interface
  16.58.3 Examples
  16.58.4 Tracing
 16.59 RTRACE: Tracing in REDUCE
  16.59.1 Introduction
  16.59.2 RTrace versus RDebug
  16.59.3 Procedure tracing: RTR, UNRTR
  16.59.4 Assignment tracing: RTRST, UNRTRST
  16.59.5 Tracing active rules: TRRL, UNTRRL
  16.59.6 Tracing inactive rules: TRRLID, UNTRRLID
  16.59.7 Output control: RTROUT
 16.60 SCOPE: REDUCE source code optimization package
 16.61 SETS: A basic set theory package
  16.61.1 Introduction
  16.61.2 Infix operator precedence
  16.61.3 Explicit set representation and mkset
  16.61.4 Union and intersection
  16.61.5 Symbolic set expressions
  16.61.6 Set difference
  16.61.7 Predicates on sets
  16.61.8 Possible future developments
 16.62 SPARSE: Sparse Matrix Calculations
  16.62.1 Introduction
  16.62.2 Sparse Matrix Calculations
  16.62.3 Sparse Matrix Expressions
  16.62.4 Operators with Sparse Matrix Arguments
  16.62.5 The Linear Algebra Package for Sparse Matrices
  16.62.6 Available Functions
  16.62.7 Fast Linear Algebra
  16.62.8 Acknowledgments
 16.63 SPDE: Finding symmetry groups of PDE’s
  16.63.1 Description of the System Functions and Variables
  16.63.2 How to Use the Package
  16.63.3 Test File
 16.64 SPECFN: Package for special functions
 16.65 SPECFN2: Package for special special functions
  16.65.1 REDUCE operator HYPERGEOMETRIC
  16.65.2 Extending the HYPERGEOMETRIC operator
  16.65.3 REDUCE operator meijerg
 16.66 SSTOOLS: Computations with supersymmetric algebraic and differential expressions
  16.66.1 Overview
 16.67 SUM: A package for series summation
 16.68 SYMMETRY: Operations on symmetric matrices
  16.68.1 Introduction
  16.68.2 Operators for linear representations
  16.68.3 Display Operators
  16.68.4 Storing a new group
 16.69 TAYLOR: Manipulation of Taylor series
  16.69.1 Basic Use
  16.69.2 Caveats
  16.69.3 Warning messages
  16.69.4 Error messages
  16.69.5 Comparison to other packages
 16.70 TPS: A truncated power series package
  16.70.1 Introduction
  16.70.2 PS Operator
  16.70.3 PSEXPLIM Operator
  16.70.4 PSPRINTORDER Switch
  16.70.5 PSORDLIM Operator
  16.70.6 PSTERM Operator
  16.70.7 PSORDER Operator
  16.70.8 PSSETORDER Operator
  16.70.9 PSDEPVAR Operator
  16.70.10 PSEXPANSIONPT operator
  16.70.11 PSFUNCTION Operator
  16.70.12 PSCHANGEVAR Operator
  16.70.13 PSREVERSE Operator
  16.70.14 PSCOMPOSE Operator
  16.70.15 PSSUM Operator
  16.70.16 PSTAYLOR Operator
  16.70.17 PSCOPY Operator
  16.70.18 PSTRUNCATE Operator
  16.70.19 Arithmetic Operations
  16.70.20 Differentiation
  16.70.21 Restrictions and Known Bugs
 16.71 TRI: TeX REDUCE interface
 16.72 TRIGSIMP: Simplification and factorization of trigonometric and hyperbolic functions
  16.72.1 Introduction
  16.72.2 Simplifying trigonometric expressions
  16.72.3 Factorizing trigonometric expressions
  16.72.4 GCDs of trigonometric expressions
  16.72.5 Further Examples
 16.73 TURTLE: Turtle Graphics Interface for REDUCE
  16.73.1 Turtle Graphics
  16.73.2 Implementation
  16.73.3 Turtle Functions
  16.73.4 Examples
  16.73.5 References
 16.74 WU: Wu algorithm for polynomial systems
 16.75 XCOLOR: Color factor in some field theories
 16.76 XIDEAL: Gröbner Bases for exterior algebra
  16.76.1 Description
  16.76.2 Declarations
  16.76.3 Operators
  16.76.4 Switches
  16.76.5 Examples
 16.77 ZEILBERG: Indefinite and definite summation
  16.77.1 Introduction
  16.77.2 Gosper Algorithm
  16.77.3 Zeilberger Algorithm
  16.77.4 REDUCE operator GOSPER
  16.77.5 REDUCE operator EXTENDED_GOSPER
  16.77.6 REDUCE operator SUMRECURSION
  16.77.7 REDUCE operator EXTENDED_SUMRECURSION
  16.77.8 REDUCE operator HYPERRECURSION
  16.77.9 REDUCE operator HYPERSUM
  16.77.10 REDUCE operator SUMTOHYPER
  16.77.11 Simplification Operators
  16.77.12 Tracing
  16.77.13 Global Variables and Switches
  16.77.14 Messages
 16.78 ZTRANS: Z-transform package
  16.78.1 Z-Transform
  16.78.2 Inverse Z-Transform
  16.78.3 Input for the Z-Transform
  16.78.4 Input for the Inverse Z-Transform
  16.78.5 Application of the Z-Transform
  16.78.6 EXAMPLES
17 Symbolic Mode
 17.1 Symbolic Infix Operators
 17.2 Symbolic Expressions
 17.3 Quoted Expressions
 17.4 Lambda Expressions
 17.5 Symbolic Assignment Statements
 17.6 FOR EACH Statement
 17.7 Symbolic Procedures
 17.8 Standard Lisp Equivalent of Reduce Input
 17.9 Communicating with Algebraic Mode
  17.9.1 Passing Algebraic Mode Values to Symbolic Mode
  17.9.2 Passing Symbolic Mode Values to Algebraic Mode
  17.9.3 Complete Example
  17.9.4 Defining Procedures for Intermode Communication
 17.10 Rlisp ’88
 17.11 References
18 Calculations in High Energy Physics
 18.1 High Energy Physics Operators
  18.1.1 . (Cons) Operator
  18.1.2 G Operator for Gamma Matrices
  18.1.3 EPS Operator
 18.2 Vector Variables
 18.3 Additional Expression Types
  18.3.1 Vector Expressions
  18.3.2 Dirac Expressions
 18.4 Trace Calculations
 18.5 Mass Declarations
 18.6 Example
 18.7 Extensions to More Than Four Dimensions
19 REDUCE and Rlisp Utilities
 19.1 The Standard Lisp Compiler
 19.2 Fast Loading Code Generation Program
 19.3 The Standard Lisp Cross Reference Program
  19.3.1 Restrictions
  19.3.2 Usage
  19.3.3 Options
 19.4 Prettyprinting Reduce Expressions
 19.5 Prettyprinting Standard Lisp S-Expressions
20 Maintaining REDUCE
A Reserved Identifiers
B Bibliography
C Changes since Version 3.8