pdmw 2011 rick brewster, ben moore, sean mcguinness, jon ... · rick brewster, ben moore, sean...
TRANSCRIPT
The complexity of circular recolouringsPDMW 2011
Rick Brewster, Ben Moore, Sean McGuinness, Jon Noel
Aug 9, 2015
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 1 / 34
Galena Trail, New Denver, BC
Photo credit: Our Mountain Bike Vacations: www.mtb-hol.com
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 2 / 34
Fox, chicken, seed
A collection of configurations : 24 − 6 = 10.
Starting configuration, ending configuration
Construct a graph with vertices as configurations and edges asallowed moves between.
Find the shortest path between starting and ending configs.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 3 / 34
Another popular reconfig problem
About 43× 1019 configurations.
1995 Michael Reid finds a 20 move path [Cube20.org]
2010 a group using 35-CPU-years of donated by Google shows 20moves always suffice.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 4 / 34
Another popular reconfig problem
About 43× 1019 configurations.
1995 Michael Reid finds a 20 move path [Cube20.org]
2010 a group using 35-CPU-years of donated by Google shows 20moves always suffice.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 4 / 34
Another popular reconfig problem
About 43× 1019 configurations.
1995 Michael Reid finds a 20 move path [Cube20.org]
2010 a group using 35-CPU-years of donated by Google shows 20moves always suffice.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 4 / 34
Reconfig Questions
Many puzzles are examples of reconfiguration problems (E. Demaine)
Questions one might ask:I Can we get from Config A to Config B?I Can we get to all configs?I Can we change one object?
We are interested in how the computational complexity grows withincreasing size.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 5 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
3
2
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
3
1
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
Recolouring
Inital Colouring
2
1
1
14
4
4
3
32
2
3
3
31
1
1
4
4
Final Colouring
2
3
3
31
1
1
4
4
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 6 / 34
The graph L4
Example
1
1
2
2
3
3
4
4
χ = 2
col = 4
Colouring number
The colouring number is col(G ) = maxH⊆G{δ(H) + 1} and
χ(G ) ≤ χ`(G ) ≤ col(G )
Easily find a col(G )-colouring, but col(G ) can be far from χ(G ).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 7 / 34
The graph L4
Example
1
1
2
2
3
3
4
4
χ = 2
col = 4
Colouring number
The colouring number is col(G ) = maxH⊆G{δ(H) + 1} and
χ(G ) ≤ χ`(G ) ≤ col(G )
Easily find a col(G )-colouring, but col(G ) can be far from χ(G ).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 7 / 34
The graph L4
Example
1
1
2
2
3
3
4
4
χ = 2
col = 4
Colouring number
The colouring number is col(G ) = maxH⊆G{δ(H) + 1} and
χ(G ) ≤ χ`(G ) ≤ col(G )
Easily find a col(G )-colouring, but col(G ) can be far from χ(G ).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 7 / 34
The graph L4
Example
1
1
2
2
3
3
4
4
χ = 2
col = 4
Colouring number
The colouring number is col(G ) = maxH⊆G{δ(H) + 1} and
χ(G ) ≤ χ`(G ) ≤ col(G )
Easily find a col(G )-colouring, but col(G ) can be far from χ(G ).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 7 / 34
The graph L4
Example
1
1
2
2
3
3
4
4
χ = 2
col = 4
Colouring number
The colouring number is col(G ) = maxH⊆G{δ(H) + 1} and
χ(G ) ≤ χ`(G ) ≤ col(G )
Easily find a col(G )-colouring, but col(G ) can be far from χ(G ).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 7 / 34
The graph L4
Example
1
1
2
2
3
3
4
4
χ = 2
col = 4
Colouring number
The colouring number is col(G ) = maxH⊆G{δ(H) + 1} and
χ(G ) ≤ χ`(G ) ≤ col(G )
Easily find a col(G )-colouring, but col(G ) can be far from χ(G ).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 7 / 34
Reconfiguration for colourings
Given G can we generate all k-colourings recolouring one vertex at atime?
Given G and two colourings f , g , can we reconfig f to g?
Given G , a colouring, and a vertex v , can we change the colour of v?
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 8 / 34
The colour graph
A framework to capture mixing
Given a graph G and an nonnegative integer k.
Ck(G ) is the graph withI V the set of all k-colourings of G ,I f ∼ g if f and g differ on exactly one vertex
G is k-mixing iff Ck(G ) is connected.
f reconfigs to g if same component.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 9 / 34
The colour graph
A framework to capture mixing
Given a graph G and an nonnegative integer k.
Ck(G ) is the graph withI V the set of all k-colourings of G ,I f ∼ g if f and g differ on exactly one vertex
G is k-mixing iff Ck(G ) is connected.
f reconfigs to g if same component.
Theorem (Cereceda, van den Heuvel, and Johnson)
For any graph G , G is k-mixing for k ≥ col(G ) + 1.
Theorem (Choo and MacGillivray)
The graph Ck(G ) is hamiltonian for k ≥ col(G ) + 2.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 9 / 34
The colour graph
A framework to capture mixing
Given a graph G and an nonnegative integer k.
Ck(G ) is the graph withI V the set of all k-colourings of G ,I f ∼ g if f and g differ on exactly one vertex
G is k-mixing iff Ck(G ) is connected.
f reconfigs to g if same component.
Theorem (Cereceda, van den Heuvel, and Johnson)
For any graph G , f reconfigs to g if
Same fixed vertices
Same weighted cycles
Same weighted paths between fixed vertices
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 9 / 34
The graph C3(L4)
Non-surjective colourings from C2(L4)
Partition is refinement of non-surjective
New partition
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 10 / 34
The graph C3(L4)
Non-surjective colourings from C2(L4)
Partition is refinement of non-surjective
New partition
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 10 / 34
The graph C3(L4)
Non-surjective colourings from C2(L4)
Partition is refinement of non-surjective
New partition
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 10 / 34
Computational complexity k-colouring
k-Colouring (k fixed)
Instance: A graph G .
Question: Does G admit a k-colouring?
k = 1: trivial.
k = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
k ≥ 3: NP-complete.
For k ≥ col(G ) we can answer YES.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 11 / 34
Computational complexity k-colouring
k-Colouring (k fixed)
Instance: A graph G .
Question: Does G admit a k-colouring?
k = 1: trivial.
k = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
k ≥ 3: NP-complete.
For k ≥ col(G ) we can answer YES.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 11 / 34
Computational complexity k-colouring
k-Colouring (k fixed)
Instance: A graph G .
Question: Does G admit a k-colouring?
k = 1: trivial.
k = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
k ≥ 3: NP-complete.
For k ≥ col(G ) we can answer YES.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 11 / 34
Computational complexity k-colouring
k-Colouring (k fixed)
Instance: A graph G .
Question: Does G admit a k-colouring?
k = 1: trivial.
k = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
k ≥ 3: NP-complete.
For k ≥ col(G ) we can answer YES.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 11 / 34
Computational complexity k-colouring
k-Colouring (k fixed)
Instance: A graph G .
Question: Does G admit a k-colouring?
k = 1: trivial.
k = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
k ≥ 3: NP-complete.
For k ≥ col(G ) we can answer YES.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 11 / 34
Complexity k-recolouring
The k-Recolouring problem
Instance Graph plus two k-colourings: (G , f , g).
Question Does f recolour to g?
k-Recolouring complexity
k = 2 k = 3 k ≥ 4Trivial P – Weighted cycles PSPACE-complete
Bonsma, Cereceda, van den Heuvel, Johnson
Is there 3-colouring? NP-complete
Given a 3-colouring f can all others be obtained by recolouring fromf ? coNP-complete restricted to bipartite graphs
Given two: Can g be obtained from f ? Polynomial
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 12 / 34
Complexity k-recolouring
The k-Recolouring problem
Instance Graph plus two k-colourings: (G , f , g).
Question Does f recolour to g?
k-Recolouring complexity
k = 2 k = 3 k ≥ 4Trivial P – Weighted cycles PSPACE-complete
Bonsma, Cereceda, van den Heuvel, Johnson
Is there 3-colouring? NP-complete
Given a 3-colouring f can all others be obtained by recolouring fromf ? coNP-complete restricted to bipartite graphs
Given two: Can g be obtained from f ? Polynomial
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 12 / 34
Complexity k-recolouring
The k-Recolouring problem
Instance Graph plus two k-colourings: (G , f , g).
Question Does f recolour to g?
k-Recolouring complexity
k = 2 k = 3 k ≥ 4Trivial P – Weighted cycles PSPACE-complete
Bonsma, Cereceda, van den Heuvel, Johnson
Is there 3-colouring? NP-complete
Given a 3-colouring f can all others be obtained by recolouring fromf ? coNP-complete restricted to bipartite graphs
Given two: Can g be obtained from f ? Polynomial
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 12 / 34
Circular cliques
Definition
Circular clique Gp,q has V = Zp; uv ∈ E iff q ≤ |u − v | ≤ p − q.
01
2
34
5
6
G7,1
01
2
34
5
6
G7,2
01
2
34
5
6
G7,3
Circular colouring
A (p, q)-colouring of G is an assignment of p-colours s.t. adjacentvertices in G receive adjacent colours in Gp,q.
χc(G ) = min{p/q : G → Gp,q}; χ(G ) = dχc(G )e
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 13 / 34
Circular cliques
Definition
Circular clique Gp,q has V = Zp; uv ∈ E iff q ≤ |u − v | ≤ p − q.
01
2
34
5
6
G7,1
01
2
34
5
6
G7,2
01
2
34
5
6
G7,3
Circular colouring
A (p, q)-colouring of G is an assignment of p-colours s.t. adjacentvertices in G receive adjacent colours in Gp,q.
χc(G ) = min{p/q : G → Gp,q}; χ(G ) = dχc(G )e
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 13 / 34
Computational complexity
(p, q)-Colouring (p, q fixed)
Instance: A graph G .
Question: Does G admit a (p, q)-colouring?
p/q < 2: trivial.
p/q = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
p/q > 2: NP-complete.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 14 / 34
Computational complexity
(p, q)-Colouring (p, q fixed)
Instance: A graph G .
Question: Does G admit a (p, q)-colouring?
p/q < 2: trivial.
p/q = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
p/q > 2: NP-complete.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 14 / 34
Computational complexity
(p, q)-Colouring (p, q fixed)
Instance: A graph G .
Question: Does G admit a (p, q)-colouring?
p/q < 2: trivial.
p/q = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
p/q > 2: NP-complete.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 14 / 34
Computational complexity
(p, q)-Colouring (p, q fixed)
Instance: A graph G .
Question: Does G admit a (p, q)-colouring?
p/q < 2: trivial.
p/q = 2: YES iff G has no odd cycles. (Theorem from Graph Theory101)
p/q > 2: NP-complete.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 14 / 34
Our starting point
Questions
Can we find dichotomy for (p, q)-Recolouring? Can we find hardcolouring problems that have tractable recolouring problems?
Recolouring complexity
k = 2 k = 3 k ≥ 4p/q = 2 2 < p/q < 4 p/q ≥ 4Trivial P – Weighted cycles PSPACE-complete
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 15 / 34
Our starting point
Questions
Can we find dichotomy for (p, q)-Recolouring? Can we find hardcolouring problems that have tractable recolouring problems?
Theorem (BMMN)
The (p, q)-recolouring problem is:
polynomial time solvable if p/q < 4; and
PSPACE-complete if p/q ≥ 4.
Recolouring complexity
k = 2 k = 3 k ≥ 4p/q = 2 2 < p/q < 4 p/q ≥ 4Trivial P – Weighted cycles PSPACE-complete
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 15 / 34
Our starting point
Questions
Can we find dichotomy for (p, q)-Recolouring? Can we find hardcolouring problems that have tractable recolouring problems?
Recolouring complexity
k = 2 k = 3 k ≥ 4p/q = 2 2 < p/q < 4 p/q ≥ 4Trivial P – Weighted cycles PSPACE-complete
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 15 / 34
Recolouring C5 when k = 3
0
1
0 1
2f0
0
0
1
2 1
2
2
f1
0
1
2 0
2
1 0
f2
Observation
Vertex recolourable if a colour missing from neighbourhood.
Initially v might be not be recolourable, but becomes recolourablewhen a vertex in its neighbourhood is recoloured.
Coded through directed edges.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 16 / 34
Recolouring C5 when k = 3
0
1
0 1
2f0
0
0
1
2 1
2
2
f1
0
1
2 0
2
1 0
f2
Observation
Vertex recolourable if a colour missing from neighbourhood.
Initially v might be not be recolourable, but becomes recolourablewhen a vertex in its neighbourhood is recoloured.
Coded through directed edges.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 16 / 34
Recolouring C5 when k = 3
0
1
0 1
2f0
0
0
1
2 1
2
2
f1
0
1
2 0
2
1 0
f2
Observation
Vertex recolourable if a colour missing from neighbourhood.
Initially v might be not be recolourable, but becomes recolourablewhen a vertex in its neighbourhood is recoloured.
Coded through directed edges.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 16 / 34
Recolouring C5 when k = 3
0
1
0 1
2f0
0
0
1
2 1
2
2
f1
0
1
2 0
2
1 0
f2
Observation
Vertex recolourable if a colour missing from neighbourhood.
Initially v might be not be recolourable, but becomes recolourablewhen a vertex in its neighbourhood is recoloured.
Coded through directed edges.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 16 / 34
Recolouring C5 when k = 3
0
1
0 1
2f0
0
0
1
2 1
2
2
f1
0
1
2 0
2
1 0
f2
Observation
Vertex recolourable if a colour missing from neighbourhood.
Initially v might be not be recolourable, but becomes recolourablewhen a vertex in its neighbourhood is recoloured.
Coded through directed edges.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 16 / 34
Recolouring C5 when k = 3
0
1
0 1
2f0
0
0
1
2 1
2
2
f1
0
1
2 0
2
1 0
f2
Observation
Vertex recolourable if a colour missing from neighbourhood.
Initially v might be not be recolourable, but becomes recolourablewhen a vertex in its neighbourhood is recoloured.
Coded through directed edges.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 16 / 34
Recolouring C5 when k = 3
0
1
0 1
2f0
0
0
1
2 1
2
2
f1
0
1
2 0
2
1 0
f2
Observation
Vertex recolourable if a colour missing from neighbourhood.
Initially v might be not be recolourable, but becomes recolourablewhen a vertex in its neighbourhood is recoloured.
Coded through directed edges.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 16 / 34
Recolouring C6 when k = 3
0
0
1
12
2
Observation
No vertex can be recoloured.
We call such vertices fixed.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 17 / 34
Recolouring C6 when k = 3
0
0
1
12
2
Observation
No vertex can be recoloured.
We call such vertices fixed.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 17 / 34
Recolouring C6 when k = 3
0
0
1
12
2
Observation
No vertex can be recoloured.
We call such vertices fixed.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 17 / 34
Recolouring C6 when k = 3
0
0
1
12
2
Observation
No vertex can be recoloured.
We call such vertices fixed.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 17 / 34
Recolouring C6 when k = 3
0
0
1
12
2
f
0
01
1
2
2
g
Observation
f does not recolour to g .
Necessary condition Ff = Fg . (fixed vertices)
To find fixed vertices in poly time, recursively delete sources and sinks(and isolates).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 18 / 34
Recolouring C6 when k = 3
0
0
1
12
2
f
0
01
1
2
2
g
Observation
f does not recolour to g .
Necessary condition Ff = Fg . (fixed vertices)
To find fixed vertices in poly time, recursively delete sources and sinks(and isolates).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 18 / 34
Recolouring C6 when k = 3
0
0
1
12
2
f
0
01
1
2
2
g
Observation
f does not recolour to g .
Necessary condition Ff = Fg . (fixed vertices)
To find fixed vertices in poly time, recursively delete sources and sinks(and isolates).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 18 / 34
Recolouring C6 when k = 3
0
0
1
12
2
f
0
01
1
2
2
g
Observation
f does not recolour to g .
Necessary condition Ff = Fg . (fixed vertices)
To find fixed vertices in poly time, recursively delete sources and sinks(and isolates).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 18 / 34
Finding fixed vertices when k = 3
0
0
1
12
20
1 2
0
1 21
2
0
2
1 0
Fixed vertices. Strongly connected components plus directed pathsbetween.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 19 / 34
Finding fixed vertices when k = 3
0
0
1
12
20
1 2
0
1 21
2
0
2
1 0
Fixed vertices. Strongly connected components plus directed pathsbetween.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 19 / 34
Finding fixed vertices when k = 3
0
0
1
12
20
1 2
0
1 21
2
0
2
1 0
Fixed vertices. Strongly connected components plus directed pathsbetween.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 19 / 34
Finding fixed vertices when k = 3
0
0
1
12
20
1 2
0
1 21
2
0
2
1
0
Fixed vertices. Strongly connected components plus directed pathsbetween.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 19 / 34
Finding fixed vertices when k = 3
0
0
1
12
20
1 2
0
1 21
2
0
2
1 0
Fixed vertices. Strongly connected components plus directed pathsbetween.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 19 / 34
(7, 2)-Recolouring
Suppose f (v) = 0 and v has neighbours coloured {3, 4, 5}.
Pictorially,
0
1
2
34
5
6
f (v)
0
34
5
6
34
5
6X
X
XX
X
1
34
5
The allowed colours for v are {0, 1}.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 20 / 34
(7, 2)-Recolouring
Suppose f (v) = 0 and v has neighbours coloured {3, 4, 5}.Pictorially,
0
1
2
34
5
6
f (v)
0
34
5
6
34
5
6X
X
XX
X
1
34
5
The allowed colours for v are {0, 1}.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 20 / 34
(7, 2)-Recolouring
Suppose f (v) = 0 and v has neighbours coloured {3, 4, 5}.Pictorially,
0
1
2
34
5
6
f (v)
0
34
5
6
34
5
6X
X
XX
X
1
34
5
The allowed colours for v are {0, 1}.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 20 / 34
(7, 2)-Recolouring
Suppose f (v) = 0 and v has neighbours coloured {3, 4, 5}.Pictorially,
0
1
2
34
5
6
f (v)
0
34
5
6
34
5
6X
X
XX
X
1
34
5
The allowed colours for v are {0, 1}.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 20 / 34
(7, 2)-Recolouring
Suppose f (v) = 0 and v has neighbours coloured {3, 4, 5}.Pictorially,
0
1
2
34
5
6
f (v)
0
34
5
6
34
5
6X
X
XX
X
1
34
5
The allowed colours for v are {0, 1}.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 20 / 34
(7, 2)-Recolouring
Suppose f (v) = 0 and v has neighbours coloured {3, 4, 5}.Pictorially,
0
1
2
34
5
6
f (v)
0
34
5
6
34
5
6X
X
XX
X
1
34
5
The allowed colours for v are {0, 1}.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 20 / 34
(7, 2)-Recolouring
Suppose f (v) = 0 and v has neighbours coloured {3, 4, 5}.Pictorially,
0
1
2
34
5
6
f (v)
0
34
5
6
34
5
6X
X
XX
X
1
34
5
The allowed colours for v are {0, 1}.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 20 / 34
Allowed colours for (p, q).
Allowed cols
When p/q < 4 the allowed colours form an interval.
v cannot be recolour iff neighbours with colours f (v)− q andf (v) + q.
We can find fixed vertices in polynomial time.I f is a (p, q)-colouringI Direct arc uv if f (v) = f (u) + q (nothing otherwise).I Recursively delete sources, sinks, and isolates.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 21 / 34
Allowed colours for (p, q).
Allowed cols
When p/q < 4 the allowed colours form an interval.
v cannot be recolour iff neighbours with colours f (v)− q andf (v) + q.
We can find fixed vertices in polynomial time.I f is a (p, q)-colouringI Direct arc uv if f (v) = f (u) + q (nothing otherwise).I Recursively delete sources, sinks, and isolates.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 21 / 34
Weighting cycles
0
0
1 1
2
f
(3− 2) + (3− 2)+
1 + 1 + (3− 1)
2 2
1
0
0
g
(3− 1) + (3− 1)+
2 + 2 + (3− 2)
2
2
1
1
1 1
1
2
2
2
Weighting
Assign wt(uv) = f (v)− f (u) mod q (wrt orientation).
wt(C , f ) = 6 and wt(C , g) = 9.
Recolouring does not change the weight.
f does not recolour to g .
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 22 / 34
Weighting cycles
0
0
1 1
2
f
(3− 2) + (3− 2)+
1 + 1 + (3− 1)
2 2
1
0
0
g
(3− 1) + (3− 1)+
2 + 2 + (3− 2)
2
2
1
1
1 1
1
2
2
2
Weighting
Assign wt(uv) = f (v)− f (u) mod q (wrt orientation).
wt(C , f ) = 6 and wt(C , g) = 9.
Recolouring does not change the weight.
f does not recolour to g .
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 22 / 34
Weighting cycles
0
0
1 1
2
f
(3− 2) + (3− 2)+
1 + 1 + (3− 1)
2 2
1
0
0
g
(3− 1) + (3− 1)+
2 + 2 + (3− 2)
2
2
1
1
1 1
1
2
2
2
Weighting
Assign wt(uv) = f (v)− f (u) mod q (wrt orientation).
wt(C , f ) = 6 and wt(C , g) = 9.
Recolouring does not change the weight.
f does not recolour to g .
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 22 / 34
A matroid view
Vertex colouring + orientation give group labelling of the edges:ϕ(evu) = f (u)− f (v). (Zp)
Reconfig step is to relabel a cut ∂(X ) by −α on ∂+(X ) and by +αon ∂−(X ).
Equivalent to changing the colour of all vertices in X by +α.
Two edge-labellings can be reconfig iff all cycles have the sameweight.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 23 / 34
A matroid view
Vertex colouring + orientation give group labelling of the edges:ϕ(evu) = f (u)− f (v). (Zp)
Reconfig step is to relabel a cut ∂(X ) by −α on ∂+(X ) and by +αon ∂−(X ).
Equivalent to changing the colour of all vertices in X by +α.
Two edge-labellings can be reconfig iff all cycles have the sameweight.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 23 / 34
A matroid view
Vertex colouring + orientation give group labelling of the edges:ϕ(evu) = f (u)− f (v). (Zp)
Reconfig step is to relabel a cut ∂(X ) by −α on ∂+(X ) and by +αon ∂−(X ).
Equivalent to changing the colour of all vertices in X by +α.
Two edge-labellings can be reconfig iff all cycles have the sameweight.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 23 / 34
A matroid view
Vertex colouring + orientation give group labelling of the edges:ϕ(evu) = f (u)− f (v). (Zp)
Reconfig step is to relabel a cut ∂(X ) by −α on ∂+(X ) and by +αon ∂−(X ).
Equivalent to changing the colour of all vertices in X by +α.
Two edge-labellings can be reconfig iff all cycles have the sameweight.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 23 / 34
Connecting vertex cols and edge labels
1-1 correspondence between (p, q)-colourings and Zp-edge-labellingswhere
I edges have weight q, q + 1, . . . , p − qI cycles have total weight 0 (mod p)
Recolouring a vertex is a special case of relabelling an edge cut.
Colour graph is a spanning subgraph of edge-labelling graph.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 24 / 34
Connecting vertex cols and edge labels
1-1 correspondence between (p, q)-colourings and Zp-edge-labellingswhere
I edges have weight q, q + 1, . . . , p − qI cycles have total weight 0 (mod p)
Recolouring a vertex is a special case of relabelling an edge cut.
Colour graph is a spanning subgraph of edge-labelling graph.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 24 / 34
Connecting vertex cols and edge labels
1-1 correspondence between (p, q)-colourings and Zp-edge-labellingswhere
I edges have weight q, q + 1, . . . , p − qI cycles have total weight 0 (mod p)
Recolouring a vertex is a special case of relabelling an edge cut.
Colour graph is a spanning subgraph of edge-labelling graph.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 24 / 34
The Algorithm
Recolouring algorithm
Input: (G , f , g)Output: Recolouring sequence or a no-certificate.
1 Construct edge-labellings of G : ϕf and ϕg .
2 Find fixed vertices. Verify Ff = Fg or answer NO with certificate.
3 Find ∂(X ) to relabel ϕf closer to ϕg or discover a cycle C withwt(C , ϕf ) 6= wt(C , ϕg ). Answer NO.
4 Realize edge relabel as a sequence of vertex recols.1 Is G [X ] directed cycle free? If yes, topologically sort and increase the
colour of each vertex by 1.2 Else if G [X ] is directed cycle free, use X .3 Else we have discovered a path wt(P, ϕf ) 6= wt(P, ϕg ). Answer NO.
5 Repeat 3-4 until ϕf = ϕg .
6 If there are no fixed vertices shift all vertices by 1 until f (v) = g(v)for some vertex v .
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 25 / 34
The characterization
Theorem
Let G be a graph and f , g be two (p, q)-colourings with p/q < 4. Then frecolours to g iff
1 Ff = Fg ,
2 For all cycles C , W (C , f ) = W (C , g), and
3 For all paths P whose end points are fixed, W (P, f ) = W (P, g).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 26 / 34
A beautiful application
Theorem (Wrochna)
If G has no cycle of length 0 mod 3, then G is 3-colourable.
Proof.
Let G be a minimal counter-example with edge uv . Then G − uv has a3-colouring f . Clearly f (u) = f (v).Let g(x) = f (x) + 1. Neither g nor f have fixed vertices. The weight ofall cycles and paths are equal. Therefore f recolours to g .At some point u is increased by 1 (before v is changed). Gives a3-colouring of G , a contraction.
First proved by: Chudnovsky, Plumettaz, Scott and Seymour.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 27 / 34
A beautiful application
Theorem (Wrochna)
If G has no cycle of length 0 mod 3, then G is 3-colourable.
Proof.
Let G be a minimal counter-example with edge uv . Then G − uv has a3-colouring f . Clearly f (u) = f (v).Let g(x) = f (x) + 1. Neither g nor f have fixed vertices. The weight ofall cycles and paths are equal. Therefore f recolours to g .At some point u is increased by 1 (before v is changed). Gives a3-colouring of G , a contraction.
First proved by: Chudnovsky, Plumettaz, Scott and Seymour.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 27 / 34
A beautiful application
Theorem (Wrochna)
If G has no cycle of length 0 mod 3, then G is 3-colourable.
Proof.
Let G be a minimal counter-example with edge uv . Then G − uv has a3-colouring f . Clearly f (u) = f (v).Let g(x) = f (x) + 1. Neither g nor f have fixed vertices. The weight ofall cycles and paths are equal. Therefore f recolours to g .At some point u is increased by 1 (before v is changed). Gives a3-colouring of G , a contraction.
First proved by: Chudnovsky, Plumettaz, Scott and Seymour.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 27 / 34
Monochromatic neighbourhood (Wrochna)
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 28 / 34
Monochromatic neighbourhood (Wrochna)
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 28 / 34
Monochromatic neighbourhood (Wrochna)
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 28 / 34
Concluding remarks on Algorithm
CHJ fixed vertices, weighted cycles and paths. k = 3.
BMMN extend ideas to (p, q)-colourings. p/q < 4.
Wrochna extends to H-colourings. Monochromatic neighbourhoodproperty.
Topology and homotopy the right idea, but in HOM(G ,H).
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 29 / 34
PSPACE-completeness
Theorem (Bonsma, Cereceda 2009)
For every k ≥ 4, the decision problem k-Colour Path is PSPACE-complete.Moreover, it remains PSPACE-complete for the following restrictedinstances:
1 bipartite graphs and any fixed k ≥ 4;
2 planar graphs and any fixed 4 ≤ k ≤ 6; and
3 bipartite planar graphs and k = 4.
Reduction is from a token sliding problem.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 30 / 34
PSPACE-completeness for (p, q)
Theorem (BMMN)
If p/q ≥ 4, then (p, q)-Recolouring is PSPACE-complete.
Proof.
By example with (9, 2).
(G , f , g) instance of 4-Recolouring.
(G ′, f ′, g ′), instance of (9, 2)-Recolouring, is constructed by putting a(0, 2)-forbidding path on each edge uv .
Confirm recolouring G if and only if recolouring G ′.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 31 / 34
(0, 2)-forbidding paths
01
2
3
45
6
7
8
G9,2
G is instance of 4-Recolouring.
For each uv in G add u − {8, 0, 1, 2, 3} − {2, 3, 4, 5} − {4, 5, 6, 7} −{6, 7, 8, 0} − {8, 0, 1, 2, 3} − v to form G ′ instance of(9, 2)-Recolouring.
If u receives colour 0, then v cannot receive colour 2.
Each 02-free (9, 2) colouring yields a 4-colouring and vice versa.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 32 / 34
Other hardness results
3-mixing is coNP-complete for bipartite graphs. Certificate is afolding of G down to C6. Similar partial results for p/q < 4.
Quesiton: k-mixing is PSPACE-complete for k ≥ 4?
Indicator construction std tool in homomorphism reductions. Proofthat reconfig homs to odd wheels is PSPACE-complete.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 33 / 34
Other hardness results
3-mixing is coNP-complete for bipartite graphs. Certificate is afolding of G down to C6. Similar partial results for p/q < 4.
Quesiton: k-mixing is PSPACE-complete for k ≥ 4?
Indicator construction std tool in homomorphism reductions. Proofthat reconfig homs to odd wheels is PSPACE-complete.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 33 / 34
Other hardness results
3-mixing is coNP-complete for bipartite graphs. Certificate is afolding of G down to C6. Similar partial results for p/q < 4.
Quesiton: k-mixing is PSPACE-complete for k ≥ 4?
Indicator construction std tool in homomorphism reductions. Proofthat reconfig homs to odd wheels is PSPACE-complete.
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 33 / 34
Thank you!
Rick Brewster, Ben Moore, Sean McGuinness, Jon NoelThe complexity of circular recolourings Aug 9, 2015 34 / 34