Bad News on Combinatorial Lower Bounds for the Extension - - PowerPoint PPT Presentation

bad news
SMART_READER_LITE
LIVE PREVIEW

Bad News on Combinatorial Lower Bounds for the Extension - - PowerPoint PPT Presentation

Bad News on Combinatorial Lower Bounds for the Extension Complexity of the Spanning Tree Polytope Kaveh Khoshkhah Dirk Oliver Theis Aussois Combinatorial Optimization Workshop Jan 9-13, 2017 Outline Extended Formulations for Spanning


slide-1
SLIDE 1

Bad News

  • n

Combinatorial Lower Bounds

for the

Extension Complexity

  • f the

Spanning Tree Polytope

Kaveh Khoshkhah Dirk Oliver Theis

Aussois Combinatorial Optimization Workshop Jan 9-13, 2017

slide-2
SLIDE 2

Outline

Extended Formulations for Spanning Tree: Status Quo Lower Bounds for Extension Complexity 101 What We Did Glimpse At the Details

slide-3
SLIDE 3

Extended Formulations

LP formulations for Minimum Spanning Tree (complete graph) “Classical” formulation: min

x

  • e cexe

subject to

  • e xe = n − 1
  • e⊂S

xe ≤ |S| − 1 ∀S [n], |S| > 1 xe ≥ 0 ∀e ∈ [n]

2

  • .

Size: # ieqs = Θ(2n) Martin’s “extended” formulation: min

x,z

  • e cexe

subject to . . . Size: # ieqs = Θ(n3) [n] := {1, . . . , n}

slide-4
SLIDE 4

Extension Complexity

Definition

slide-5
SLIDE 5

Extension Complexity

Definition

◮ Let P be a polytope.

slide-6
SLIDE 6

Extension Complexity

Definition

◮ Let P be a polytope. ◮ “Extension” of P: Polytope Q w/ proj. mapping π: Q ։ P (onto)

slide-7
SLIDE 7

Extension Complexity

Definition

◮ Let P be a polytope. ◮ “Extension” of P: Polytope Q w/ proj. mapping π: Q ։ P (onto)

✑ Linear Programming over P reduces to Linear Programming over Q

slide-8
SLIDE 8

Extension Complexity

Definition

◮ Let P be a polytope. ◮ “Extension” of P: Polytope Q w/ proj. mapping π: Q ։ P (onto)

✑ Linear Programming over P reduces to Linear Programming over Q

◮ “Size” of extension: number of facets

slide-9
SLIDE 9

Extension Complexity

Definition

◮ Let P be a polytope. ◮ “Extension” of P: Polytope Q w/ proj. mapping π: Q ։ P (onto)

✑ Linear Programming over P reduces to Linear Programming over Q

◮ “Size” of extension: number of facets ◮ “Extension Complexity” of P: Smallest size of an extension of P

slide-10
SLIDE 10

Extension Complexity

Definition

◮ Let P be a polytope. ◮ “Extension” of P: Polytope Q w/ proj. mapping π: Q ։ P (onto)

✑ Linear Programming over P reduces to Linear Programming over Q

◮ “Size” of extension: number of facets ◮ “Extension Complexity” of P: Smallest size of an extension of P

Theorem (Martin ’91)

Extension complexity of Spanning Tree polytope on complete graph w/ n nodes O(n3)

slide-11
SLIDE 11

Extension Complexity

Definition

◮ Let P be a polytope. ◮ “Extension” of P: Polytope Q w/ proj. mapping π: Q ։ P (onto)

✑ Linear Programming over P reduces to Linear Programming over Q

◮ “Size” of extension: number of facets ◮ “Extension Complexity” of P: Smallest size of an extension of P

Theorem (Martin ’91)

Extension complexity of Spanning Tree polytope on complete graph w/ n nodes O(n3)

Theorem (Trivial Lower Bound)

Extension complexity of P is at least dimension of P.

slide-12
SLIDE 12

Extension Complexity

Definition

◮ Let P be a polytope. ◮ “Extension” of P: Polytope Q w/ proj. mapping π: Q ։ P (onto)

✑ Linear Programming over P reduces to Linear Programming over Q

◮ “Size” of extension: number of facets ◮ “Extension Complexity” of P: Smallest size of an extension of P

Theorem (Martin ’91)

