Poincaré–Bendixson Theorem (Theorem # 2789)
Theorem
Let $f \colon U \to \mathbb{R}^2$ be continuously differentiable on an open set $U \subseteq \mathbb{R}^2$. Suppose the forward orbit $\mathcal{O}^+(x) = \{\varphi(t, x) : t \geq 0\}$ is contained in a compact set $D \subset U$ that contains no fixed points of $f$. Then the $\omega$-limit set $\omega(x)$ is a periodic orbit.
Calculus
Differential Equations
Discussion
No discussion available for this theorem.
Proof
[proofplan]
Since the forward orbit is bounded in the compact set $D$, the [Properties of the Omega-Limit Set](/theorems/2775) guarantee that $\omega(x)$ is non-empty, compact, connected, and invariant under the flow. The proof proceeds in three stages. First, we show that every point of $\omega(x)$ is a regular point of the flow (since $D$ has no fixed points), and we construct a local transversal section through an arbitrary point $p \in \omega(x)$. Second, we use the monotonicity of crossings on a one-dimensional transversal in $\mathbb{R}^2$ (a consequence of the Jordan Curve Theorem and uniqueness of solutions) to show that the forward orbit of any point in $\omega(x)$ returns to the transversal at the same point. Third, we conclude that $\omega(x)$ is a single periodic orbit.
[/proofplan]
[step:Establish that $\omega(x)$ is non-empty, compact, connected, and invariant]
Since $\mathcal{O}^+(x) \subset D$ and $D$ is compact, the forward orbit is bounded. By the [Properties of the Omega-Limit Set](/theorems/2775), the set $\omega(x)$ is non-empty, closed, bounded (hence compact, since $\omega(x) \subset D \subset \mathbb{R}^2$), connected, and invariant under the flow $\varphi$. That is, for every $q \in \omega(x)$ and every $s \in \mathbb{R}$, the point $\varphi(s, q)$ remains in $\omega(x)$.
Moreover, since $D$ contains no fixed points of $f$, every point $q \in \omega(x)$ satisfies $f(q) \neq \mathbf{0}$. The flow through $q$ is therefore a regular orbit — it does not degenerate to a point.
[guided]
We want to understand the structure of $\omega(x)$. The first step is to collect the known properties from the general theory.
The forward orbit $\mathcal{O}^+(x) = \{\varphi(t, x) : t \geq 0\}$ lies in $D$, and $D$ is compact. The [Properties of the Omega-Limit Set](/theorems/2775) requires exactly the hypothesis that the forward orbit is bounded, and it yields four conclusions:
1. $\omega(x)$ is **non-empty** (by the Bolzano-Weierstrass theorem: any sequence $\varphi(t_k, x)$ with $t_k \to +\infty$ in the compact set $D$ has a convergent subsequence).
2. $\omega(x)$ is **closed and bounded**, hence compact in $\mathbb{R}^2$ (it is the intersection of closed sets $\bigcap_{T \geq 0} \overline{\{\varphi(t, x) : t \geq T\}}$, all contained in $D$).
3. $\omega(x)$ is **connected** (if it were disconnected, the continuous trajectory $t \mapsto \varphi(t, x)$ would eventually be trapped in one component, contradicting the existence of limit points in both).
4. $\omega(x)$ is **invariant** under the flow: for every $q \in \omega(x)$ and every $s \in \mathbb{R}$, $\varphi(s, q) \in \omega(x)$.
Why does each of these matter for the Poincare-Bendixson argument? Non-emptiness gives us points to work with. Compactness will let us extract convergent subsequences of crossing points on the transversal. Connectedness will rule out the possibility that $\omega(x)$ contains several disjoint periodic orbits. Invariance means that $\omega(x)$ is a union of complete trajectories, so once we identify one periodic orbit inside $\omega(x)$, we can ask whether the entire $\omega$-limit set coincides with it.
The critical additional hypothesis specific to the Poincare-Bendixson theorem is that $D$ contains no fixed points of $f$. This ensures $f(q) \neq \mathbf{0}$ for every $q \in \omega(x)$, meaning every orbit in $\omega(x)$ is a regular orbit. Without this hypothesis, $\omega(x)$ could contain equilibria connected by homoclinic or heteroclinic orbits, leading to much richer (and non-periodic) structures.
[/guided]
[/step]
[step:Construct a local transversal section $\Sigma$ through a point $p \in \omega(x)$]
Fix $p \in \omega(x)$. Since $f(p) \neq \mathbf{0}$, choose a unit vector $n \in \mathbb{R}^2$ perpendicular to $f(p)$. Define the local cross-section
\begin{align*}
\Sigma_\delta := \{ p + s\,n : s \in (-\delta, \delta) \}
\end{align*}
for $\delta > 0$ sufficiently small. Since $f$ is $C^1$ and $f(p) \cdot n = 0$ while $|f(p)| > 0$, the implicit function theorem guarantees that $\delta$ can be chosen so that $f(q)$ is transverse to $\Sigma_\delta$ at every point $q \in \Sigma_\delta$. Specifically, the component of $f$ parallel to $f(p)$ does not vanish on $\Sigma_\delta$, so every orbit crossing $\Sigma_\delta$ does so transversally.
By the continuous dependence of the flow on initial conditions (a consequence of the [Picard--Lindelof Existence and Uniqueness Theorem](/theorems/2774)), there exists a neighbourhood $V$ of $p$ such that every orbit starting in $V$ crosses $\Sigma_\delta$ within a bounded time interval. In particular, we may define a **Poincare first-return map** in a neighbourhood of $p$: for each $q \in \Sigma_\delta$ sufficiently close to $p$, the orbit through $q$ returns to $\Sigma_\delta$ after some positive time $\tau(q) > 0$, and we set $P(q) = \varphi(\tau(q), q) \in \Sigma_\delta$.
[guided]
The idea is to reduce the two-dimensional flow to a one-dimensional map on a cross-section. Since $f(p) \neq \mathbf{0}$, the flow near $p$ looks locally like parallel streamlines crossing a segment perpendicular to $f(p)$. By studying how orbits cross this segment, we reduce the planar dynamics to the iteration of a map on an interval.
Fix $p \in \omega(x)$. Choose a unit vector $n \in \mathbb{R}^2$ perpendicular to $f(p)$ and define the cross-section
\begin{align*}
\Sigma_\delta = \{ p + s\,n : s \in (-\delta, \delta) \}.
\end{align*}
Why must $\delta$ be small? At $p$, transversality holds by construction: $f(p)$ is perpendicular to $n$, so $f(p)$ has a non-zero component along $\Sigma_\delta$'s normal direction (which is $f(p)$ itself). At nearby points, continuity of $f$ (which is $C^1$) guarantees that $f(p + s\,n) \cdot f(p) / |f(p)|$ stays bounded away from zero for $|s| < \delta$ when $\delta$ is small enough. This means every orbit crossing $\Sigma_\delta$ does so transversally -- it crosses from one side to the other without becoming tangent.
With transversality established, we construct the Poincare first-return map. By continuous dependence of the flow on initial conditions (a consequence of the [Picard-Lindelof Theorem](/theorems/2774)), there exists a neighbourhood $V$ of $p$ such that every orbit starting in $V$ crosses $\Sigma_\delta$ within a bounded time. The implicit function theorem, applied to the equation $\varphi(\tau, q) \in \Sigma_\delta$ (which is solvable at $(\tau_0, p)$ for some return time $\tau_0$), shows that the first-return time $\tau(q)$ varies continuously with $q \in \Sigma_\delta$ near $p$.
This defines the Poincare map $P: \Sigma_\delta \to \Sigma_\delta$ by $P(q) = \varphi(\tau(q), q)$. Since $\Sigma_\delta$ is one-dimensional (parametrised by $s \in (-\delta, \delta)$), $P$ is a continuous map of an interval to itself. This dimensional reduction -- from a two-dimensional flow to a one-dimensional map -- is the essence of the Poincare section method and is available specifically because we are working in $\mathbb{R}^2$.
[/guided]
[/step]
[step:Show that successive crossings of $\Sigma_\delta$ by the orbit $\mathcal{O}^+(x)$ are monotone]
Parametrise $\Sigma_\delta$ by the coordinate $s \in (-\delta, \delta)$ via $q(s) = p + s\,n$. Since $p \in \omega(x)$, the forward orbit $\mathcal{O}^+(x)$ returns to a neighbourhood of $p$ infinitely often. In particular, $\mathcal{O}^+(x)$ crosses $\Sigma_\delta$ at a sequence of points $q(s_1), q(s_2), q(s_3), \ldots$ at increasing times $t_1 < t_2 < t_3 < \cdots$.
[claim:The sequence $(s_k)_{k \geq 1}$ is monotone]
Consider two consecutive crossings $q(s_k)$ and $q(s_{k+1})$. The orbit segment $\{\varphi(t, x) : t \in [t_k, t_{k+1}]\}$ together with the segment of $\Sigma_\delta$ between $q(s_k)$ and $q(s_{k+1})$ forms a simple closed curve $\mathcal{C}$ in $\mathbb{R}^2$ (simple because solutions of a $C^1$ ODE in $\mathbb{R}^2$ cannot self-intersect by the uniqueness theorem, the [Picard--Lindelof Existence and Uniqueness Theorem](/theorems/2774)).
By the Jordan Curve Theorem, $\mathcal{C}$ divides $\mathbb{R}^2$ into two connected components: a bounded interior and an unbounded exterior. The orbit segment from $t_{k+1}$ onward, $\{\varphi(t, x) : t > t_{k+1}\}$, starts at $q(s_{k+1})$ on $\mathcal{C}$ and must cross $\Sigma_\delta$ transversally. By uniqueness of solutions, the future orbit cannot cross the orbit segment $\{\varphi(t, x) : t \in [t_k, t_{k+1}]\}$. Therefore, the next crossing $q(s_{k+2})$ must lie on the same side of $q(s_{k+1})$ as $q(s_k)$ — that is, between $q(s_k)$ and $q(s_{k+1})$. This gives $s_{k+2}$ between $s_k$ and $s_{k+1}$.
More precisely, if $s_1 < s_2$, then $s_1 < s_3 < s_2$, and by induction the odd-indexed terms $s_1, s_3, s_5, \ldots$ form a monotone increasing sequence and the even-indexed terms $s_2, s_4, s_6, \ldots$ form a monotone decreasing sequence, with odd terms below even terms. Similarly if $s_1 > s_2$, both subsequences are monotone with reversed inequalities. In either case, the sequence $(s_k)$ is eventually monotone (and in fact both the odd and even subsequences converge).
[/claim]
[proof]
The argument above constitutes the proof. We summarise the key logical chain: uniqueness of ODE solutions prevents orbit self-intersection; the Jordan Curve Theorem confines the future orbit to one side of the closed curve $\mathcal{C}$; transversality of $\Sigma_\delta$ forces the next crossing to lie between the previous two; and induction extends this to all subsequent crossings.
[/proof]
[guided]
This is the heart of the Poincare-Bendixson theorem and the step that relies essentially on the planar ($\mathbb{R}^2$) setting. The argument fails in $\mathbb{R}^3$ because the Jordan Curve Theorem is a two-dimensional result: a simple closed curve in $\mathbb{R}^3$ does not separate space into two components, so orbits can "go around" it.
Parametrise $\Sigma_\delta$ by $s \in (-\delta, \delta)$ via $q(s) = p + s\,n$. Since $p \in \omega(x)$, the orbit $\mathcal{O}^+(x)$ returns to a neighbourhood of $p$ infinitely often, crossing $\Sigma_\delta$ at a sequence of points $q(s_1), q(s_2), q(s_3), \ldots$ at increasing times $t_1 < t_2 < t_3 < \cdots$.
Why must the crossing coordinates $(s_k)$ be monotone? Consider two consecutive crossings $q(s_k)$ and $q(s_{k+1})$. The orbit arc $\{\varphi(t, x) : t \in [t_k, t_{k+1}]\}$ together with the segment of $\Sigma_\delta$ between $q(s_k)$ and $q(s_{k+1})$ forms a simple closed curve $\mathcal{C}$ in $\mathbb{R}^2$. It is simple for two reasons: (i) the orbit arc cannot self-intersect, by the uniqueness guarantee of the [Picard-Lindelof Theorem](/theorems/2774), and (ii) the transversal segment does not intersect the orbit arc except at the two endpoints (since the crossings are consecutive).
By the Jordan Curve Theorem, $\mathcal{C}$ divides $\mathbb{R}^2$ into two connected components: a bounded interior region $R$ and an unbounded exterior. The orbit continuing forward from $q(s_{k+1})$ must enter either $R$ or its complement. Whichever side it enters, it is trapped: it cannot exit through the orbit arc (by uniqueness -- two distinct solution curves of a $C^1$ ODE in $\mathbb{R}^2$ cannot intersect), so it can only exit through $\Sigma_\delta$. Since $\Sigma_\delta$ is transverse to the flow and intersects $\mathcal{C}$ only in the segment between $q(s_k)$ and $q(s_{k+1})$, the next crossing $q(s_{k+2})$ must lie between $q(s_k)$ and $q(s_{k+1})$ on $\Sigma_\delta$.
By induction on $k$: if $s_1 < s_2$, then $s_1 < s_3 < s_2$, $s_3 < s_4 < s_2$, and so on. The odd-indexed terms $s_1, s_3, s_5, \ldots$ form a monotone increasing sequence, and the even-indexed terms $s_2, s_4, s_6, \ldots$ form a monotone decreasing sequence, with every odd term below every even term. Both subsequences are bounded (since $|s_k| < \delta$) and monotone, hence both converge by the monotone convergence theorem. The case $s_1 > s_2$ is symmetric, with the inequalities reversed.
[/guided]
[/step]
[step:Prove that $(s_k)$ converges to a single limit $s^*$ and $q(s^*)$ lies on a periodic orbit]
Since the odd and even subsequences of $(s_k)$ are each monotone and bounded in $(-\delta, \delta)$, they converge:
\begin{align*}
\lim_{j \to \infty} s_{2j-1} = s^*_{\mathrm{odd}}, \qquad \lim_{j \to \infty} s_{2j} = s^*_{\mathrm{even}}.
\end{align*}
Both limits lie in $[-\delta, \delta]$, and the interleaving $s_{2j-1}$ between $s_{2j-2}$ and $s_{2j}$ (or vice versa) forces $s^*_{\mathrm{odd}} = s^*_{\mathrm{even}} =: s^*$.
To see this, note that $|s_{2j} - s_{2j-1}| \to 0$ as $j \to \infty$, because the interleaving condition gives $|s_{k+2} - s_{k+1}| \leq |s_{k+1} - s_k|$ for all $k$, so the gaps between consecutive crossings form a decreasing sequence bounded below by $0$ that must converge to $0$. Since the difference between the odd and even subsequences tends to $0$ and each converges, their limits coincide.
Set $p^* = q(s^*) = p + s^*\,n \in \Sigma_\delta$. The point $p^*$ is the limit of the crossing points $q(s_k)$, each of which lies on $\mathcal{O}^+(x)$ at the respective time $t_k \to \infty$. By definition of the $\omega$-limit set, $p^* \in \omega(x)$.
Now, $p^*$ is a fixed point of the Poincare map $P$ on $\Sigma_\delta$: since $s_k \to s^*$ and $P(q(s_k)) = q(s_{k+1})$ for the crossings induced by orbits in $\omega(x)$ (which is invariant), and $P$ is continuous, we obtain $P(p^*) = p^*$. A fixed point of the Poincare map corresponds to a periodic orbit of the flow: the orbit $\{\varphi(t, p^*) : 0 \leq t \leq \tau(p^*)\}$ returns to $p^*$ after time $\tau(p^*)$, so $\varphi(\tau(p^*), p^*) = p^*$ and the orbit through $p^*$ is periodic with period $\tau(p^*)$.
[guided]
From the previous step, the crossing coordinates $(s_k)$ satisfy a monotone interleaving: the odd subsequence $(s_{2j-1})_{j \geq 1}$ is monotone in one direction, the even subsequence $(s_{2j})_{j \geq 1}$ is monotone in the other, and each term lies between its two predecessors. Since both subsequences are bounded in $(-\delta, \delta)$ and monotone, each converges:
\begin{align*}
\lim_{j \to \infty} s_{2j-1} = s^*_{\mathrm{odd}}, \qquad \lim_{j \to \infty} s_{2j} = s^*_{\mathrm{even}}.
\end{align*}
**Do they converge to the same limit?** Yes. The interleaving condition gives $|s_{k+2} - s_{k+1}| \leq |s_{k+1} - s_k|$ for all $k$, so the gaps $|s_{k+1} - s_k|$ form a non-increasing sequence bounded below by $0$. Therefore $|s_{k+1} - s_k| \to 0$. In particular, $|s_{2j} - s_{2j-1}| \to 0$, which forces $s^*_{\mathrm{odd}} = s^*_{\mathrm{even}} =: s^*$.
**The limit point belongs to $\omega(x)$.** Set $p^* = q(s^*) = p + s^*\,n \in \Sigma_\delta$. The crossing points $q(s_k)$ lie on $\mathcal{O}^+(x)$ at times $t_k \to \infty$, and $q(s_k) \to p^*$, so by definition of the $\omega$-limit set, $p^* \in \omega(x)$.
**The limit point is a fixed point of the Poincare map.** The successive crossings satisfy $q(s_{k+1}) = P(q(s_k))$ (each crossing is the first return of the previous one to $\Sigma_\delta$). Since $P$ is continuous (by the implicit function theorem applied to the flow, using continuous dependence on initial data from the [Picard-Lindelof Theorem](/theorems/2774)), taking $k \to \infty$ gives $P(p^*) = \lim_{k \to \infty} P(q(s_k)) = \lim_{k \to \infty} q(s_{k+1}) = p^*$.
**A fixed point of $P$ corresponds to a periodic orbit.** The orbit through $p^*$ returns to $\Sigma_\delta$ at $p^*$ itself after time $\tau(p^*) > 0$, so $\varphi(\tau(p^*), p^*) = p^*$. Since $f(p^*) \neq \mathbf{0}$ (there are no fixed points in $D$, and $p^* \in \omega(x) \subset D$), the orbit through $p^*$ is a genuine periodic orbit with minimal period $\tau(p^*) > 0$, not a degenerate fixed point.
[/guided]
[/step]
[step:Conclude that $\omega(x)$ equals the periodic orbit through $p^*$]
Denote the periodic orbit through $p^*$ by $\Gamma = \{\varphi(t, p^*) : 0 \leq t < \tau(p^*)\}$. We have shown $p^* \in \omega(x)$, and since $\omega(x)$ is invariant under the flow, the entire orbit $\Gamma \subset \omega(x)$.
It remains to show $\omega(x) \subset \Gamma$. Suppose for contradiction that there exists $q \in \omega(x) \setminus \Gamma$. Since $\omega(x)$ is connected and $\Gamma$ is a Jordan curve (a homeomorphic image of $S^1$), the Jordan Curve Theorem gives that $\mathbb{R}^2 \setminus \Gamma$ consists of two connected components. The point $q$ lies in one of them, say the interior. Repeating the transversal-section argument at $q$: since $f(q) \neq \mathbf{0}$, construct a transversal $\Sigma'$ through $q$. The orbit through $q$ lies in $\omega(x)$ (by invariance) and hence its crossing sequence on $\Sigma'$ must converge to a periodic orbit contained in $\omega(x)$. But this periodic orbit would be distinct from $\Gamma$ and contained in the interior of $\Gamma$, and $\omega(x)$ would fail to be connected (since $\Gamma$ separates the new periodic orbit from the unbounded component). This contradicts the connectedness of $\omega(x)$ established in the first step.
Therefore $\omega(x) = \Gamma$, and the $\omega$-limit set is a periodic orbit.
[guided]
We have found a periodic orbit $\Gamma = \{\varphi(t, p^*) : 0 \leq t < \tau(p^*)\}$ contained in $\omega(x)$ (since $p^* \in \omega(x)$ and $\omega(x)$ is invariant). Could $\omega(x)$ contain additional points beyond $\Gamma$? We argue that it cannot, using the connectedness of $\omega(x)$ and the Jordan Curve Theorem.
Suppose for contradiction that there exists $q \in \omega(x) \setminus \Gamma$. The periodic orbit $\Gamma$ is a simple closed curve (a homeomorphic image of $S^1$) in $\mathbb{R}^2$, so the Jordan Curve Theorem gives that $\mathbb{R}^2 \setminus \Gamma$ consists of exactly two connected components: a bounded interior and an unbounded exterior. The point $q$ lies in one of them, say the interior.
Since $\omega(x)$ is invariant under the flow and contains no fixed points (as $D$ has none), the orbit through $q$ is a regular orbit entirely contained in $\omega(x)$. By the uniqueness of ODE solutions, this orbit cannot cross $\Gamma$, so it remains entirely on one side of $\Gamma$ -- in the interior.
Now repeat the entire Poincare section argument for the orbit through $q$: construct a transversal $\Sigma'$ at $q$, track the crossings of orbits with $\Sigma'$, and extract a periodic orbit $\Gamma'$ from the crossing limit. This $\Gamma'$ lies in $\omega(x)$ (by invariance and closure) and lies entirely in the interior of $\Gamma$ (since the orbit through $q$ stays in the interior).
But now $\omega(x)$ contains both $\Gamma$ and $\Gamma'$, with $\Gamma$ separating $\Gamma'$ from the unbounded component of $\mathbb{R}^2 \setminus \Gamma$. For $\omega(x)$ to be connected, there must exist a continuous path within $\omega(x)$ connecting a point of $\Gamma'$ to a point of $\Gamma$. Any such path from the interior of $\Gamma$ to $\Gamma$ must cross $\Gamma$ -- but then the path lies on $\Gamma$, contradicting $\Gamma' \neq \Gamma$ (since $\Gamma'$ is in the interior).
This contradiction forces $\omega(x) = \Gamma$: the $\omega$-limit set is exactly one periodic orbit. This completes the proof of the Poincare-Bendixson theorem.
[/guided]
[/step]
Explore Further
Linear Stability of Fixed Points of One-Dimensional Maps
Discrete Dynamics
Non-Powers of 2 Imply Chaos
Dynamical Systems
Stability of a Nonhyperbolic Fixed Point with Multiplier One
Discrete Dynamics
Lambda is Invariant Under f
Dynamical Systems
Stability Via The First Lyapunov Coefficient
Bifurcation Theory
Unity Is Always a Floquet Multiplier
Dynamical Systems
Period Three Implies Chaos
Dynamical Systems
Sharkovsky's Theorem
Dynamical Systems