IF YOU DID THIS (WRONG) YOU PROBABLY MEANT THIS (RIGHT)
sin(x) or sin x (sin x)
a*x (* a x)
x^2 or x**2 (expt x 2)
a*x^2+b (+ (* a (expt x 2)) b)
x^0.5 (sqrt x)
-q (- q) or (* -1 q)more details follow.
You should probably NOT have floating point numbers in the forms you submit, although these may sometimes work. We do not offer (yet, at least) NUMERICAL integration, except as an accidental consequence of exact symbolic table-lookup.
Acceptable constants include (optionally) signed integers of arbitrary length. Examples: -1234567890123, 0, 45. Fractions are expressed in lisp in this form: 1/2, -3/2, etc. The complex square-root of -1 is #c(0 1).
This list is for input in Common Lisp. Conventionally, these would be typed in lower case, but the Lisp input is currently not case sensitive. The presence of a function in this list does not mean we can integrate all formulas involving that function. In fact, the currently loaded table of integrals may include no formulas with some of the functions below.
(* + / abs arccos arccosech arccosh arccot arccoth arccsc arcsec arcsech arcsin arcsinh arctan arctanh bessel-any bessel-i bessel-j chebyshev cos cosh cot coth csc csch dirichlet elliptic-e elliptic-f elliptic-k erf erfc exp expt hermite hypergeo jacobi-sn laguerre legendre log reciprocal sec sech sin sinh sqrt tan tanh)
Notice that raising to a power x^n is accomplished by using (expt x n), and the exponential function, sometimes written e^x, is (exp x). It is our hope that common functions are spelled conventionally.
In Lisp, functions and their arguments are combined in a totally systematic way that requires no extra bracketing to specify precedence, etc. This form is a fully-parenthesized prefix form. Thus a+b*c is expressed in lisp as (+ a (* b c)). The expression (log x) is the natural logarithm. The trigonometric and arctrigonometric functions are in radians.
Although we allow (- x 1) or (- x) as input, we generally view
(+ -1 x) and (* -1 x) as simpler, and provide results that way.
(bessel-any bessel-i bessel-j chebyshev elliptic-e elliptic-f elliptic-k hermite hypergeo jacobi-sn laguerre legendre)Bessel-any denotes either of the bessel functions, in case you wish to retrieve those integrals true of any of the various Bessel functions. (we still need to explain hypergeo.)
Richard J. Fateman fateman@cs.berkeley.edu
Theodore H. Einwohner (1931-1997)
Timothy A. James tjames@cs.berkeley.edu