Functions of a Complex Variable and Limits

A function of a complex variable looks, at first glance, like nothing new: a rule ff sending each zz of a domain Ω⊆C\Omega\subseteq\mathbb{C} to a value w=f(z)w=f(z), exactly as a real function sends a number to a number. But writing z=x+iyz=x+iy and f(z)=u(x,y)+i v(x,y)f(z)=u(x,y)+i\,v(x,y) exposes a double life. The single complex object ff is simultaneously a pair of real scalar fields u,vu,v over the plane, and every question about ff can be asked twice — once in one complex variable, once in two real variables. Switching fluently between those dialects is the grammar of complex analysis. The pivot on which the subject turns is the humble notion of a limit. Because C\mathbb{C} under the modulus distance ∣z1−z2∣|z_1-z_2| is nothing but the Euclidean plane R2\mathbb{R}^2 with a metric, the ε\varepsilon–δ\delta definition copies over verbatim from real analysis — yet it means something far stronger. On the real line a point has only a left and a right neighbour, so x→x0x\to x_0 is a two-sided squeeze. In the plane z0z_0 is surrounded: an approaching point can spiral, oscillate, or arrive along any curve, and lim⁡z→z0f(z)\lim_{z\to z_0}f(z) exists only if every one of those infinitely many approaches yields the same value. That single demand — path-independence — is the seed of everything. Sharpen the demand from the function itself to its difference quotient f(z)−f(z0)z−z0\frac{f(z)-f(z_0)}{z-z_0} and you get complex differentiability, from which the Cauchy–Riemann equations, contour integration, the residue calculus, and Taylor and Laurent series all unfold. Limits and continuity are the quiet gateway to that entire edifice.

Key takeaways
  • A complex function f:Ω→Cf:\Omega\to\mathbb{C} assigns to each z=x+iyz=x+iy a value w=u(x,y)+i v(x,y)w=u(x,y)+i\,v(x,y), so it is equivalently a pair of real functions of two real variables.
  • Since C\mathbb{C} with the metric ∣z1−z2∣|z_1-z_2| is isometric to R2\mathbb{R}^2, the ε\varepsilon–δ\delta definition transfers unchanged, and lim⁡z→z0f=L\lim_{z\to z_0}f=L splits into lim⁡u=Re⁡L\lim u=\operatorname{Re}L and lim⁡v=Im⁡L\lim v=\operatorname{Im}L.
  • The decisive new feature: zz may reach z0z_0 along infinitely many paths, and the limit exists only if all agree — far stronger than a one-dimensional limit.
  • The workhorse counterexample is lim⁡z→0zˉ/z=e−2iθ\lim_{z\to0}\bar z/z=e^{-2i\theta}: constant modulus 11 but a different phase for every direction θ\theta, so no limit exists.
  • Continuity is cheap; path-independence of the difference quotient is rare, and it is exactly what promotes continuity to the Cauchy–Riemann equations ux=vy, uy=−vxu_x=v_y,\ u_y=-v_x.
  • Key idea: in the plane zz can approach z0z_0 along infinitely many paths, so lim⁡z→z0f(z)\lim_{z\to z_0}f(z) exists only when every path yields the same value — this path-independence is what separates complex analysis from two-variable real calculus and is the germ of complex differentiability.
The core insight

In the plane zz can approach z0z_0 along infinitely many paths; lim⁡z→z0f(z)\lim_{z\to z_0}f(z) exists only when every path yields the same value. This path-independence is what distinguishes complex analysis from two-variable real calculus and is the seed of complex differentiability.

Where this lives today

The abstract machinery of complex limits runs quietly inside a surprising amount of working software and physics. Every time a numerical library evaluates a function of a complex argument — `numpy`'s `cmath`, a computer-algebra system, a lattice-QCD propagator — it must respect the branch cuts of log⁡\log,  \sqrt{\ }, and zaz^{a}, which are just the places where a limit fails to be single-valued as you circle a branch point; get the cut wrong and the phase jumps by 2π2\pi in the wrong hemisphere. Domain-coloring plots encode arg⁡f(z)\arg f(z) as hue and ∣f(z)∣|f(z)| as brightness precisely so a human eye can see where limits blow up (poles), vanish (zeros), or refuse to settle (essential singularities, which shimmer chaotically — the Casorati–Weierstrass theorem made visible). The same structure underwrites analytic continuation: the Riemann zeta function continues a divergent series past its natural boundary, and in quantum field theory dimensional regularization and the continuation of scattering amplitudes into complex energy hinge on how a function behaves as zz nears a singular point. Conformal maps still solve real two-dimensional problems in electrostatics, ideal fluid flow, and impedance tomography. And complex dynamics — iterating z↦z2+cz\mapsto z^2+c on the Riemann sphere — turns "where does the limit of the orbit live?" into the boundary of the Mandelbrot set, one of the most-computed objects in all of mathematics.

