In
symbolic computation
In mathematics and computer science, computer algebra, also called symbolic computation or algebraic computation, is a scientific area that refers to the study and development of algorithms and software for manipulating mathematical expressions ...
, the Risch algorithm is a method of indefinite integration used in some
computer algebra system
A computer algebra system (CAS) or symbolic algebra system (SAS) is any mathematical software with the ability to manipulate mathematical expressions in a way similar to the traditional manual computations of mathematicians and scientists. The de ...
s to find
antiderivatives. It is named after the American mathematician
Robert Henry Risch, a specialist in computer algebra who developed it in 1968.
The
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
transforms the problem of
integration into a problem in
algebra
Algebra is a branch of mathematics that deals with abstract systems, known as algebraic structures, and the manipulation of expressions within those systems. It is a generalization of arithmetic that introduces variables and algebraic ope ...
. It is based on the form of the function being integrated and on methods for integrating
rational function
In mathematics, a rational function is any function that can be defined by a rational fraction, which is an algebraic fraction such that both the numerator and the denominator are polynomials. The coefficients of the polynomials need not be ...
s,
radicals,
logarithm
In mathematics, the logarithm of a number is the exponent by which another fixed value, the base, must be raised to produce that number. For example, the logarithm of to base is , because is to the rd power: . More generally, if , the ...
s, and
exponential functions. Risch called it a
decision procedure
Decision may refer to:
Law and politics
*Judgment (law), as the outcome of a legal case
* Landmark decision, the outcome of a case that sets a legal precedent
* ''Per curiam'' decision, by a court with multiple judges
Books
* ''Decision'' (novel ...
, because it is a method for deciding whether a function has an
elementary function
In mathematics, an elementary function is a function of a single variable (typically real or complex) that is defined as taking sums, products, roots and compositions of finitely many polynomial, rational, trigonometric, hyperbolic, a ...
as an indefinite integral, and if it does, for determining that indefinite integral. However, the algorithm does not always succeed in identifying whether or not the antiderivative of a given function in fact can be expressed in terms of elementary functions.
The complete description of the Risch algorithm takes over 100 pages. The Risch–Norman algorithm is a simpler, faster, but less powerful variant that was developed in 1976 by
Arthur Norman.
Some significant progress has been made in computing the logarithmic part of a mixed transcendental-algebraic integral by Brian L. Miller.
Description
The Risch algorithm is used to integrate
elementary function
In mathematics, an elementary function is a function of a single variable (typically real or complex) that is defined as taking sums, products, roots and compositions of finitely many polynomial, rational, trigonometric, hyperbolic, a ...
s. These are functions obtained by composing exponentials, logarithms, radicals, trigonometric functions, and the four arithmetic operations ().
Laplace solved this problem for the case of
rational functions, as he showed that the indefinite integral of a rational function is a rational function and a finite number of constant multiples of logarithms of rational functions . The algorithm suggested by Laplace is usually described in calculus textbooks; as a computer program, it was finally implemented in the 1960s.
Liouville formulated the problem that is solved by the Risch algorithm. Liouville proved by analytical means that if there is an elementary solution to the equation then there exist constants and functions and in the field generated by such that the solution is of the form
:
Risch developed a method that allows one to consider only a finite set of functions of Liouville's form.
The intuition for the Risch algorithm comes from the behavior of the exponential and logarithm functions under differentiation. For the function , where and are
differentiable functions, we have
:
so if were in the result of an indefinite integration, it should be expected to be inside the integral. Also, as
:
then if were in the result of an integration, then only a few powers of the logarithm should be expected.
Problem examples
Finding an elementary antiderivative is very sensitive to details. For instance, the following algebraic function (posted to sci.math.symbolic by
Henri Cohen in 1993) has an elementary antiderivative, as
Wolfram Mathematica since version 13 shows (however, Mathematica does not use the Risch algorithm to compute this integral):
:
namely:
:
But if the constant term 71 is changed to 72, it is not possible to represent the antiderivative in terms of elementary functions,
as
FriCAS also shows. Some
computer algebra system
A computer algebra system (CAS) or symbolic algebra system (SAS) is any mathematical software with the ability to manipulate mathematical expressions in a way similar to the traditional manual computations of mathematicians and scientists. The de ...
s may here return an antiderivative in terms of ''non-elementary'' functions (i.e.
elliptic integral
In integral calculus, an elliptic integral is one of a number of related functions defined as the value of certain integrals, which were first studied by Giulio Fagnano and Leonhard Euler (). Their name originates from their originally arising i ...
s), which are outside the scope of the Risch algorithm. For example, Mathematica returns a result with the functions EllipticPi and EllipticF. Integrals in the form
were solved by
Chebyshev (and in what cases it is elementary), but the strict proof for it was ultimately done by
Zolotarev.
The following is a more complex example that involves both algebraic and
transcendental functions:
:
In fact, the antiderivative of this function has a fairly short form that can be found using substitution
(
SymPy can solve it while FriCAS fails with "implementation incomplete (constant residues)" error in Risch algorithm):
:
Some Davenport "theorems" are still being clarified. For example in 2020 a counterexample to such a "theorem" was found, where it turns out that an elementary antiderivative exists after all.
Implementation
Transforming Risch's theoretical algorithm into an algorithm that can be effectively executed by a computer was a complex task which took a long time.
The case of the purely transcendental functions (which do not involve roots of polynomials) is relatively easy and was implemented early in most
computer algebra system
A computer algebra system (CAS) or symbolic algebra system (SAS) is any mathematical software with the ability to manipulate mathematical expressions in a way similar to the traditional manual computations of mathematicians and scientists. The de ...
s. The first implementation was done by
Joel Moses in
Macsyma soon after the publication of Risch's paper.
The case of purely algebraic functions was partially solved and implemented in
Reduce by
James H. Davenport – for simplicity it could only deal with square roots and repeated square roots and not general
radicals or other non-quadratic
algebraic relations between variables.
The general case was solved and almost fully implemented in Scratchpad, a precursor of
Axiom
An axiom, postulate, or assumption is a statement that is taken to be true, to serve as a premise or starting point for further reasoning and arguments. The word comes from the Ancient Greek word (), meaning 'that which is thought worthy or ...
, by Manuel Bronstein, there is Axiom's fork FriCAS, with active Risch and other algorithm development on github. However, the implementation did not include some of the branches for special cases completely. Currently in 2025, there is no known full implementation of the Risch algorithm.
Decidability
The Risch algorithm applied to general elementary functions is not an algorithm but a
semi-algorithm because it needs to check, as a part of its operation, if certain expressions are equivalent to zero (
constant problem), in particular in the constant field. For expressions that involve only functions commonly taken to be
elementary it is not known whether an algorithm performing such a check exists (current
computer algebra system
A computer algebra system (CAS) or symbolic algebra system (SAS) is any mathematical software with the ability to manipulate mathematical expressions in a way similar to the traditional manual computations of mathematicians and scientists. The de ...
s use heuristics); moreover, if one adds the
absolute value function to the list of elementary functions, then it is known that no such algorithm exists; see
Richardson's theorem.
This issue also arises in the
polynomial division algorithm; this algorithm will fail if it cannot correctly determine whether coefficients vanish identically.
Virtually every non-trivial algorithm relating to polynomials uses the polynomial division algorithm, the Risch algorithm included. If the constant field is
computable, i.e., for elements not dependent on , then the problem of zero-equivalence is decidable, so the Risch algorithm is a complete algorithm. Examples of computable constant fields are and , i.e., rational numbers and rational functions in with rational-number coefficients, respectively, where is an indeterminate that does not depend on .
This is also an issue in the
Gaussian elimination
In mathematics, Gaussian elimination, also known as row reduction, is an algorithm for solving systems of linear equations. It consists of a sequence of row-wise operations performed on the corresponding matrix of coefficients. This method can a ...
matrix algorithm (or any algorithm that can compute the
nullspace of a matrix), which is also necessary for many parts of the Risch algorithm. Gaussian elimination will produce incorrect results if it cannot correctly determine whether a pivot is identically zero.
See also
*
Axiom (computer algebra system)
*
Closed-form expression
In mathematics, an expression or equation is in closed form if it is formed with constants, variables, and a set of functions considered as ''basic'' and connected by arithmetic operations (, and integer powers) and function composition. ...
*
Incomplete gamma function
In mathematics, the upper and lower incomplete gamma functions are types of special functions which arise as solutions to various mathematical problems such as certain integrals.
Their respective names stem from their integral definitions, whic ...
*
Lists of integrals
*
Liouville's theorem (differential algebra)
*
Nonelementary integral
*
Symbolic integration
In calculus, symbolic integration is the problem of finding a formula for the antiderivative, or ''indefinite integral'', of a given function ''f''(''x''), i.e. to find a formula for a differentiable function ''F''(''x'') such that
:\frac = f(x ...
Notes
References
*
*
*
*
*
*
*
*
*
External links
*
{{DEFAULTSORT:Risch Algorithm
Computer algebra
Integral calculus
Differential algebra