Extension complexity of Spanning Tree polytope on complete graph w/ n nodes O(n3)

Theorem (Trivial Lower Bound)

Extension complexity of P is at least dimension of P.

Corollary

Extension complexity of Spanning Tree polytope on complete graph w/ n nodes Ω(n2)

slide-13
SLIDE 13

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

slide-14
SLIDE 14

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017

slide-15
SLIDE 15

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

slide-16
SLIDE 16

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

slide-17
SLIDE 17

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-18
SLIDE 18

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-19
SLIDE 19

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-20
SLIDE 20

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-21
SLIDE 21

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-22
SLIDE 22

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-23
SLIDE 23

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-24
SLIDE 24

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-25
SLIDE 25

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-26
SLIDE 26

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-27
SLIDE 27

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-28
SLIDE 28

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-29
SLIDE 29

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-30
SLIDE 30

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-31
SLIDE 31

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-32
SLIDE 32

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-33
SLIDE 33

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-34
SLIDE 34

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-35
SLIDE 35

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-36
SLIDE 36

Extension Complexity of Spanning Tree Polytope

Ω(n2) = extension complexity(spanning treen) = O(n3)

Progress on Upper Bounds

Only for special graphs (not complete!), e.g.,

◮ Fiorini-Huynh-Pashkovich-Joret 2017 ◮ Kolman-Kouteck´

y-Tiwary 2016

◮ Williams 2002

Progress on Lower Bounds

slide-37
SLIDE 37

Long-Term Goals:

slide-38
SLIDE 38

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

slide-39
SLIDE 39

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

slide-40
SLIDE 40

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

◮ Improving lower bound to anything ≫ n2 would be a breakthrough,

slide-41
SLIDE 41

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

◮ Improving lower bound to anything ≫ n2 would be a breakthrough,

◮ e.g., n2 · log log(n).

slide-42
SLIDE 42

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

◮ Improving lower bound to anything ≫ n2 would be a breakthrough,

◮ e.g., n2 · log log(n).

This Talk’s Results:

slide-43
SLIDE 43

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

◮ Improving lower bound to anything ≫ n2 would be a breakthrough,

◮ e.g., n2 · log log(n).

This Talk’s Results:

◮ Negative results for the lower bounds

slide-44
SLIDE 44

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

◮ Improving lower bound to anything ≫ n2 would be a breakthrough,

◮ e.g., n2 · log log(n).

This Talk’s Results:

◮ Negative results for the lower bounds ◮ The convenient “combinatorial” lower bounds give:

slide-45
SLIDE 45

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

◮ Improving lower bound to anything ≫ n2 would be a breakthrough,

◮ e.g., n2 · log log(n).

This Talk’s Results:

◮ Negative results for the lower bounds ◮ The convenient “combinatorial” lower bounds give:

◮ “Fooling set” bound: O(n2)

slide-46
SLIDE 46

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

◮ Improving lower bound to anything ≫ n2 would be a breakthrough,

◮ e.g., n2 · log log(n).

This Talk’s Results:

◮ Negative results for the lower bounds ◮ The convenient “combinatorial” lower bounds give:

◮ “Fooling set” bound: O(n2) ◮ “Nondeterministic communication complexity” bound: O(n2 log n)

slide-47
SLIDE 47

Long-Term Goals:

◮ Improving upper bound to anything ≪ n3 would be a breakthrough,

◮ e.g., extended formulation of size n3/ log log(n);

◮ Improving lower bound to anything ≫ n2 would be a breakthrough,

◮ e.g., n2 · log log(n).

This Talk’s Results:

◮ Negative results for the lower bounds ◮ The convenient “combinatorial” lower bounds give:

◮ “Fooling set” bound: O(n2) ◮ “Nondeterministic communication complexity” bound: O(n2 log n)

◮ “Double negative” results: upper bounds on lower bounds.

slide-48
SLIDE 48

Outline

Extended Formulations for Spanning Tree: Status Quo Lower Bounds for Extension Complexity 101 What We Did Glimpse At the Details

slide-49
SLIDE 49

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity Successful for

slide-50
SLIDE 50

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity

◮ “Combinatorial” means: consider vertex-facet incidences only.

Successful for

slide-51
SLIDE 51

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity

◮ “Combinatorial” means: consider vertex-facet incidences only.

◮ As opposed to: consider distance of vertex from facet hyperplane