The physical picture

Set two copies of the plane side by side: the zz-plane on the left, the ww-plane on the right. A complex function grabs a point from the left plane and stamps down a point in the right. Continuity is the promise that the machine does not tear the fabric: wiggle the input inside a tiny disc and the output stays inside a tiny disc, stretched or shrunk but never ripped apart. The subject is the study of which stamping rules keep this promise — and, later, which keep it so smoothly they preserve angles too. The first figure makes the ε\varepsilon–δ\delta definition visual, with a concrete radius attached.

Figure
The ε–δ picture of continuity for f(z) = z² at z₀ = 1: every input within a disc of radius δ = ε/3 around z₀ is stamped into the disc of radius ε around L = f(z₀) = 1, so the δ-disc on the left maps inside the ε-disc on the right
Continuity = discs into discs: a δ-disc of inputs lands inside an ε-disc of outputs z-plane (input) w-plane (output) z₀ = 1 δ L = 1 ε f(z) = z² choose δ = min(1, ε/(1+2|z₀|)) = ε/3 ⇒ any z within δ of z₀ maps within ε of L

Now the mental upgrade that makes the plane different from the line. A point on the real axis is approached from two directions; a point in the plane is besieged from every direction and along every curve. So "approaching z0z_0" is not a single squeeze but a swarm of paths closing in, and a limit must return one answer to the entire swarm — a stringent vow whose reward is the rigidity that makes complex analysis so powerful. The cleanest way to feel how the vow fails is f(z)=zˉ/zf(z)=\bar z/z, whose modulus is a constant 11 yet whose value swings around the whole unit circle as the direction of approach rotates. The second figure shows the swarm and its images.

Figure
The path-dependence test: as z → 0 along the ray z = r·e^{iθ}, the quotient z̄/z equals e^{−2iθ} and lands at a different point of the unit circle for each direction — θ = 0° gives +1, θ = 45° gives −i, θ = 90° gives −1, θ = 135° gives +i — so the modulus is always 1 but no single limit exists
Why a limit fails: z̄/z = e^{−2iθ} takes a different value for every direction of approach z-plane: rays approaching 0 θ=0° θ=45° θ=90° θ=135° w-plane: images on |w| = 1 +1 −i −1 +i |z̄/z| = 1 for every path, yet the phase e^{−2iθ} sweeps the whole circle ⇒ the limit does not exist

Two lessons live in these pictures. First, the metric ∣z1−z2∣|z_1-z_2| is the same Euclidean distance you trust in R2\mathbb{R}^2, so nothing topological is new — open discs, closed sets, connectedness all carry over; what is new is that the plane also carries a multiplication, and a limit must respect both the geometry and that algebra at once. Second, continuity of ff and of ∣f∣|f| are not the same promise: zˉ/z\bar z/z has a perfectly continuous modulus and no limit at all.

The core equations

A complex function is bookkeeping for two real fields. The single most useful move in the subject is to split ff and any target value into real and imaginary parts, converting one complex statement into a pair of familiar two-variable real statements.

f:Ω→C,f(z)=u(x,y)+i v(x,y),z=x+iy(1)f:\Omega\to\mathbb{C},\qquad f(z)=u(x,y)+i\,v(x,y),\qquad z=x+iy \qquad (1)

where: Ω\Omega — the domain, usually an open connected subset of C\mathbb{C}; z=x+iyz=x+iy — the input, with real part xx and imaginary part yy; u,vu,v — real-valued functions of the two real variables x,yx,y; w=f(z)w=f(z) — the complex output. Reading: ff is one object and two fields at the same time, and every theorem can be phrased in either language. The limit is defined by the identical ε\varepsilon–δ\delta words as in real analysis, but the modulus now measures distance in the plane, so "close" means "inside a disc" rather than "inside an interval".

lim⁡z→z0f(z)=L  ⟺  ∀ε>0 ∃δ>0: 0<∣z−z0∣<δ⇒∣f(z)−L∣<ε(2)\lim_{z\to z_0}f(z)=L \iff \forall\varepsilon>0\ \exists\delta>0:\ 0<|z-z_0|<\delta \Rightarrow |f(z)-L|<\varepsilon \qquad (2)

