Proof of the Jordan Curve
Theorem
Note: we borrow the terminology and explain the
proof that appeared in "What is Mathematics"[1].
Consider a simple polygon P. We will show that the points of the
plane are divided into two sets A and B, having the following
property: any two points belonging to the same set can be joined by a polygonal
chain which does not cross P; also, any two points belonging to
different sets cannot be joined by a polygonal chain such that this chain
does not intersect P. Note that the common boundary of A
and B is our polygon P. In this case, we will let the set
A correspond to the outside set and the set B to the
inside set.
Proof steps:
- Chose a fixed direction in the plane; define the parity of a
point.
- Prove that if any point p1 of A is joined
to any point p2 of B by a polygonal path, then
this path must intersect P.
- Prove that any two points of the same set (A or B) can
be joined by a polygonal path not intersecting P.
The proof begins with chosing a fixed direction in the plane. Let this
direction be non-parallel to any of the edges of P. This
can always be done since P has a finite number of edges.
The sets A and B can now be defined in the following way.
Consider a point p and the ray through it, in the fixed direction
we chose at the previous step. Then the point p belongs to the set
A, if this ray intersects P an even number of times. On the
other hand, p belongs to B if the ray intersects our polygon
P an odd number of times.
We define the concept of parity in the following way: two points
have the same parity if they belong to the same set, either A or
B.
We now make the following note: all points on a segment not intersecting
P, have the same parity. This is obvious:
- chose a fixed direction in the plane
- consider a ray in this fixed direction
- a point p moving along this ray will have its parity
changed only when the ray intersects our polygon at one of its vertices
v. But even here, the parity of the point won't actually
change, because of the following rule that we make up: we will count
an intersection only when the two edges of P that come together
at v, are on different sides of the ray. We will not consider as
an intersection the case where the two edges of P meeting at v
are on the same side of the ray.
This implies that if any point p1 of A is joined
to any point p2 of B by a polygonal
path, then this path must intersect P because otherwise,
all the points on this path (and p1 and p2
in particular) would have the same parity.
Now we direct our attention to the last step in our proof, where
we show that any two points of the same category (A or B)
can be joined by a path which doesn't intersect P.
- consider any two points p and q belonging to the same
set, A or B.
- if the line segment from p to q does not intersect P,
we have the desired path and we're done.
- else, consider the first intersection of this segment with P.
Call this point p'. Also, consider the last intersection of the
segment with P and call that point q'. We now construct a
path starting at p and along the segment pq. Before we reach
p', our path separates from pq and from the boundary of P
but continues along this boundary until it reaches the continuation of
pq. Finally, it comes back to q'. Does this path actually
intersect pq between q' and q? If we can show that
this is the case, then we have the desired path from p to q,
which does not intersect P. This path will be obtained by continuing
the original path along q'q until q is reached. Let's stop
for a moment and note that any two points r and s close enough,
but on opposite sides of an edge of P, always have different parity.
This is true since the ray from one point (say r) will intersect
P in one more point than the ray from the other point (say q).
Back to our case, the parity changes as our path crosses pq between
q' and q, since p, q and all other points on
this path have the same parity. Therefore we have an intersection
point between q' and q, so we can obtain a path between p
and q, which does not intersect P. Since p and q
belong to the same set (from our original supposition), the theorem for
the case of polygons is now proved.
We can now conclude that A is the outside region of P
and B, the inside of P. It follows that for any simple
polygon, no matter its shape, we can say if a point is inside or
outside the poylgon. Just draw a ray from this point and count the
intersections with the polygon. An odd number of intersections means our
tested point was inside and an even number of intersection means
the point was outside the polygon. See
it happening in this Java applet.
|