(non-combinatorial).

Successful for

slide-52
SLIDE 52

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity

◮ “Combinatorial” means: consider vertex-facet incidences only.

◮ As opposed to: consider distance of vertex from facet hyperplane

(non-combinatorial).

◮ Nondeterministic communication complexity bound is the strongest

combinatorial bound. Successful for

slide-53
SLIDE 53

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity

◮ “Combinatorial” means: consider vertex-facet incidences only.

◮ As opposed to: consider distance of vertex from facet hyperplane

(non-combinatorial).

◮ Nondeterministic communication complexity bound is the strongest

combinatorial bound.

◮ “Nondet. Comm. Complexity bound” = 2nondet. comm. complexity

Successful for

slide-54
SLIDE 54

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity

◮ “Combinatorial” means: consider vertex-facet incidences only.

◮ As opposed to: consider distance of vertex from facet hyperplane

(non-combinatorial).

◮ Nondeterministic communication complexity bound is the strongest

combinatorial bound.

◮ “Nondet. Comm. Complexity bound” = 2nondet. comm. complexity

Successful for

◮ TSP

slide-55
SLIDE 55

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity

◮ “Combinatorial” means: consider vertex-facet incidences only.

◮ As opposed to: consider distance of vertex from facet hyperplane

(non-combinatorial).

◮ Nondeterministic communication complexity bound is the strongest

combinatorial bound.

◮ “Nondet. Comm. Complexity bound” = 2nondet. comm. complexity

Successful for

◮ TSP ◮ Max-Cut

slide-56
SLIDE 56

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity

◮ “Combinatorial” means: consider vertex-facet incidences only.

◮ As opposed to: consider distance of vertex from facet hyperplane

(non-combinatorial).

◮ Nondeterministic communication complexity bound is the strongest

combinatorial bound.

◮ “Nondet. Comm. Complexity bound” = 2nondet. comm. complexity

Successful for

◮ TSP ◮ Max-Cut ◮ Bipartite Matching

slide-57
SLIDE 57

Combinatorial Lower Bounds

Some Combinatorial Bounds

fooling set bound ≤ fractional rectangle covering bound ≤ 2nondeterministic communication complexity ≤ extension complexity

◮ “Combinatorial” means: consider vertex-facet incidences only.

◮ As opposed to: consider distance of vertex from facet hyperplane

(non-combinatorial).

◮ Nondeterministic communication complexity bound is the strongest

combinatorial bound.

◮ “Nondet. Comm. Complexity bound” = 2nondet. comm. complexity

Successful for

◮ TSP ◮ Max-Cut ◮ Bipartite Matching ◮ . . .

slide-58
SLIDE 58

Nondeterministic Communication Protocols

“Nondeterministic”: No false positive outputs; If f (S, T) = true, ∃ certificate s.t. output is true

slide-59
SLIDE 59

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

slide-60
SLIDE 60

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

Link to Extensions of Polytopes

Fix polytope P

slide-61
SLIDE 61

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

Link to Extensions of Polytopes

Fix polytope P

◮ Alice gets a facet S

slide-62
SLIDE 62

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

Link to Extensions of Polytopes

Fix polytope P

◮ Alice gets a facet S ◮ Bob gets a vertex T

slide-63
SLIDE 63

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

Link to Extensions of Polytopes

Fix polytope P

◮ Alice gets a facet S ◮ Bob gets a vertex T ◮ f (S, T) =

  • true,

if vertex is off facet; false, if vertex on facet.

slide-64
SLIDE 64

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

Link to Extensions of Polytopes

Fix polytope P

◮ Alice gets a facet S ◮ Bob gets a vertex T ◮ f (S, T) =

  • true,

if vertex is off facet; false, if vertex on facet.

◮ 2ndCC(f ) ≤ extension complexity of P

slide-65
SLIDE 65

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

Link to Extensions of Polytopes

Fix polytope P

◮ Alice gets a facet S ◮ Bob gets a vertex T ◮ f (S, T) =

  • true,

if vertex is off facet; false, if vertex on facet.

◮ 2ndCC(f ) ≤ extension complexity of P

Careful!

slide-66
SLIDE 66

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

Link to Extensions of Polytopes

Fix polytope P

◮ Alice gets a facet S ◮ Bob gets a vertex T ◮ f (S, T) =

  • true,