where: z0z_0 — the limit point, which need not lie in Ω\Omega but must be approachable within it; LL — the candidate limit in C\mathbb{C}; ∣z−z0∣|z-z_0| — the modulus distance, identical to the Euclidean distance in R2\mathbb{R}^2; ε,δ\varepsilon,\delta — the output tolerance and the radius of the deleted input disc that meets it. Reading: the condition 0<∣z−z0∣0<|z-z_0| deletes the centre, so the value f(z0)f(z_0) (if any) never enters the definition of the limit. Splitting (2) into components turns one complex limit into two real ones — the bridge that lets multivariable calculus do the work.

lim⁡z→z0f(z)=a+ib  ⟺  lim⁡(x,y)→(x0,y0)u(x,y)=a  and  lim⁡(x,y)→(x0,y0)v(x,y)=b(3)\lim_{z\to z_0}f(z)=a+ib \iff \lim_{(x,y)\to(x_0,y_0)}u(x,y)=a \ \text{ and }\ \lim_{(x,y)\to(x_0,y_0)}v(x,y)=b \qquad (3)

where: a=Re⁡L, b=Im⁡La=\operatorname{Re}L,\ b=\operatorname{Im}L — real and imaginary parts of the target; u,vu,v — the component fields of ff. Reading: a complex limit exists exactly when both component limits exist, so every pathology of two-variable limits reappears here. Continuity is the limit condition with the deleted centre filled back in and made to agree.

f continuous at z0  ⟺  lim⁡z→z0f(z)=f(z0)(4)f\ \text{continuous at}\ z_0 \iff \lim_{z\to z_0}f(z)=f(z_0) \qquad (4)

where: f(z0)f(z_0) — the value at the point, which must now exist and equal the limit. Reading: continuity bundles three requirements — the value exists, the limit exists, and they coincide — and by (3) it holds iff both uu and vv are continuous at (x0,y0)(x_0,y_0). The reverse triangle inequality is the quiet engine behind almost every ε\varepsilon–δ\delta estimate; it also shows at a stroke that continuity of ff forces continuity of ∣f∣|f|.

∣z1+z2∣≤∣z1∣+∣z2∣,∣∣z1∣−∣z2∣∣≤∣z1−z2∣(5)|z_1+z_2|\le|z_1|+|z_2|,\qquad \big||z_1|-|z_2|\big|\le|z_1-z_2| \qquad (5)

where: z1,z2z_1,z_2 — arbitrary complex numbers. Reading: the left bound controls sums, the right (reverse) form controls moduli; setting z1=f(z), z2=f(z0)z_1=f(z),\,z_2=f(z_0) gives ∣∣f(z)∣−∣f(z0)∣∣≤∣f(z)−f(z0)∣\big||f(z)|-|f(z_0)|\big|\le|f(z)-f(z_0)|, so f→f(z0)f\to f(z_0) drags ∣f∣→∣f(z0)∣|f|\to|f(z_0)| — never the converse. Finally, sharpen continuity by dividing the increment of ff by the increment of zz and demanding the quotient have a path-independent limit — the entire content of complex differentiability.

f′(z0)=lim⁡Δz→0f(z0+Δz)−f(z0)Δz,Δz free to approach 0 along any path(6)f'(z_0)=\lim_{\Delta z\to 0}\frac{f(z_0+\Delta z)-f(z_0)}{\Delta z},\qquad \Delta z\ \text{free to approach}\ 0\ \text{along any path} \qquad (6)

where: Δz\Delta z — the complex increment, free to arrive along any curve; f′(z0)f'(z_0) — the complex derivative, which exists only if every path returns the same value. Reading: this is a two-dimensional limit in disguise, and its path-independence, examined along the xx- and yy-axes, becomes the Cauchy–Riemann equations ux=vy, uy=−vxu_x=v_y,\ u_y=-v_x.

Derivation AA limit that fails — the barred-z counterexample

The goal is to run the path-dependence test in full on the single most instructive map in the theory, f(z)=zˉ/zf(z)=\bar z/z, and extract the moral that governs every limit computation to come. We approach the origin along two special directions, find two different answers, then compute the answer along an arbitrary direction to see the value spread continuously around a circle — proving not merely that the limit fails but exactly how it fails, the diagnostic skill worth internalising.

Step 1. Approach along the real axis. Put z=xz=x with xx real and x→0x\to 0; then zˉ=x\bar z=x too, so zˉ/z=x/x=1\bar z/z=x/x=1. Every real point returns the value 11. Why: the real axis is the "obvious" path, and if you stopped here you would wrongly guess the limit is 11.

Step 2. Approach along the imaginary axis. Put z=iyz=iy with yy real and y→0y\to 0; then zˉ=−iy\bar z=-iy, so zˉ/z=−iy/iy=−1\bar z/z=-iy/iy=-1. The imaginary axis returns −1≠1-1\neq 1, and two disagreeing paths are already enough to deny the limit. Why: it shows the failure is not a fluke of one bad direction — the two most natural approaches already contradict each other.

