The Friendship Theorem Dr. John S. Caughman Portland State University
description
Transcript of The Friendship Theorem Dr. John S. Caughman Portland State University
The Friendship Theorem
Dr. John S. CaughmanPortland State University
Public Service Announcement
(a+b)p=ap+bp …mod p
…when a, b are integers…and p is prime.
“Freshman’s Dream”
Freshman’s Dream Generalizes!
(a1+a2+…+an)p=a1p +a2
p +…+anp
…mod p…when a, b are integers
…and p is prime.
Freshman’s Dream Generalizes
(a1+a2+…+an)p = a1p +a2
p +…+anp
tr(A) p = tr(Ap) (mod p)
a4000*a300**a20***a1
A =
Freshman’s Dream Generalizes!
tr(A) p = tr(Ap) (mod p)
****************
A =
tr(A p) = tr((L+U)p) = tr(Lp +Up) = tr(Lp)+tr(Up)=0+tr(U)p = tr(A)p
Note: tr(UL)=tr(LU) so cross terms combine , and coefficients =0 mod p.
The Theorem
If every pair of people at a party has precisely one common friend, then there must be a person who is everybody's friend.
Cheap ExampleNancy
John Mark
Cheap Example of a GraphNancy
John Mark
What a Graph IS:Nancy
John Mark
Nancy
John
Vertices!
Mark
What a Graph IS:
Nancy
John
Edges!
Mark
What a Graph IS:
Nancy
John Mark
What a Graph IS NOT:
Nancy Loops!
MarkJohn
What a Graph IS NOT:
Nancy Loops!
MarkJohn
What a Graph IS NOT:
Nancy
John
Directed edges!
Mark
What a Graph IS NOT:
Nancy
John
Directed edges!
Mark
What a Graph IS NOT:
Nancy
John
Multi-edges!
Mark
What a Graph IS NOT:
Nancy
John
Multi-edges!
Mark
What a Graph IS NOT:
‘Simple’ Graphs…Nancy
John
• Finite• Undirected• No Loops• No Multiple Edges
Mark
Let G be a simple graph with n vertices.
The Theorem, Restated
If every pair of vertices in G has precisely one common neighbor, then G has a vertex with n-1 neighbors.
Generally attributed to Erdős (1966).
Easily proved using linear algebra.
Combinatorial proofs more elusive.
The Theorem, Restated
NOT A TYPICAL “THRESHOLD” RESULT
Pigeonhole PrincipleIf more than n pigeons are placed
into n or fewer holes, then at least one hole
will contain more than one pigeon.
Some threshold resultsIf a graph with n vertices has > n2/4 edges, then there must be a set of 3
mutual neighbors.
If it has > n(n-2)/2 edges, then there must be a vertex with n-1 neighbors.
Extremal Graph TheoryIf this were an extremal problem, we
would expect graphs with MORE edges than ours to also satisfy the same
conclusion…
1
1
2
1
2 3
1
2 3
4
4
4
4
2
Of the 15 pairs, 3 have four neighbors in common and 12 have two in common. So ALL pairs have at least one in common.
But NO vertex has five neighbors!
Related Fact – losing edges
Related Fact – losing edges
Related Fact – losing edges
Summary
If every pair of vertices in a graph has at least one neighbor in common, it might not be possible to remove edges and produce a
subgraph in which every pair has exactly one common neighbor.
Accolades for Friendship The Friendship Theorem is listed among
Abad's “100 Greatest Theorems”
The proof is immortalized in Aigner and Ziegler's Proofs from THE BOOK.
Example 1
Example 2
Example 3
How to prove it:STEP ONE: If x and y are not neighbors,
they have the same # of neighbors.Why:
Let Nx = set of neighbors of x
Let Ny = set of neighbors of y
x y
How to prove it:
x y
Nx
How to prove it:
x y
Ny
How to prove it:
For each u in Nx define:f(u) = common neighbor of u and y.
x y
How to prove it:
Pick u1 in Nx.
x y
u1How to prove it:
f(u1) = common neighbor of u1 and y.
x y
u1
f(u1)
How to prove it:
x y
How to prove it:
x yu2
Pick u2 in Nx.
How to prove it:
x yu2
f(u2)
f(u2) = common neighbor of u2 and y.
How to prove it:
x y
How to prove it:
x y u*f(u)= f(u*) u
How to prove it:
x y u*f(u)= f(u*) u
How to prove it:
So f is one-to-one from Nx to Ny.
x y u*f(u)= f(u*) u
How to prove it:
So f is one-to-one from Nx to Ny.
x y u*f(u)= f(u*) u
So it can’t be true that |Nx| > |Ny|.
How to prove it:
So f is one-to-one from Nx to Ny.
x y u*f(u)= f(u*) u
So |Nx| = |Ny|.
How to prove it:
So it can’t be true that |Nx| > |Ny|.
STEP 1: If x and y are not neighbors, they have the same # of neighbors.
STEP 2: Either some x has n-1 neighbors or ALL vertices have same # of neighbors.
Why: Assume no vertex has n-1 neighbors.Let A = {x : x has max # of neighbors, k}.
B = {y : y has < k neighbors}.
How to prove it:
A = {x : x has max # of neighbors, k}.
B = {y : y has < k neighbors}.
By Step 1, all in A are neighbors to all in B!
Set || Possible Size . A 0, 1, 2, …. , n
B 0, 1, 2, …. , n
STEP 1: If x and y are not neighbors, they have the same # of neighbors.
STEP 2: Either some x has n-1 neighbors or ALL vertices have k neighbors.
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
How to prove it:
How to prove it:
Why:
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
Count paths of length 2…
How to prove it:
Why:
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
Count paths of length 2…
( )n2
How to prove it:
Why:
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
Count paths of length 2…
( ) 1n2
How to prove it:
Why:
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
Count paths of length 2…
( ) 1 =n2
How to prove it:
Why:
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
Count paths of length 2…
( ) 1 = n
n2
How to prove it:
Why:
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
Count paths of length 2…
( ) 1 = n (k)n2
How to prove it:
Why:
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
Count paths of length 2…
( ) 1 = n (k) (k-1) n2
How to prove it:
Why:
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
Count paths of length 2…
( ) 1 = n (k) (k-1) ________2
n2
How to prove it:STEP 3: If all vertices have k neighbors, then
n = k (k-1) + 1.
( ) 1 = n (k) (k-1) ________2
n2
= n (k) (k-1) ________2
(n)(n-1)2
n = k (k-1) + 1
STEP 1: If x and y are not neighbors, they have the same # of neighbors.
STEP 2: Either some x has n-1 neighbors or ALL vertices have k neighbors.
STEP 3: If all vertices have k neighbors, then n = k (k-1) + 1.
How to prove it:
The Master PlanEach pair has 1 in common
If x,y not
neighbors,
|Nx|=|Ny|
Some x has n-1
neighbors
|Nx|= k for
all x, and
n =k(k-1)+1
Some Linear
Algebra
Either
Or
?
Adjacency MatrixCall vertices v1, v2, …, vn. Let A = n x n matrix where: Aij = 1, if vi, vj are neighbors, Aij = 0, if not. A is called the adjacency matrix of G.
Notice that the trace of A is 0.
{
Adjacency Matrix
v4
v1
v2
v3 0101101101011110
A =
A2 =0101101101011110
0101101101011110
=2121131221211213
Adjacency Matrix(A2)
ij = # common neighbors of vi, vj
So…….. for our graphs…..
A2 = (k-1) I + J. (J = all 1’s matrix)
(A2) ij = 1 if i, j different, and
(A2) ij = k if i = j.
Adjacency MatrixA2 = (k-1) I + J
(J = all 1’s matrix) A J = (k) J
Now let p be a prime divisor of k-1.Then k = 1 and n = k(k-1)+1 = 1 (mod p)
So A2 = J, and A J = J. (mod p)Therefore, Ai = J for all i > 1. (mod p)
Adjacency MatrixAi = J for all i > 1 (mod p)
But tr Ap = (tr A)p (mod p)
So, modulo p, we get: 1 = n = tr J = tr Ap = (tr A)p = 0.
Putting it all togetherEach pair has 1 in common
If x,y not
neighbors,
|Nx|=|Ny|
Some x has n-1
neighbors
|Nx|= k for
all x and
n =k(k-1)+1
0=1
Either
Or
Moral:
To make progress in almostany field of math, find a way to sneak linear algebra into it
!
THANK YOU !