if vertex is off facet; false, if vertex on facet.

◮ 2ndCC(f ) ≤ extension complexity of P

Careful!

◮ “Nondeterministic Communication Complexity”: # bits (in best

protocol)

slide-67
SLIDE 67

◮ “Nondeterministic Communication Complexity” of f : Cost of best

protocol

Link to Extensions of Polytopes

Fix polytope P

◮ Alice gets a facet S ◮ Bob gets a vertex T ◮ f (S, T) =

  • true,

if vertex is off facet; false, if vertex on facet.

◮ 2ndCC(f ) ≤ extension complexity of P

Careful!

◮ “Nondeterministic Communication Complexity”: # bits (in best

protocol)

◮ “Nondeterministic Communication Complexity bound” =

  • 2nondet. comm. complexity
slide-68
SLIDE 68

Back to Spanning Tree:

slide-69
SLIDE 69

Back to Spanning Tree:

Polytope:

slide-70
SLIDE 70

Back to Spanning Tree:

Polytope:

◮ P := spanning tree polytope

slide-71
SLIDE 71

Back to Spanning Tree:

Polytope:

◮ P := spanning tree polytope ◮ Vertices ˆ

= trees

slide-72
SLIDE 72

Back to Spanning Tree:

Polytope:

◮ P := spanning tree polytope ◮ Vertices ˆ

= trees

◮ Facets:

  • e⊂S

xe ≤ |S| − 1 ∀S [n], |S| > 1

slide-73
SLIDE 73

Back to Spanning Tree:

Polytope:

◮ P := spanning tree polytope ◮ Vertices ˆ

= trees

◮ Facets:

  • e⊂S

xe ≤ |S| − 1 ∀S [n], |S| > 1

◮ Ignore x ≥ 0 inequalities.

slide-74
SLIDE 74

Back to Spanning Tree:

Polytope:

◮ P := spanning tree polytope ◮ Vertices ˆ

= trees

◮ Facets:

  • e⊂S

xe ≤ |S| − 1 ∀S [n], |S| > 1

◮ Ignore x ≥ 0 inequalities.

Communication complexity part

slide-75
SLIDE 75

Back to Spanning Tree:

Polytope:

◮ P := spanning tree polytope ◮ Vertices ˆ

= trees

◮ Facets:

  • e⊂S

xe ≤ |S| − 1 ∀S [n], |S| > 1

◮ Ignore x ≥ 0 inequalities.

Communication complexity part

◮ Alice gets set S (facet)

slide-76
SLIDE 76

Back to Spanning Tree:

Polytope:

◮ P := spanning tree polytope ◮ Vertices ˆ

= trees

◮ Facets:

  • e⊂S

xe ≤ |S| − 1 ∀S [n], |S| > 1

◮ Ignore x ≥ 0 inequalities.

Communication complexity part

◮ Alice gets set S (facet) ◮ Bob gets a tree T (vertex)

slide-77
SLIDE 77

Back to Spanning Tree:

Polytope:

◮ P := spanning tree polytope ◮ Vertices ˆ

= trees

◮ Facets:

  • e⊂S

xe ≤ |S| − 1 ∀S [n], |S| > 1

◮ Ignore x ≥ 0 inequalities.

Communication complexity part

◮ Alice gets set S (facet) ◮ Bob gets a tree T (vertex) ◮ f (S, T) =

  • true,

if S disconnected in T; false, if S connected in T.

slide-78
SLIDE 78

Outline

Extended Formulations for Spanning Tree: Status Quo Lower Bounds for Extension Complexity 101 What We Did Glimpse At the Details

slide-79
SLIDE 79

Our Results

Theorem

Fooling set bound = O(n2) ✑

slide-80
SLIDE 80

Our Results

Theorem

Fooling set bound = O(n2) ✑ arXiv:1701.00350

slide-81
SLIDE 81

Our Results

Theorem

Fooling set bound = O(n2) ✑ arXiv:1701.00350

Theorem

  • Nondet. communication complexity bound = O(n2 log n)
slide-82
SLIDE 82

Our Results

Theorem

Fooling set bound = O(n2) ✑ arXiv:1701.00350

Theorem

  • Nondet. communication complexity bound = O(n2 log n)

Previously best bounds:

slide-83
SLIDE 83

Our Results

Theorem