Step 3. Approach along a general ray. Write z=r eiθz=r\,e^{i\theta} with fixed direction θ\theta and r→0r\to 0; then zˉ=r e−iθ\bar z=r\,e^{-i\theta} and zˉ/z=e−2iθ\bar z/z=e^{-2i\theta}, independent of rr. As θ\theta runs over [0,π)[0,\pi) the value e−2iθe^{-2i\theta} sweeps the entire unit circle. Why: this exhibits the full one-parameter family of "limit candidates", one per direction, so the failure is maximal — not one rogue value but a whole circle of them.

Step 4. Conclude. No single LL can equal e−2iθe^{-2i\theta} for all θ\theta, so lim⁡z→0zˉ/z\lim_{z\to0}\bar z/z does not exist — even though ∣zˉ/z∣=1|\bar z/z|=1 has a perfectly good limit. The lesson: a constant modulus never rescues a limit, and agreement along the axes is necessary but nowhere near sufficient. Why: this is the template you carry to every limit — test at least a family of paths, and trust only path-independent agreement.

Go deeper · Derivation B · 1 minContinuity of z² straight from ε and δ
Derivation BContinuity of z² straight from ε and δ

The goal is to prove f(z)=z2f(z)=z^2 continuous at an arbitrary z0∈Cz_0\in\mathbb{C} using nothing but the definition, and in doing so to expose the universal three-move template — factor the difference, bound the runaway factor on a scratch disc, then choose δ\delta — that proves continuity of every polynomial. The concrete δ=ε/3\delta=\varepsilon/3 at z0=1z_0=1 is the number annotated in the first figure, so this derivation is where that picture comes from.

Step 1. Factor the difference exactly. Over C\mathbb{C} we have the algebraic identity ∣z2−z02∣=∣z−z0∣ ∣z+z0∣|z^2-z_0^2|=|z-z_0|\,|z+z_0|. One factor, ∣z−z0∣|z-z_0|, is the quantity we control; the other, ∣z+z0∣|z+z_0|, is a nuisance that grows with zz and must be tamed. Why: isolating the controllable factor from the nuisance factor is the move that makes the estimate tractable.

Step 2. Bound the nuisance factor on a scratch disc. Provisionally restrict attention to ∣z−z0∣<1|z-z_0|<1. Then, writing z+z0=(z−z0)+2z0z+z_0=(z-z_0)+2z_0 and using the triangle inequality, ∣z+z0∣≤∣z−z0∣+2∣z0∣<1+2∣z0∣|z+z_0|\le|z-z_0|+2|z_0|<1+2|z_0|. So on this disc the nuisance factor is bounded by the constant 1+2∣z0∣1+2|z_0|. Why: without a preliminary cap the product could blow up; pinning zz to a unit disc converts the nuisance factor into a fixed number.

Step 3. Choose δ\delta to beat ε\varepsilon. Take δ=min⁡ ⁣(1, ε/(1+2∣z0∣))\delta=\min\!\big(1,\ \varepsilon/(1+2|z_0|)\big). The first entry keeps us on the scratch disc so Step 2 stays valid; the second forces ∣z−z0∣ (1+2∣z0∣)<ε|z-z_0|\,(1+2|z_0|)<\varepsilon. Then ∣z2−z02∣=∣z−z0∣ ∣z+z0∣<δ (1+2∣z0∣)≤ε|z^2-z_0^2|=|z-z_0|\,|z+z_0|<\delta\,(1+2|z_0|)\le\varepsilon. Why: the min⁡\min is the standard trick for honouring two competing constraints — stay local, and stay under tolerance — with a single radius.

Step 4. Read off the number and generalise. At z0=1z_0=1 this gives δ=min⁡(1,ε/3)=ε/3\delta=\min(1,\varepsilon/3)=\varepsilon/3 for small ε\varepsilon, the value drawn in the figure. The very same factor–bound–choose template, applied term by term, proves every polynomial continuous on all of C\mathbb{C}, and every rational function continuous wherever its denominator is nonzero. Why: one clean proof, reused, dispatches an entire class of functions — the economy that makes ε\varepsilon–δ\delta worth the effort.

Go deeper · Derivation C · 1 minThe difference quotient separates z² from barred-z
Derivation CThe difference quotient separates z² from barred-z

The goal is to show by direct computation why continuity is not enough for differentiability, and thereby to motivate the Cauchy–Riemann equations that the next article owns. Both z2z^2 and zˉ\bar z are continuous everywhere; we form the difference quotient of each and let the increment approach zero along two directions, and only one survives the test — the difference is precisely path-independence, whose component form is the Cauchy–Riemann system.

