This document is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. The copyright holder grants you permission to redistribute this document freely as a verbatim copy. Furthermore, the copyright holder permits you to develop any derived work from this document provided that the following conditions are met. a) The derived work acknowledges the fact that it is derived from this document, and maintains a prominent reference in the work to the original source. b) The fact that the derived work is not the original OpenMath document is stated prominently in the derived work. Moreover if both this document and the derived work are Content Dictionaries then the derived work must include a different CDName element, chosen so that it cannot be confused with any works adopted by the OpenMath Society. In particular, if there is a Content Dictionary Group whose name is, for example, `math' containing Content Dictionaries named `math1', `math2' etc., then you should not name a derived Content Dictionary `mathN' where N is an integer. However you are free to name it `private_mathN' or some such. This is because the names `mathN' may be used by the OpenMath Society for future extensions. c) The derived work is distributed under terms that allow the compilation of derived works, but keep paragraphs a) and b) intact. The simplest way to do this is to distribute the derived work under the OpenMath license, but this is not a requirement. If you have questions about this license please contact the OpenMath society at http://www.openmath.org. transc1 http://www.openmath.org/cd http://www.openmath.org/cd/transc1.ocd 2006-03-30 2004-03-30 3 1 Author: OpenMath Consortium SourceURL: https://github.com/OpenMath/CDs official This CD holds the definitions of many transcendental functions. They are defined as in Abromowitz and Stegun (ninth printing on), with precise reductions to logs in the case of inverse functions. Note that, if signed zeros are supported, some strict inequalities have to become weak . It is intended to be `compatible' with the MathML elements denoting trancendental functions. Some additional functions are in the CD transc2. log application This symbol represents a binary log function; the first argument is the base, to which the second argument is log'ed. It is defined in Abramowitz and Stegun, Handbook of Mathematical Functions, section 4.1 a^b = c implies log_a c = b log 100 to base 10 (which is 2). ln application This symbol represents the ln function (natural logarithm) as described in Abramowitz and Stegun, section 4.1. It takes one argument. Note the description in the CMP/FMP of the branch cut. If signed zeros are in use, the inequality needs to be non-strict. -pi < Im ln x <= pi ln 1 (which is 0). exp application This symbol represents the exponentiation function as described in Abramowitz and Stegun, section 4.2. It takes one argument. for all k if k is an integer then e^(z+2*pi*k*i)=e^z 2 sin application This symbol represents the sin function as described in Abramowitz and Stegun, section 4.3. It takes one argument. sin(x) = (exp(ix)-exp(-ix))/2i 2 sin(A + B) = sin A cos B + cos A sin B sin A = - sin(-A) cos application This symbol represents the cos function as described in Abramowitz and Stegun, section 4.3. It takes one argument. cos(x) = (exp(ix)+exp(-ix))/2 2 cos 2A = cos^2 A - sin^2 A 2 2 2 cos A = cos(-A) tan application This symbol represents the tan function as described in Abramowitz and Stegun, section 4.3. It takes one argument. tan A = sin A / cos A sec application This symbol represents the sec function as described in Abramowitz and Stegun, section 4.3. It takes one argument. sec A = 1/cos A csc application This symbol represents the csc function as described in Abramowitz and Stegun, section 4.3. It takes one argument. csc A = 1/sin A cot application This symbol represents the cot function as described in Abramowitz and Stegun, section 4.3. It takes one argument. cot A = 1/tan A sinh application This symbol represents the sinh function as described in Abramowitz and Stegun, section 4.5. It takes one argument. sinh A = 1/2 * (e^A - e^(-A)) 2 cosh application This symbol represents the cosh function as described in Abramowitz and Stegun, section 4.5. It takes one argument. cosh A = 1/2 * (e^A + e^(-A)) 2 tanh application This symbol represents the tanh function as described in Abramowitz and Stegun, section 4.5. It takes one argument. tanh A = sinh A / cosh A sech application This symbol represents the sech function as described in Abramowitz and Stegun, section 4.5. It takes one argument. sech A = 1/cosh A csch application This symbol represents the csch function as described in Abramowitz and Stegun, section 4.5. It takes one argument. csch A = 1/sinh A coth application This symbol represents the coth function as described in Abramowitz and Stegun, section 4.5. It takes one argument. coth A = 1/tanh A arcsin application This symbol represents the arcsin function. This is the inverse of the sin function as described in Abramowitz and Stegun, section 4.4. It takes one argument. arcsin(z) = -i ln (sqrt(1-z^2)+iz) 2 2 x in [-(pi/2),(pi/2)] implies arcsin(sin x) = x 2 2 arccos application This symbol represents the arccos function. This is the inverse of the cos function as described in Abramowitz and Stegun, section 4.4. It takes one argument. arccos(z) = -i ln(z+i \sqrt(1-z^2)) 2 2 x in [0,pi] implies arccos(cos x) = x arctan application This symbol represents the arctan function. This is the inverse of the tan function as described in Abramowitz and Stegun, section 4.4. It takes one argument. arctan(z) = (i/2)ln((1-iz)/(1+iz)) 2 x in (-(pi/2),(pi/2)) implies arctan(tan x) = x 2 2 arcsec application This symbol represents the arcsec function as described in Abramowitz and Stegun, section 4.4. arcsec(z) = -i ln(1/z + i \sqrt(1-1/z^2)) 2 2 for all z | arcsec z = i * arcsech z arccsc application This symbol represents the arccsc function as described in Abramowitz and Stegun, section 4.4. arccsc(z) = -i ln(i/z + \sqrt(1 - 1/z^2)) 2 2 arccsc(z) = i * arccsch(i * z) arccsc(-z) = - arccsc(z) arccot application This symbol represents the arccot function as described in Abramowitz and Stegun, section 4.4. arccot(-z) = - arccot(z) arccot(x) = (i/2) * ln ((x - i)/(x + i)) 2 arcsinh application This symbol represents the arcsinh function as described in Abramowitz and Stegun, section 4.6. arcsinh z = ln(z + \sqrt(1+z^2)) 2 2 arcsinh(z) = - i * arcsin(i * z) arccosh application This symbol represents the arccosh function as described in Abramowitz and Stegun, section 4.6. arccosh(z) = 2*ln(\sqrt((z+1)/2) + \sqrt((z-1)/2)) 2 2 2 2 2 arccosh z = i * (pi - arccos z) arctanh application This symbol represents the arctanh function as described in Abramowitz and Stegun, section 4.6. arctanh(z) = - i * arctan(i * z) for all x where 0 <= x^2 < 1 | arctanh(x) = 1/2 * ln((1 + x)/(1 - x)) 2 2 1 2 arcsech application This symbol represents the arcsech function as described in Abramowitz and Stegun, section 4.6. arcsech(z) = 2 ln(\sqrt((1+z)/(2z)) + \sqrt((1-z)/(2z))) 2 2 2 2 2 for all x in (0..1] | arcsech x = ln(1/x + (1/(x^2) - 1)^(1/2)) 0 1 2 1 2 arccsch application This symbol represents the arccsch function as described in Abramowitz and Stegun, section 4.6. arccsch(z) = ln(1/z + \sqrt(1+(1/z)^2)) 2 2 arccsch(z) = i * arccsc(i * z) arccoth application This symbol represents the arccoth function as described in Abramowitz and Stegun, section 4.6. arccoth(z) = (ln(-1-z)-ln(1-z))/2 2 for all z | if z is not zero then arccoth(z) = i * arccot(i * z)