Fooling set bound = O(n2) ✑ arXiv:1701.00350

Theorem

  • Nondet. communication complexity bound = O(n2 log n)

Previously best bounds:

◮ O(n8/3 log n) for fractional rectangle covering bound (Weltge ’15)

slide-84
SLIDE 84

Our Results

Theorem

Fooling set bound = O(n2) ✑ arXiv:1701.00350

Theorem

  • Nondet. communication complexity bound = O(n2 log n)

Previously best bounds:

◮ O(n8/3 log n) for fractional rectangle covering bound (Weltge ’15) ◮ O(n3) for nondet. communication complexity bound (trivial)

slide-85
SLIDE 85

How to prove an upper bound for Nondet. CC

slide-86
SLIDE 86

How to prove an upper bound for Nondet. CC

◮ Alice has set S

slide-87
SLIDE 87

How to prove an upper bound for Nondet. CC

◮ Alice has set S ◮ Bob has tree T

slide-88
SLIDE 88

How to prove an upper bound for Nondet. CC

◮ Alice has set S ◮ Bob has tree T ◮ f (S, T) = whether S is disconnected in T

slide-89
SLIDE 89

How to prove an upper bound for Nondet. CC

◮ Alice has set S ◮ Bob has tree T ◮ f (S, T) = whether S is disconnected in T ◮ Need: Protocol with short certificates

slide-90
SLIDE 90

◮ Alice has a set S,

slide-91
SLIDE 91

◮ Alice has a set S, ◮ Bob has a tree T,

slide-92
SLIDE 92

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

slide-93
SLIDE 93

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

slide-94
SLIDE 94

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3

slide-95
SLIDE 95

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3 ◮ Alice:

slide-96
SLIDE 96

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3 ◮ Alice:

◮ Check “a, b ∈ S, x /

∈ S”?

slide-97
SLIDE 97

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3 ◮ Alice:

◮ Check “a, b ∈ S, x /

∈ S”?

◮ Output answer

slide-98
SLIDE 98

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3 ◮ Alice:

◮ Check “a, b ∈ S, x /

∈ S”?

◮ Output answer

◮ Bob:

slide-99
SLIDE 99

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3 ◮ Alice:

◮ Check “a, b ∈ S, x /

∈ S”?

◮ Output answer

◮ Bob:

◮ Check “a ⌢ x ⌢ b in T?”

(i.e., x on path in T between a and b)

slide-100
SLIDE 100

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3 ◮ Alice:

◮ Check “a, b ∈ S, x /

∈ S”?

◮ Output answer

◮ Bob:

◮ Check “a ⌢ x ⌢ b in T?”

(i.e., x on path in T between a and b)

◮ Output answer

slide-101
SLIDE 101

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3 ◮ Alice:

◮ Check “a, b ∈ S, x /

∈ S”?

◮ Output answer

◮ Bob:

◮ Check “a ⌢ x ⌢ b in T?”

(i.e., x on path in T between a and b)

◮ Output answer

◮ That works!

slide-102
SLIDE 102

◮ Alice has a set S, ◮ Bob has a tree T, ◮ They want to decide if S is disconnected in T.

The “obvious” certificate

Protocol:

◮ Prover sends ( a, b , x ) ∈ [n]3 ◮ Alice:

◮ Check “a, b ∈ S, x /

∈ S”?

◮ Output answer

◮ Bob:

◮ Check “a ⌢ x ⌢ b in T?”

(i.e., x on path in T between a and b)

◮ Output answer

◮ That works! ◮ Communictation: log2(n3) bits O(n3) upper bound

slide-103
SLIDE 103

Our Approach

Protocol/Proof Ingredients

slide-104
SLIDE 104

Our Approach

Protocol/Proof Ingredients

◮ Basic idea: “compress” (a, b, x). Maybe send some kind of a hash

key?

slide-105
SLIDE 105

Our Approach

Protocol/Proof Ingredients

◮ Basic idea: “compress” (a, b, x). Maybe send some kind of a hash

key?

◮ There are many possible choices for (a, b, x)

slide-106
SLIDE 106

Our Approach

Protocol/Proof Ingredients

◮ Basic idea: “compress” (a, b, x). Maybe send some kind of a hash

key?

◮ There are many possible choices for (a, b, x) ◮ Maybe, if chosen smartly, . . .