Step 1. Compute the quotient for z2z^2. Expanding, (z0+Δz)2−z02Δz=2z0 Δz+Δz2Δz=2z0+Δz\dfrac{(z_0+\Delta z)^2-z_0^2}{\Delta z}=\dfrac{2z_0\,\Delta z+\Delta z^2}{\Delta z}=2z_0+\Delta z. As Δz→0\Delta z\to 0 this tends to 2z02z_0 no matter how Δz\Delta z shrinks, because the leftover term Δz\Delta z vanishes on every path. So ddzz2=2z\frac{\mathrm{d}}{\mathrm{d}z}z^2=2z, path-independent. Why: the increment cancels cleanly, leaving a direction-free limit — the signature of a genuine complex derivative.

Step 2. Compute the quotient for zˉ\bar z. Here z0+Δz‾−zˉ0Δz=Δz‾Δz\dfrac{\overline{z_0+\Delta z}-\bar z_0}{\Delta z}=\dfrac{\overline{\Delta z}}{\Delta z}, which is exactly the barred-z ratio from the first derivation. It therefore inherits that ratio's direction-dependence: Δz‾/Δz=e−2iθ\overline{\Delta z}/\Delta z=e^{-2i\theta} along Δz=r eiθ\Delta z=r\,e^{i\theta}. Why: the increment does not cancel — it survives as a conjugate — so the quotient remembers the direction of approach.

Step 3. Test two paths for zˉ\bar z. Along Δz=t\Delta z=t (real) the quotient is +1+1; along Δz=it\Delta z=it (imaginary) it is −1-1. Different values, so ddzzˉ\frac{\mathrm{d}}{\mathrm{d}z}\bar z exists nowhere, despite zˉ\bar z being continuous at every point of C\mathbb{C}. Why: this is the flat contradiction that proves continuity does not imply differentiability — the whole reason complex differentiability is a special, restrictive property.

Step 4. Interpret in components. Demanding the quotient agree along the xx- and yy-axes for a general f=u+ivf=u+iv forces ux=vyu_x=v_y and uy=−vxu_y=-v_x — the Cauchy–Riemann equations. A function passing this test throughout an open set is called analytic, and analyticity is where the power of the theory is stored. Why: the abstract "path-independent quotient" becomes a concrete pair of PDEs, the handoff to the next article.

Limiting cases

Every limit question is settled by comparing approaches; the table below is a menu of the outcomes you will meet, each with the reasoning that decides it.

CaseResultMeaning
Limit exists after cancellationlim⁡z→0z2z=lim⁡z→0z=0\lim_{z\to0}\dfrac{z^2}{z}=\lim_{z\to0}z=0The apparent 0/00/0 removes: off the origin the function is zz, continuous everywhere, so every path gives 00.
Limit fails, direction-dependentlim⁡z→0zˉz=e−2iθ\lim_{z\to0}\dfrac{\bar z}{z}=e^{-2i\theta} on z=reiθz=re^{i\theta}Value depends on the angle of approach; no single limit despite ∣zˉ/z∣=1|\bar z/z|=1 being constant.
Removable pointlim⁡z→2iz2+4z−2i=4i\lim_{z\to 2i}\dfrac{z^2+4}{z-2i}=4iFactor (z−2i)(z+2i)(z-2i)(z+2i) cancels the zero denominator; the hole can be filled by defining the value 4i4i.
Pole (limit is ∞\infty)lim⁡z→01z=∞\lim_{z\to 0}\dfrac{1}{z}=\inftyThe modulus diverges along every path, a genuine limit on the Riemann sphere; the singularity is a pole.
Limit at infinitylim⁡z→∞f(z)=L  ⟺  lim⁡w→0f(1/w)=L\lim_{z\to\infty}f(z)=L \iff \lim_{w\to0}f(1/w)=LSubstitute z=1/wz=1/w; approaching ∞\infty is approaching the north pole of the Riemann sphere.
Continuous, not differentiablef(z)=∣z∣2=x2+y2f(z)=|z|^2=x^2+y^2A polynomial in x,yx,y, continuous on all of C\mathbb{C}, yet its difference quotient is path-dependent except at z=0z=0.

Worked examples

1 · A removable singularity, fully evaluated

Evaluate lim⁡z→2iz2+4z−2i\displaystyle\lim_{z\to 2i}\frac{z^2+4}{z-2i}, or show it fails.

Step 1. Test the point directly. Substituting z=2iz=2i gives (2i)2+42i−2i=−4+40=00\dfrac{(2i)^2+4}{2i-2i}=\dfrac{-4+4}{0}=\dfrac{0}{0} — indeterminate, so the naive substitution is useless and we must look at the structure. A 0/00/0 form is a signal that numerator and denominator share a zero, which may cancel.

