Mathematica 教程 函数 »|教程 »

# Functions That Do Not Have Unique Values

When you ask for the square root s of a number a, you are effectively asking for the solution to the equation s2=a. This equation, however, in general has two different solutions. Both s=2 and s=-2 are, for example, solutions to the equation s2=4. When you evaluate the "function" , however, you usually want to get a single number, and so you have to choose one of these two solutions. A standard choice is that should be positive for x>0. This is what the Mathematica function Sqrt[x] does.
The need to make one choice from two solutions means that Sqrt[x] cannot be a true inverse function for x^2. Taking a number, squaring it, and then taking the square root can give you a different number than you started with.
gives +2, not -2.
 Out[1]=
Squaring and taking the square root does not necessarily give you the number you started with.
 Out[2]=
When you evaluate , there are again two possible answers: -1+i and 1-i. In this case, however, it is less clear which one to choose.
There is in fact no way to choose so that it is continuous for all complex values of z. There has to be a "branch cut"—a line in the complex plane across which the function is discontinuous. Mathematica adopts the usual convention of taking the branch cut for to be along the negative real axis.
This gives 1-i, not -1+i.
 Out[3]=
The branch cut in Sqrt along the negative real axis means that values of Sqrt[z] with z just above and below the axis are very different.
 Out[4]=
Their squares are nevertheless close.
 Out[5]=
The discontinuity along the negative real axis is quite clear in this three-dimensional picture of the imaginary part of the square root function.
 Out[6]=
When you find an nth root using z1/n, there are, in principle, n possible results. To get a single value, you have to choose a particular principal root. There is absolutely no guarantee that taking the nth root of an nth power will leave you with the same number.
This takes the tenth power of a complex number. The result is unique.
 Out[7]=
There are ten possible tenth roots. Mathematica chooses one of them. In this case it is not the number whose tenth power you took.
 Out[8]=
There are many mathematical functions which, like roots, essentially give solutions to equations. The logarithm function and the inverse trigonometric functions are examples. In almost all cases, there are many possible solutions to the equations. Unique "principal" values nevertheless have to be chosen for the functions. The choices cannot be made continuous over the whole complex plane. Instead, lines of discontinuity, or branch cuts, must occur. The positions of these branch cuts are often quite arbitrary. Mathematica makes the most standard mathematical choices for them.
 Sqrt[z] and z^s (-, 0) for Re s>0, (-, 0] for Re s≤0 (s not an integer) Exp[z] none Log[z] (-, 0] trigonometric functions none ArcSin[z] and ArcCos[z] (-, -1) and (+1, +) ArcTan[z] (-i, -i] and (i, i] ArcCsc[z] and ArcSec[z] (-1, +1) ArcCot[z] [-i, +i] hyperbolic functions none ArcSinh[z] (-i, -i) and (+i, +i) ArcCosh[z] (-, +1) ArcTanh[z] (-, -1] and [+1, +) ArcCsch[z] (-i, i) ArcSech[z] (-, 0] and (+1, +) ArcCoth[z] [-1, +1]

Some branch-cut discontinuities in the complex plane.

ArcSin is a multiple-valued function, so there is no guarantee that it always gives the "inverse" of Sin.
 Out[9]=
Values of ArcSin[z] on opposite sides of the branch cut can be very different.
 Out[10]=
A three-dimensional picture, showing the two branch cuts for the function sin-1 (z).
 Out[11]=