slide-107
SLIDE 107

Our Approach

Protocol/Proof Ingredients

◮ Basic idea: “compress” (a, b, x). Maybe send some kind of a hash

key?

◮ There are many possible choices for (a, b, x) ◮ Maybe, if chosen smartly, . . . ◮ What works is this: Prover sends

slide-108
SLIDE 108

Our Approach

Protocol/Proof Ingredients

◮ Basic idea: “compress” (a, b, x). Maybe send some kind of a hash

key?

◮ There are many possible choices for (a, b, x) ◮ Maybe, if chosen smartly, . . . ◮ What works is this: Prover sends

◮ a

slide-109
SLIDE 109

Our Approach

Protocol/Proof Ingredients

◮ Basic idea: “compress” (a, b, x). Maybe send some kind of a hash

key?

◮ There are many possible choices for (a, b, x) ◮ Maybe, if chosen smartly, . . . ◮ What works is this: Prover sends

◮ a ◮ b

slide-110
SLIDE 110

Our Approach

Protocol/Proof Ingredients

◮ Basic idea: “compress” (a, b, x). Maybe send some kind of a hash

key?

◮ There are many possible choices for (a, b, x) ◮ Maybe, if chosen smartly, . . . ◮ What works is this: Prover sends

◮ a ◮ b ◮ h(a, b, x)

slide-111
SLIDE 111

Our Approach

Protocol/Proof Ingredients

◮ Basic idea: “compress” (a, b, x). Maybe send some kind of a hash

key?

◮ There are many possible choices for (a, b, x) ◮ Maybe, if chosen smartly, . . . ◮ What works is this: Prover sends

◮ a ◮ b ◮ h(a, b, x)

◮ h: [n]3 → [ℓ] with ℓ = log n + O(1).

slide-112
SLIDE 112

Outline

Extended Formulations for Spanning Tree: Status Quo Lower Bounds for Extension Complexity 101 What We Did Glimpse At the Details

slide-113
SLIDE 113

A Glimpse at the Details (1)

◮ Let’s say (a, b, x) w/ a, b ∈ S, x /

∈ S, a ⌢ x ⌢ b in T is a “witness” for “f (S, T) = true”.

slide-114
SLIDE 114

A Glimpse at the Details (1)

◮ Let’s say (a, b, x) w/ a, b ∈ S, x /

∈ S, a ⌢ x ⌢ b in T is a “witness” for “f (S, T) = true”.

Triangle Lemma (arXiv:1701.00350)

Let c ∈ S. If (a, b, x) is a witness, then so is at least one of (a, c, x), (c, b, x).

slide-115
SLIDE 115

A Glimpse at the Details (2)

Protocol:

If f (S, T) = true, prover sends

slide-116
SLIDE 116

A Glimpse at the Details (2)

Protocol:

If f (S, T) = true, prover sends

◮ (a, b)

slide-117
SLIDE 117

A Glimpse at the Details (2)

Protocol:

If f (S, T) = true, prover sends

◮ (a, b) ◮ distance of x from {a, b}

slide-118
SLIDE 118

A Glimpse at the Details (2)

Protocol:

If f (S, T) = true, prover sends

◮ (a, b) ◮ distance of x from {a, b} ◮ 1 bit: clockwise or counter-clockwise?

slide-119
SLIDE 119

A Glimpse at the Details (2)

Protocol:

If f (S, T) = true, prover sends

◮ (a, b) ◮ distance of x from {a, b} ◮ 1 bit: clockwise or counter-clockwise? ◮ 1 bit: distance from a or b (which one is closer)?

slide-120
SLIDE 120

A Glimpse at the Details (2)

Protocol:

If f (S, T) = true, prover sends

◮ (a, b) ◮ distance of x from {a, b} ◮ 1 bit: clockwise or counter-clockwise? ◮ 1 bit: distance from a or b (which one is closer)? ◮ (couple of bits for special cases)

slide-121
SLIDE 121

A Glimpse at the Details (2)

Protocol:

If f (S, T) = true, prover sends

◮ (a, b) ◮ ⌊log2( distance of x from {a, b} )⌋ ◮ 1 bit: clockwise or counter-clockwise? ◮ 1 bit: distance from a or b (which one is closer)? ◮ (couple of bits for special cases)

slide-122
SLIDE 122

A Glimpse at the Details (3)