Step 2. Factor the numerator over C\mathbb{C}. Since z2+4=(z−2i)(z+2i)z^2+4=(z-2i)(z+2i), the quotient is (z−2i)(z+2i)z−2i=z+2i\dfrac{(z-2i)(z+2i)}{z-2i}=z+2i for every z≠2iz\neq 2i; the offending factor cancels exactly, leaving a polynomial.

Step 3. Take the limit of the survivor. The function z+2iz+2i is continuous everywhere, so the limit is just its value at z=2iz=2i: 2i+2i=4i2i+2i=\mathbf{4i}, and no path-dependence can arise.

Step 4. Interpret. The original function was undefined at z=2iz=2i but has a perfectly good limit there; the singularity is removable, and defining f(2i)=4if(2i)=4i makes ff continuous. The limit is 4i4i, and z=2iz=2i is a removable singularity of (z2+4)/(z−2i)(z^2+4)/(z-2i).

2 · A genuine ε–δ construction with numbers

For f(z)=z2f(z)=z^2 at z0=1−iz_0=1-i, find an explicit δ\delta that guarantees ∣f(z)−f(z0)∣<ε|f(z)-f(z_0)|<\varepsilon for the tolerance ε=0.01\varepsilon=0.01.

Step 1. Locate the target value and the constant. Here f(z0)=(1−i)2=1−2i+i2=−2if(z_0)=(1-i)^2=1-2i+i^2=-2i, and ∣z0∣=12+(−1)2=2≈1.414|z_0|=\sqrt{1^2+(-1)^2}=\sqrt2\approx 1.414. The controlling constant from the continuity derivation — the worst-case size of the nuisance factor ∣z+z0∣|z+z_0| — is 1+2∣z0∣=1+22≈3.8281+2|z_0|=1+2\sqrt2\approx 3.828.

Step 2. Apply the formula δ=min⁡ ⁣(1, ε/(1+2∣z0∣))\delta=\min\!\big(1,\ \varepsilon/(1+2|z_0|)\big). The second entry is ε/(1+22)=0.01/3.828≈0.00261\varepsilon/(1+2\sqrt2)=0.01/3.828\approx 0.00261; since 0.00261<10.00261<1, the minimum is \boldsymbol{\delta\approx 0.00261}.

Step 3. Verify the guarantee. For any zz with ∣z−(1−i)∣<0.00261|z-(1-i)|<0.00261 we have ∣z2−(−2i)∣=∣z−z0∣ ∣z+z0∣<0.00261×3.828≈0.0100|z^2-(-2i)|=|z-z_0|\,|z+z_0|<0.00261\times 3.828\approx 0.0100. The bound is met with essentially no slack, confirming the choice is sharp. A radius of δ≈0.00261\delta\approx 0.00261 around z0=1−iz_0=1-i keeps f(z)=z2f(z)=z^2 within ε=0.01\varepsilon=0.01 of −2i-2i.

3 · A limit that does not exist, from a two-variable trap

Does lim⁡z→0(Re⁡z)(Im⁡z)∣z∣2\displaystyle\lim_{z\to 0}\frac{(\operatorname{Re}z)(\operatorname{Im}z)}{|z|^2} exist? Here the function is f(z)=xyx2+y2f(z)=\dfrac{xy}{x^2+y^2}.

Step 1. Approach along the axes. Along the real axis y=0y=0, so f=x⋅0x2=0f=\dfrac{x\cdot 0}{x^2}=0; along the imaginary axis x=0x=0, so f=0⋅yy2=0f=\dfrac{0\cdot y}{y^2}=0. Both axes give 00 — and testing only these is the exact trap the warning box names.

Step 2. Approach along the diagonal y=xy=x. Now f=x⋅xx2+x2=x22x2=12f=\dfrac{x\cdot x}{x^2+x^2}=\dfrac{x^2}{2x^2}=\dfrac12, independent of how close we are to 00. A third path gives 12≠0\tfrac12\neq 0.

Step 3. Generalise and conclude. Along y=mxy=mx the function is mx2(1+m2)x2=m1+m2\dfrac{m x^2}{(1+m^2)x^2}=\dfrac{m}{1+m^2}, a different value for every slope mm. Since distinct paths give distinct answers, the limit does not exist. No limit: f=xy/(x2+y2)f=xy/(x^2+y^2) returns m/(1+m2)m/(1+m^2) along y=mxy=mx, sweeping [−12,12][-\tfrac12,\tfrac12] as the direction turns.

Physics of the portrait

