Why the Complex Logarithm Has More Than One Value

A worked explanation of why the complex logarithm has more than one value, including the key limitation and a checkable example.

Why the Complex Logarithm Has More Than One Value

The assumption that a function has only one output per input fails for the complex logarithm. For real positive numbers, ln(x) is single-valued because the argument is always zero. For complex numbers, the logarithm has infinitely many values because the argument is periodic. A single complex number can be represented by an angle plus any integer multiple of 2π, and each of those angles gives a different logarithm. The complex logarithm has more than one value because argument periodicity and branches create that multivalued behavior.

The definition of the complex logarithm is log(z) = ln|z| + i arg(z). Here ln|z| is the real logarithm of the modulus, which is single-valued. But arg(z) is not single-valued. Adding 2π to the argument produces the same complex number, yet changes the logarithm's imaginary part by 2πi. The result is an infinite set of values for log(z), all differing by integer multiples of 2πi.

A Worked Example

Take z = 1 + i. The modulus is |1 + i| = √2 ≈ 1.414. The natural logarithm of that modulus is ln(√2) ≈ 0.3466. The argument of 1 + i is π/4 radians (45 degrees). That gives a principal logarithm of 0.3466 + i(π/4) = 0.3466 + 0.7854i. But because the argument can be π/4 + 2πk for any integer k, the full set of logarithms is 0.3466 + i(0.7854 + 2πk). For k = 0 you get 0.3466 + 0.7854i. For k = 1 you get 0.3466 + 0.7854i + 2πi = 0.3466 + 7.0686i. For k = −1 you get 0.3466 + 0.7854i − 2πi = 0.3466 − 5.4978i. Every integer k produces a distinct logarithm.

The equation e^w = z has infinitely many solutions w. The exponential function e^(iθ) is periodic with period 2π, so e^(0.3466 + i(0.7854 + 2πk)) = e^(0.3466) * e^(i0.7854) = √2 * (1/√2 + i/√2) = 1 + i for every k. The periodicity of e^(iθ) directly creates the infinite set of logarithms.

Calculation Steps

To compute all values of log(z) for any non-zero complex number, follow these steps.

Find the Modulus

The modulus r = |z| is the distance from the origin. For z = a + bi, r = √(a² + b²). This value is always non-negative and single-valued. The natural logarithm of that modulus, ln(r), is the real part of every logarithm of z.

Find the Principal Argument

The principal argument θ is the angle of z in the range (−π, π] or [0, 2π), depending on your convention. For z = 1 + i, θ = π/4. For z = −1 + i, the real part is negative so the principal argument is 3π/4, not arctan(1/ −1) = −π/4. The quadrant rule is permanent: for a negative real part, add π (or 180°) to the arctan result.

Add the Periodicity

All arguments of z are θ + 2πk for any integer k. The complex logarithm of z is log(z) = ln(r) + i(θ + 2πk). Each integer k gives a distinct logarithm. Enter z = 1 + i into a log calculator and it returns only the principal value with k = 0. The calculator hides the other infinitely many values. You must add the periodicity yourself.

Failure Case: The Negative Real Axis

The principal branch Log(z) uses k = 0 and arg(z) in (−π, π]. This branch is discontinuous on the negative real axis. For z approaching −1 from above the axis, the argument approaches π. From below, the argument approaches −π. The principal logarithm jumps by 2πi at that boundary. That discontinuity is the price of forcing a multivalued function to be single-valued. It is not a bug; it is the definition of a branch cut.

Why the Method Works

The mechanism is the periodicity of the complex exponential. Euler's formula e^(iθ) = cos θ + i sin θ shows that e^(iθ) returns to the same value every 2π radians. So e^(ln(r) + iθ) = r e^(iθ) = z, but also e^(ln(r) + i(θ + 2π)) = r e^(iθ) = z. The exponential function is not one-to-one on the complex plane. Its inverse, the logarithm, cannot be single-valued without breaking the periodicity.

Branches are the solution. A branch is a single-valued function that selects one value from the multivalued set. The principal branch Log(z) picks the value with k = 0 and restricts the argument to a chosen range. Every branch has a branch cut, a line in the complex plane where the function is discontinuous. The standard branch cut is the negative real axis. Different branches choose different cuts and different argument ranges.

The real logarithm baseline is single-valued because the real numbers lie on the positive real axis, where the argument is always 0. There is no periodicity to produce extra values. Introducing imaginary parts adds rotation, and rotation brings periodicity. That periodicity makes the complex logarithm multivalued. The only way to get a single-valued function is to choose a branch, and that choice always comes with a discontinuity.

Limitation: The Undefined Point and the Principal Trap

The most common failure case is treating the principal value as the only answer. For z = 1 + i, a student using only the principal logarithm gets 0.3466 + 0.7854i. That is correct for the principal branch, but it misses the infinite set of logarithms that satisfy e^w = 1 + i. Every homework problem that asks for all logarithms requires including the 2πk term. Every exam that expects only the principal value will specify the principal branch, usually by writing Log(z) instead of log(z).

The second failure case is z = 0. The complex logarithm is undefined at zero because the modulus is zero and ln(0) does not exist. No branch can fix that. No choice of k gives a valid result. If a problem asks for log(0), the answer is that it is undefined, not that it has a principal value of negative infinity.

The third failure is the branch cut itself. If you use the principal branch and compute log(z) for a number on the negative real axis, the result depends on whether you approach from above or below. For z = −2, the principal argument is π (or −π depending on convention). The logarithm is ln(2) + iπ. But a number just below the negative real axis has argument −π, giving ln(2) − iπ. The difference is 2πi. That jump is the discontinuity of the branch.

Common Questions

Why does the complex logarithm have infinitely many values?

Because the argument of a complex number can be increased or decreased by any integer multiple of 2π without changing the number itself. Each of those angles gives a different logarithm since the imaginary part changes by 2πi.

What is the difference between log(z) and Log(z)?

log(z) with a lowercase l denotes the multivalued complex logarithm. Log(z) with a capital L denotes the principal branch, which is single-valued and uses k = 0 with the argument in (−π, π].

Is the complex logarithm defined at z = 0?

No. The modulus of zero is zero, and ln(0) is undefined. The complex logarithm is defined for all non-zero complex numbers.

How do I find all logarithms of a complex number by hand?

Compute the modulus r and the argument θ. Write log(z) = ln(r) + i(θ + 2πk) for every integer k. For z = i, r = 1, θ = π/2, so log(i) = i(π/2 + 2πk).

Why does my calculator return only one logarithm?

Calculators implement the principal branch Log(z). They cannot display infinitely many values. The calculator returns the value with k = 0, which is useful but incomplete.

What is a branch cut?

A branch cut is a line in the complex plane where the principal logarithm is discontinuous. The standard cut is the negative real axis. Crossing that line changes the argument by 2π, forcing a jump in the logarithm's imaginary part.

Does the periodicity affect the real part of the logarithm?

No. The real part ln|z| is determined only by the modulus, which is single-valued. Only the imaginary part is affected by the periodicity of the argument.