Prover sends (a, b, j = log(dist), . . . ).

Alice

slide-123
SLIDE 123

A Glimpse at the Details (3)

Prover sends (a, b, j = log(dist), . . . ).

Alice

◮ Can identify region R := {a − 2j, . . . , a − 2j+1 − 1} on circle

slide-124
SLIDE 124

A Glimpse at the Details (3)

Prover sends (a, b, j = log(dist), . . . ).

Alice

◮ Can identify region R := {a − 2j, . . . , a − 2j+1 − 1} on circle ◮ Knows that x ∈ R — but doesn’t know x

slide-125
SLIDE 125

A Glimpse at the Details (3)

Prover sends (a, b, j = log(dist), . . . ).

Alice

◮ Can identify region R := {a − 2j, . . . , a − 2j+1 − 1} on circle ◮ Knows that x ∈ R — but doesn’t know x ◮ Accepts if ∀x ∈ R: x /

∈ S

slide-126
SLIDE 126

A Glimpse at the Details (3)

Prover sends (a, b, j = log(dist), . . . ).

Alice

◮ Can identify region R := {a − 2j, . . . , a − 2j+1 − 1} on circle ◮ Knows that x ∈ R — but doesn’t know x ◮ Accepts if ∀x ∈ R: x /

∈ S

Bob

slide-127
SLIDE 127

A Glimpse at the Details (3)

Prover sends (a, b, j = log(dist), . . . ).

Alice

◮ Can identify region R := {a − 2j, . . . , a − 2j+1 − 1} on circle ◮ Knows that x ∈ R — but doesn’t know x ◮ Accepts if ∀x ∈ R: x /

∈ S

Bob

◮ Can identify region R = {2j, . . . , 2j+1 − 1} on circle

slide-128
SLIDE 128

A Glimpse at the Details (3)

Prover sends (a, b, j = log(dist), . . . ).

Alice

◮ Can identify region R := {a − 2j, . . . , a − 2j+1 − 1} on circle ◮ Knows that x ∈ R — but doesn’t know x ◮ Accepts if ∀x ∈ R: x /

∈ S

Bob

◮ Can identify region R = {2j, . . . , 2j+1 − 1} on circle ◮ Knows that x ∈ R — but doesn’t know x

slide-129
SLIDE 129

A Glimpse at the Details (3)

Prover sends (a, b, j = log(dist), . . . ).

Alice

◮ Can identify region R := {a − 2j, . . . , a − 2j+1 − 1} on circle ◮ Knows that x ∈ R — but doesn’t know x ◮ Accepts if ∀x ∈ R: x /

∈ S

Bob

◮ Can identify region R = {2j, . . . , 2j+1 − 1} on circle ◮ Knows that x ∈ R — but doesn’t know x ◮ Accepts if ∃x ∈ R: a ⌢ x ⌢ b in T

slide-130
SLIDE 130

A Glimpse at the Details (4)

Lemma 1

If f (S, T) = true, Alice and Bob accept.

slide-131
SLIDE 131

A Glimpse at the Details (4)

Lemma 1

If f (S, T) = true, Alice and Bob accept.

Proof.

slide-132
SLIDE 132

A Glimpse at the Details (4)

Lemma 1

If f (S, T) = true, Alice and Bob accept.

Proof.

◮ Bob: √

slide-133
SLIDE 133

A Glimpse at the Details (4)

Lemma 1

If f (S, T) = true, Alice and Bob accept.

Proof.

◮ Bob: √ ◮ Alice: remember: accepts if ∀x ∈ R: x /

∈ S

slide-134
SLIDE 134

A Glimpse at the Details (4)

Lemma 1

If f (S, T) = true, Alice and Bob accept.

Proof.

◮ Bob: √ ◮ Alice: remember: accepts if ∀x ∈ R: x /

∈ S

◮ Why ∀? Why not ∃?

slide-135
SLIDE 135

A Glimpse at the Details (4)

Lemma 1

If f (S, T) = true, Alice and Bob accept.

Proof.

◮ Bob: √ ◮ Alice: remember: accepts if ∀x ∈ R: x /

∈ S

◮ Why ∀? Why not ∃? ◮ Triangle Lemma: If c ∈ R ∩ S, then one of (a, c, x), (c, b, x) is

witness for f (S, T) = true.

slide-136
SLIDE 136