The theory of complex functions was founded by Cauchy and given its geometry by Riemann, but the airtight language in which we now state a limit was forged by one man drilling it into a generation of students in Berlin.

Origins · 1 minKarl Weierstrass and how this was discovered
KW
Karl Weierstrass
1815–1897 · the ε–δ definition of limit and continuity, and the divorce of continuity from differentiability

Karl Weierstrass came to mathematics by an unlikely road: he spent his twenties as a provincial Prussian schoolteacher, publishing almost nothing, working on Abelian functions by candlelight after teaching gymnastics and penmanship by day. A single 1854 paper on Abelian integrals detonated his obscurity and won him, in 1856, a chair in Berlin, where for three decades his lectures set the standard of rigour for all of analysis. His obsession was to expel vague talk of "quantities that become infinitely small" from the calculus. In its place he put the static, quantifier-based ε\varepsilon–δ\delta definition of limit and continuity we still use: for every ε\varepsilon there is a δ\delta — no motion, no infinitesimals, only inequalities between fixed numbers. This is the machinery of equation (2), and it is Weierstrass's more than anyone's. He wielded it to shocking effect in 1872, exhibiting a function continuous at every point of the line yet differentiable at none — a curve that is all corners, no tangents anywhere — which demolished the belief that continuity and smoothness travel together and forced everyone to take the ε\varepsilon–δ\delta definitions literally. In complex analysis he built the whole edifice from convergent power series (the "Weierstrass approach", complementary to Cauchy's integrals and Riemann's geometry), proved the theorem on the wild behaviour near an essential singularity that bears his and Casorati's names, and trained a remarkable school — Kovalevskaya, Schwarz, Frobenius, Mittag-Leffler among them. His monument is the guarantee that when we write lim⁡z→z0f(z)=L\lim_{z\to z_0}f(z)=L, we mean something exact.

History
1821
— Cauchy's Cours d'analyse grounds limits and continuity in inequalities rather than infinitesimals
1851
— Riemann's dissertation gives complex functions their geometric and conformal-mapping viewpoint
1861
— Weierstrass states the static ε–δ definition of limit and continuity in his Berlin lectures
1872
— Weierstrass exhibits a continuous nowhere-differentiable function, severing continuity from differentiability
1876
— the Casorati–Weierstrass theorem reads essential singularities off the limit behaviour of a function

Going further

Texts. Stone & Goldbart, Mathematics for Physics (CUP, 2009), Ch. 17–18 · Arfken, Weber & Harris, Mathematical Methods for Physicists, 7th ed., Ch. 11 · Riley, Hobson & Bence, Mathematical Methods for Physics and Engineering, 3rd ed., Ch. 24 · Ahlfors, Complex Analysis, 3rd ed., Ch. 1–2 · Churchill & Brown, Complex Variables and Applications, Ch. 2 · Needham, Visual Complex Analysis, Ch. 1–4 (for the geometric picture).

Provenance. All ε\varepsilon–δ\delta definitions and the component-limit equivalence (3) are standard (Ahlfors Ch. 2, Churchill–Brown Ch. 2). A verifier should recompute: (1) the radial values e−2iθe^{-2i\theta} for zˉ/z\bar z/z, giving +1,−i,−1,+i+1,-i,-1,+i at θ=0,45∘,90∘,135∘\theta=0,45^\circ,90^\circ,135^\circ; (2) δ=min⁡(1,ε/(1+2∣z0∣))\delta=\min(1,\varepsilon/(1+2|z_0|)) for z2z^2, and the numeric case z0=1−i, ε=0.01⇒δ≈0.00261z_0=1-i,\ \varepsilon=0.01\Rightarrow\delta\approx0.00261; (3) z2+4=(z−2i)(z+2i)z^2+4=(z-2i)(z+2i) giving the removable limit 4i4i; (4) the trap xy/(x2+y2)→m/(1+m2)xy/(x^2+y^2)\to m/(1+m^2) along y=mxy=mx. Every result is exact algebra with no empirical constants. Cross-check 2z0+Δz2z_0+\Delta z (for z2z^2) and Δz‾/Δz\overline{\Delta z}/\Delta z (for zˉ\bar z) against Stone & Goldbart Ch. 17.

Prerequisites. Complex Numbers and the Complex Plane. Leads to. Analytic Functions and the Cauchy–Riemann Equations · Elementary Complex Functions · Complex Integration and Contour Integrals.

Ask the tutor: ask me to walk you through the path-dependence test on any specific function, or to build the explicit δ\delta for a continuity proof step by step.

Is a complex limit really just two real limits stacked together?

