\documentclass{article} \usepackage{open-axiom} \begin{document} \title{\$SPAD/src/algebra ptranfn.spad} \author{Clifton J. Williamson} \maketitle \begin{abstract} \end{abstract} \eject \tableofcontents \eject \section{category PTRANFN PartialTranscendentalFunctions} <>= )abbrev category PTRANFN PartialTranscendentalFunctions ++ Description of a package which provides partial transcendental ++ functions, i.e. functions which return an answer or "failed" ++ Author: Clifton J. Williamson ++ Date Created: 12 February 1990 ++ Date Last Updated: 14 February 1990 ++ Keywords: ++ Examples: ++ References: ++ Description: ++ This is the description of any package which provides partial ++ functions on a domain belonging to TranscendentalFunctionCategory. PartialTranscendentalFunctions(K): Category == Definition where K : TranscendentalFunctionCategory NNI ==> NonNegativeInteger Definition ==> with --% Exponentials and Logarithms nthRootIfCan: (K,NNI) -> Union(K,"failed") ++ nthRootIfCan(z,n) returns the nth root of z if possible, ++ and "failed" otherwise. expIfCan: K -> Union(K,"failed") ++ expIfCan(z) returns exp(z) if possible, and "failed" otherwise. logIfCan: K -> Union(K,"failed") ++ logIfCan(z) returns log(z) if possible, and "failed" otherwise. --% TrigonometricFunctionCategory sinIfCan : K -> Union(K,"failed") ++ sinIfCan(z) returns sin(z) if possible, and "failed" otherwise. cosIfCan: K -> Union(K,"failed") ++ cosIfCan(z) returns cos(z) if possible, and "failed" otherwise. tanIfCan: K -> Union(K,"failed") ++ tanIfCan(z) returns tan(z) if possible, and "failed" otherwise. cotIfCan: K -> Union(K,"failed") ++ cotIfCan(z) returns cot(z) if possible, and "failed" otherwise. secIfCan: K -> Union(K,"failed") ++ secIfCan(z) returns sec(z) if possible, and "failed" otherwise. cscIfCan: K -> Union(K,"failed") ++ cscIfCan(z) returns csc(z) if possible, and "failed" otherwise. --% ArcTrigonometricFunctionCategory asinIfCan: K -> Union(K,"failed") ++ asinIfCan(z) returns asin(z) if possible, and "failed" otherwise. acosIfCan: K -> Union(K,"failed") ++ acosIfCan(z) returns acos(z) if possible, and "failed" otherwise. atanIfCan: K -> Union(K,"failed") ++ atanIfCan(z) returns atan(z) if possible, and "failed" otherwise. acotIfCan: K -> Union(K,"failed") ++ acotIfCan(z) returns acot(z) if possible, and "failed" otherwise. asecIfCan: K -> Union(K,"failed") ++ asecIfCan(z) returns asec(z) if possible, and "failed" otherwise. acscIfCan: K -> Union(K,"failed") ++ acscIfCan(z) returns acsc(z) if possible, and "failed" otherwise. --% HyperbolicFunctionCategory sinhIfCan: K -> Union(K,"failed") ++ sinhIfCan(z) returns sinh(z) if possible, and "failed" otherwise. coshIfCan: K -> Union(K,"failed") ++ coshIfCan(z) returns cosh(z) if possible, and "failed" otherwise. tanhIfCan: K -> Union(K,"failed") ++ tanhIfCan(z) returns tanh(z) if possible, and "failed" otherwise. cothIfCan: K -> Union(K,"failed") ++ cothIfCan(z) returns coth(z) if possible, and "failed" otherwise. sechIfCan: K -> Union(K,"failed") ++ sechIfCan(z) returns sech(z) if possible, and "failed" otherwise. cschIfCan: K -> Union(K,"failed") ++ cschIfCan(z) returns csch(z) if possible, and "failed" otherwise. --% ArcHyperbolicFunctionCategory asinhIfCan: K -> Union(K,"failed") ++ asinhIfCan(z) returns asinh(z) if possible, and "failed" otherwise. acoshIfCan: K -> Union(K,"failed") ++ acoshIfCan(z) returns acosh(z) if possible, and "failed" otherwise. atanhIfCan: K -> Union(K,"failed") ++ atanhIfCan(z) returns atanh(z) if possible, and "failed" otherwise. acothIfCan: K -> Union(K,"failed") ++ acothIfCan(z) returns acoth(z) if possible, and "failed" otherwise. asechIfCan: K -> Union(K,"failed") ++ asechIfCan(z) returns asech(z) if possible, and "failed" otherwise. acschIfCan: K -> Union(K,"failed") ++ acschIfCan(z) returns acsch(z) if possible, and "failed" otherwise. @ \section{License} <>= --Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. --All rights reserved. -- --Redistribution and use in source and binary forms, with or without --modification, are permitted provided that the following conditions are --met: -- -- - Redistributions of source code must retain the above copyright -- notice, this list of conditions and the following disclaimer. -- -- - Redistributions in binary form must reproduce the above copyright -- notice, this list of conditions and the following disclaimer in -- the documentation and/or other materials provided with the -- distribution. -- -- - Neither the name of The Numerical ALgorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- --THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS --IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED --TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A --PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER --OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, --EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, --PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR --PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF --LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING --NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS --SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @ <<*>>= <> <> @ \eject \begin{thebibliography}{99} \bibitem{1} nothing \end{thebibliography} \end{document}