Proof Techniques
Proof Techniques
1 Unpacking definitions
There’s two steps to proving a theorem. The first step is what I call “unpacking definitions”. In
this step, we fill in the initial steps of the proof by looking at the definitions of the things we’re
talking about, and the structure of the statements we’re proving.
This is not straightforward—it’s a skill to be learned before you can write proofs—but once you
learn to do this, you will be able to do this for any theorem, no matter how hard it is to prove.
Once that is done, though, you still have to do the second step: filling in the gaps.
Let’s look at “unpacking definitions” using an example from the previous lecture:
Theorem 1.1. Let G be a graph, and let v ∼ w if there is a v − w walk in G. Then the relation
∼ is an equivalence relation on V (G).
The definition of an equivalence relation has three parts, so right away, we know that our proof is
going to have three parts: we are going to prove that ∼ is reflexive, symmetric, and transitive.
Let’s focus on one of those: proving that ∼ is symmetric. This is more complicated. The definition
of a symmetric relation is “for all v, w, if v ∼ w, then w ∼ v”. How does this help us structure our
proof?
• The definition begins by saying “for all v, w”. This means that we are given v and w (in
this case, vertices of G) with no control over what they could be. We have to prove that the
definition holds without any assumptions about v and w.
• The definition is an if-then statement. The default way to prove this is to assume the hy-
pothesis (that v ∼ w) and use this to prove the conclusion (that w ∼ v).
This is still not entirely unpacked. The statements “v ∼ w” and “w ∼ v” have a definition given in
the theorem itself. So what we’re assuming is that there is a v − w walk, and what we’re proving
is that there is a w − v walk.
If we’re assuming that something exists, it helps to give it a name. So let’s refine our assumption.
We’re assuming that there is a sequence (v0 , v1 , v2 , . . . , vℓ ) that is a v − w walk in G. This (by
definition of a walk) tells us three things: that v0 = v, that vℓ = w, and that vi vi+1 is an edge of
G for i = 0, . . . , ℓ − 1.
Our goal is to prove that there is a w −v walk. To prove that something exists, we have to construct
it, and that’s a step that unpacking definitions can’t help us with. We have to come up with an
idea for what the w − v walk should be.
1
This document comes from the Math 3322 course webpage: http://facultyweb.kennesaw.edu/mlavrov/
courses/3322-fall-2024.php
1
But once we do have that idea, we can say what our next steps should be. Using our idea, we
define a sequence of vertices that we intend to show is a w − v walk. Then we check that it satisfies
the definitions: it starts at w, it ends at v, and consecutive vertices in the sequence are adjacent.
When that’s done, we will have completed our proof.
To summarize, here is the “scaffolding” of a proof that ∼ is symmetric.
Proof. Suppose that v ∼ w: that there is a v − w walk in G. Our goal is to prove that there is also
a w − v walk in G.
Let (v0 , v1 , v2 , . . . , vℓ ) be a v − w walk (with v0 = v and vℓ = w). Then define a new sequence of
vertices by . . .
This sequence of vertices starts at w, ends at v, and consecutive vertices in the sequence are adjacent
because . . .
Therefore it is a w − v walk. Therefore a w − v walk exists, so w ∼ v. Since we assumed v ∼ w for
arbitrary vertices v and w, and proved w ∼ v, we conclude that ∼ is symmetric.
The gaps with “. . . ” are where we need to come up with some kind of idea: how exactly do we
construct the w − v walk? This can come from intuition about the problem, or by looking at some
examples and noticing a pattern.
2
The negation of a “for all” statement is a “there exists” statement. For example, the negation
of “all triangle-free graphs are 3-colorable” is “there exists a triangle-free graph that is not 3-
colorable”.2
The negation of a “there exists” statement is a “for all” statement. For example, the negation of
“there is a connected graph with 10 vertices and 8 edges” is “all graphs with 10 vertices and 8
edges are not connected”.
This property of negations sometimes lets us pick and choose which kind of statement we want to
work with. That’s because proving “If X, then Y ” is the same as proving “If not Y , then not X”.
Or, we can use a proof by contradiction.
One final note—if something doesn’t exist, then we consider “for all” statements about it to be
true. For example, the statement “all v − w paths have even length” is true in a graph which has
no v − w paths at all! That’s because the negation of this statement is “there is a v − w path which
does not have even length” which is clearly false in a graph which has no v − w paths.
3 Optimization problems
A lot of definitions in graph theory involve solving an optimization problem: they are phrased in
terms of the biggest or smallest thing of a certain type. We’ve already seen two examples:
• The distance d(u, v) between u and v is the length of the shortest u − v path.
• The diameter of a graph G is the longest distance between any two of its vertices (that’s two
optimization problems in one)!
So a statement like “the distance between u and v is 5” has two parts to it:
• There is, actually, some u − v path of length 5. (By itself, this proves that d(u, v) ≤ 5.)
• There is no u − v path of length 4 or less: all u − v paths have length at least 5. (By itself,
this proves that d(u, v) ≥ 5.)
Let’s begin with a concrete example. Consider the graph below (it’s called the Petersen graph, and
we will see it again):
u
v w
Suppose that we want to prove that d(u, w) = 2. Two steps are necessary:
2
Don’t worry about what this means just yet, but we will see which of these two statements is true later in the
semester.
3
1. First, we prove that d(u, w) ≤ 2. This involves constructing a path of length 2 that starts at
u and ends at w. Such a path is (u, v, w).
2. Second, we prove that d(u, w) ≥ 2. With length 2, this is not too bad: all we have to do is
rule out d(u, w) = 0 and d(u, w) = 1.
We can’t have d(u, w) = 0 because a path of length 0 starts and ends at the same vertex, but
u ̸= w.
We can’t have d(u, w) = 1 because a path of length 1 starting at u and ending at w could
only be the sequence (u, w). But this is not a path, because u and w are not adjacent.
Let’s look at a more complicated and abstract example:
Theorem 3.1. The path graph Pn shown below has diameter n − 1.
v1 v2 v3 vn−1 vn
...
Proof. First, we show that the diameter of this graph is at least n − 1. This requires showing that
there exists a pair of vertices u, v with d(u, v) = n − 1. Actually, showing that there exists a pair
of vertices u, v with d(u, v) ≥ n − 1 is enough, saving us some work.
This pair of vertices will be v1 and vn . What we want to prove about them is that there is no
v1 − vn path of length n − 2 or less. Informally: in k steps from v1 , we can only get as far as vk+1 ,
so if k < n − 1, we can’t reach vn . Formally, we should prove this by induction on k, which we’ll
review next week.
Second, we show that the diameter of this graph is at most n − 1. This requires showing that for
all pairs of vertices u, v, d(u, v) ≤ n − 1: there exists a u − v path of length n − 1 or less.
So let’s construct a u − v path that’s not too long. There are two cases:
• If u = vi and v = vj with i < j, then our path will be (vi , vi+1 , . . . , vj−1 , vj ). This has length
j − i < n − 1.
• If u = v = vi , then our path will be (vi ). This has length 0 < n − 1.
• If u = vi and v = vj with i > j, then our path will be (vi , vi−1 , . . . , vj+1 , vj ). This has length
i − j < n − 1.
In both cases, we’ve shown that d(u, v) ≤ n − 1, so the diameter of Pn is at most n − 1.
Proof. Let (v0 , v1 , . . . , vℓ ) with v0 = v and vℓ = w be the shortest v − w walk. We will prove that
it’s a path, which proves both parts of the theorem.
4
Suppose that it’s not a path: that some vertices repeat. In particular, let’s suppose that vi = vj
with i < j. Then the following is also a v − w walk:
(We should check that it satisfies the definition. In fact, any two consecutive vertices in this walk
were also consecutive in the walk we started with, so they are adjacent. This is not as obvious for
the pair (vi , vj+1 ), but vi = vj , so this is the same as the pair (vj , vj+1 ).)
However, the length of this new walk is ℓ − (j − i), which is less than ℓ. So we’ve found a v − w
walk shorter than the v − w walk we started with! That’s a contradiction, because we assumed
that we took the shortest v − w walk there is. So our assumption that the walk was not a path is
false: the walk is a path.
This technique is called the “extremal principle”. To prove that a v − w walk that’s also a path
exists, we picked an extremal v − w walk: one that’s best by some metric. In this case, it was
the shortest. Then, we reason: “The extremal thing we chose must have the property we want.
Suppose it didn’t. Then we could improve it to make it even better, which contradicts our initial
assumption that it was the best.”
In this case, the use of the extremal principle was baked into the theorem’s statement. But taking
the shortest v − w walk is also the easiest way to prove the first part of the theorem: ‘’If there is
a v − w walk in G, then there is a v − w path in G, as well.” So sometimes, we can apply this
technique even when there’s nothing in the theorem telling us to use it.
Be careful! Before we can pick the “best” out of a set of objects, we have to know two things.
First, we must know that the set isn’t empty. (In this case, we had to know that there was a v − w
walk before we could pick the shortest v − w walk.) Second, we must know that there is a “best”.
For integer quantities like distance, it’s enough to know that there is a limit to how good things
can get. (In this case, the limit is that all walks have a nonnegative length.) If there were no limit,
it would be possible that there’s no best object; no matter which one we pick, there was a better
one we missed.
The theorem is also worth mentioning for other reasons. It tells us that two things are equivalent,
even though one has fewer assumptions built in. That’s how we use this theorem:
• If we are trying to prove that there is a v − w path in G, it’s enough to prove that there is a
v − w walk (which requires less work). Then, we can invoke this theorem.
• If we can assume that there is a v − w walk in G, then we can strengthen that assumption to
have a v − w path, by invoking this theorem. (This assumption is more powerful: we get to
say that the vertices of the path are all different, “for free”.)
This theorem lets us always prove the thing that’s easier to prove, and assume the thing that is
more informative.
5
5 Practice problems
1. Here are some statements from topics we will later see in graph theory.
For each one, rewrite the sentence to make the quantifiers and logical implications inside it
explicit. Do not worry about looking up the terminology you haven’t learned yet.
Example: “Every connected graph has a spanning tree.”
Example solutions:
• “For all graphs G, if G is connected, then G has a spanning tree”
• “For all graphs G, if G is connected, then there exists a graph H such that H is a
spanning tree of G.”
(a) Any two isomorphic graphs have the same number of edges.
(b) Any two embeddings of a given planar graph have the same number of faces.
n
(c) A graph with n vertices is Hamiltonian if every vertex has degree 2 or greater.
(d) Among triangle-free graphs (graphs with no 3-vertex, 3-edge subgraphs), there are graphs
with arbitrarily large chromatic number.
2. Find the error in this proof of the statement “Graphs never have edges”.
Let G be any graph, and let v be an arbitrary vertex. Let (v, v1 , v2 , . . . , vℓ ) be the
longest walk beginning at v.
If there is an edge vw with endpoint at v, then the walk (v, w, v, v1 , v2 , . . . , vℓ ) is a
longer walk beginning at v. That’s a contradiction, because we assumed that we
took the longest such walk. So the assumption that the edge vw exists is incorrect:
there is no edge with an endpoint at v.
Since v was arbitrary, G has no edges with an endpoint anywhere: no edges at all!
3. The Ramsey number R(s, t) is defined as “The least positive integer n such that every n-
vertex graph contains either a clique of size s or an independent set of size t”. We will learn
more about these concepts later on in the semester; for the purposes of this problem, you
don’t need to have any idea what a “clique” or “independent set” is.
For now, write a scaffolding for a proof of the statement “R(3, 3) = 6”. That is, write a proof,
but skip the parts where you actually need to have a clever idea about cliques or independent
sets. Try to include as much detail as possible, otherwise!
4. Prove that the graph shown below has diameter 2:
6
5. A “P3 -free graph” is a graph that does not have as an induced subgraph. In
other words, if you pick 3 vertices inside a P3 -free graph, there will never be exactly 2 edges
between them: there could be 0 edges, a single edge, or all 3 edges.
(a) Let G be a P3 -free graph, and let v ∼ w if v and w are adjacent (if vw ∈ E(G)).
Prove that ∼ is an equivalence relation on V (G).
(b) What does this tell us about the structure of G? Describe what a connected component
of G can look like.