Essentially yes, and that equivalence — equation (3) — is your most reliable tool. Because C\mathbb{C} with the modulus distance is isometric to R2\mathbb{R}^2, saying f(z)→a+ibf(z)\to a+ib is exactly saying u(x,y)→au(x,y)\to a and v(x,y)→bv(x,y)\to b as two-variable real limits, so every R2\mathbb{R}^2 technique — testing paths, squeeze bounds, polar coordinates — applies verbatim. The one thing the split hides is the multiplicative structure of C\mathbb{C}: the difference quotient divides by a complex number, an operation with no counterpart in a bare R2\mathbb{R}^2, and it is there that genuinely complex phenomena (analyticity, the Cauchy–Riemann equations) enter. For limits and continuity alone, "two real limits" is the whole story.

Why does the value f(z₀) not appear in the definition of the limit?

Look at the clause 0<∣z−z0∣0<|z-z_0| in equation (2): the strict left inequality deliberately deletes the centre, so the limit is computed from the behaviour of ff near z0z_0 but never at it. A limit describes the trend as you close in, and that trend must be knowable even when f(z0)f(z_0) is undefined or singular — as in the removable case (z2+4)/(z−2i)(z^2+4)/(z-2i), which has no value at 2i2i yet a clean limit of 4i4i. Continuity is the separate, stronger condition (equation 4) that additionally demands f(z0)f(z_0) exist and equal the limit. Keeping the two apart is exactly what lets you classify singularities: same limit machinery, different answers about the point itself.

How can |z̄/z| have a limit while z̄/z does not?

Because modulus throws away the phase, and the phase is exactly what misbehaves. Along z=reiθz=r e^{i\theta} the quotient is zˉ/z=e−2iθ\bar z/z=e^{-2i\theta}: its modulus is ∣e−2iθ∣=1|e^{-2i\theta}|=1 for every direction, a perfectly constant — hence convergent — quantity, but its argument −2θ-2\theta takes a different value for every direction, so the complex number itself never settles. This is a special case of a general fact: continuity of ∣f∣|f| is strictly weaker than continuity of ff, because ∣f∣|f| is blind to where ff points. Whenever you see a "limit" argued purely from moduli, be suspicious — you must also check that the phase converges, or the whole limit can silently fail while the modulus looks healthy.

What is the difference between continuity and complex differentiability, really?

Continuity asks that f(z)→f(z0)f(z)\to f(z_0) — the value varies without jumps. Differentiability asks the far harder question that the rate of change (f(z)−f(z0))/(z−z0)\big(f(z)-f(z_0)\big)/(z-z_0) approach a single number regardless of direction. Division by a complex number rotates as well as scales, so demanding one answer for all directions is a genuine constraint. The map zˉ\bar z shows the gap starkly: continuous everywhere (it just reflects across the real axis), yet its quotient Δz‾/Δz\overline{\Delta z}/\Delta z gives +1+1 along the real direction and −1-1 along the imaginary one, so it is differentiable nowhere. That gap, written in components, is the Cauchy–Riemann equations.

How do you make sense of a limit as z → ∞?

Add a single "point at infinity" to the plane, turning it into the Riemann sphere: the finite plane wraps onto a sphere with z=0z=0 at the south pole and ∞\infty at the north. Approaching ∞\infty then just means approaching the north pole, and the clean way to compute it is the substitution w=1/zw=1/z, so lim⁡z→∞f(z)=L\lim_{z\to\infty}f(z)=L is defined to mean lim⁡w→0f(1/w)=L\lim_{w\to0}f(1/w)=L with the ordinary ε\varepsilon–δ\delta definition in ww. This is not a hand-wave: on the sphere ∞\infty is an honest point, and a rational function like (3z2+1)/(z2−5)(3z^2+1)/(z^2-5) has the perfectly good limit 33 there. The sphere also lets a pole be a genuine limit — 1/z→∞1/z\to\infty as z→0z\to0 — rather than a mere failure to converge.

Which everyday functions are continuous, and where do they break?

Polynomials are continuous on all of C\mathbb{C}; rational functions everywhere except the zeros of their denominator; and eze^z, together with cos⁡z,sin⁡z,cosh⁡z,sinh⁡z\cos z,\sin z,\cosh z,\sinh z built from it, on the whole plane. Sums, products, quotients (nonzero denominator), and compositions of continuous functions are again continuous, so almost anything in closed form is continuous on its natural domain. The interesting breakage lives at branch points and branch cuts: log⁡z\log z and z\sqrt z cannot be made continuous on a loop encircling the origin, because the value shifts by 2πi2\pi i (or a sign) each time around, so one must cut the plane to keep them single-valued. Those cuts are where a limit becomes genuinely two-valued, and tracking them is a large part of the working craft of complex analysis.

Before this

Where this leads