A Glimpse at the Details (4)

Lemma 1

If f (S, T) = true, Alice and Bob accept.

Proof.

◮ Bob: √ ◮ Alice: remember: accepts if ∀x ∈ R: x /

∈ S

◮ Why ∀? Why not ∃? ◮ Triangle Lemma: If c ∈ R ∩ S, then one of (a, c, x), (c, b, x) is

witness for f (S, T) = true.

◮ Smart choice of witness that prover sends:

Prover sends (a, b, x) w/ d(a, x) + d(x, b) minimal.

slide-137
SLIDE 137

A Glimpse at the Details (4)

Lemma 1

If f (S, T) = true, Alice and Bob accept.

Proof.

◮ Bob: √ ◮ Alice: remember: accepts if ∀x ∈ R: x /

∈ S

◮ Why ∀? Why not ∃? ◮ Triangle Lemma: If c ∈ R ∩ S, then one of (a, c, x), (c, b, x) is

witness for f (S, T) = true.

◮ Smart choice of witness that prover sends:

Prover sends (a, b, x) w/ d(a, x) + d(x, b) minimal.

◮ Such a c would contradict minimality.

slide-138
SLIDE 138

A Glimpse at the Details (5)

Lemma 2

If f (S, T) = false, Alice rejects or Bob rejects.

slide-139
SLIDE 139

A Glimpse at the Details (5)

Lemma 2

If f (S, T) = false, Alice rejects or Bob rejects.

Proof.

Counterpositive:

slide-140
SLIDE 140

A Glimpse at the Details (5)

Lemma 2

If f (S, T) = false, Alice rejects or Bob rejects.

Proof.

Counterpositive:

◮ Suppose both Alice and Bob accept.

slide-141
SLIDE 141

A Glimpse at the Details (5)

Lemma 2

If f (S, T) = false, Alice rejects or Bob rejects.

Proof.

Counterpositive:

◮ Suppose both Alice and Bob accept. ◮ Alice: ∀x ∈ R: x /

∈ S.

slide-142
SLIDE 142

A Glimpse at the Details (5)

Lemma 2

If f (S, T) = false, Alice rejects or Bob rejects.

Proof.

Counterpositive:

◮ Suppose both Alice and Bob accept. ◮ Alice: ∀x ∈ R: x /

∈ S.

◮ Bob: ∃x ∈ R: a ⌢ x ⌢ b in T.

slide-143
SLIDE 143

A Glimpse at the Details (5)

Lemma 2

If f (S, T) = false, Alice rejects or Bob rejects.

Proof.

Counterpositive:

◮ Suppose both Alice and Bob accept. ◮ Alice: ∀x ∈ R: x /

∈ S.

◮ Bob: ∃x ∈ R: a ⌢ x ⌢ b in T. ◮ S disconnected in T.

slide-144
SLIDE 144

A Glimpse at the Details (5)

Lemma 2

If f (S, T) = false, Alice rejects or Bob rejects.

Proof.

Counterpositive:

◮ Suppose both Alice and Bob accept. ◮ Alice: ∀x ∈ R: x /

∈ S.

◮ Bob: ∃x ∈ R: a ⌢ x ⌢ b in T. ◮ S disconnected in T. ◮ f (S, T) = true.

slide-145
SLIDE 145

Conclusion

◮ Nondet. CC lower bound for Spanning Tree extension complexity is

(almost) useless

slide-146
SLIDE 146

Conclusion

◮ Nondet. CC lower bound for Spanning Tree extension complexity is

(almost) useless

◮ Ω(n2) Ω(n2 log n) improvement is still a possibility

slide-147
SLIDE 147

Conclusion

◮ Nondet. CC lower bound for Spanning Tree extension complexity is

(almost) useless

◮ Ω(n2) Ω(n2 log n) improvement is still a possibility

◮ Other than that, “non-combinatorial” techniques are needed.

slide-148
SLIDE 148

Conclusion

◮ Nondet. CC lower bound for Spanning Tree extension complexity is

(almost) useless

◮ Ω(n2) Ω(n2 log n) improvement is still a possibility

◮ Other than that, “non-combinatorial” techniques are needed. ◮ . . . or a o(n3) extended formulation.

slide-149
SLIDE 149

Need More Brainpower

slide-150
SLIDE 150

Need More Brainpower