Constraints, Symmetry, and Complexity Part 2 Andrei Krokhin Andrei - - PowerPoint PPT Presentation

constraints symmetry and complexity part 2 andrei krokhin
SMART_READER_LITE
LIVE PREVIEW

Constraints, Symmetry, and Complexity Part 2 Andrei Krokhin Andrei - - PowerPoint PPT Presentation

Constraints, Symmetry, and Complexity Part 2 Andrei Krokhin Andrei Krokhin Constraints, Symmetry, and Complexity Mantra Symmetries of solution spaces are relevant for complexity Lack of symmetries hardness Symmetries efficient


slide-1
SLIDE 1

Constraints, Symmetry, and Complexity Part 2 Andrei Krokhin

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-2
SLIDE 2

Mantra

Symmetries of solution spaces are relevant for complexity Lack of symmetries ⇒ hardness Symmetries ⇒ efficient algorithms Symmetries of higher dimension/arity are important

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-3
SLIDE 3

Motivational example: Approximate graph colouring

Classical fact: For any fixed k ≥ 3, it’s NP-hard to find a k-colouring of a given k-colourable graph.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-4
SLIDE 4

Motivational example: Approximate graph colouring

Classical fact: For any fixed k ≥ 3, it’s NP-hard to find a k-colouring of a given k-colourable graph. Natural question: How many colours are needed to efficiently find a colouring?

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-5
SLIDE 5

Motivational example: Approximate graph colouring

Classical fact: For any fixed k ≥ 3, it’s NP-hard to find a k-colouring of a given k-colourable graph. Natural question: How many colours are needed to efficiently find a colouring? Old (in)famous problem: for any fixed const 3 ≤ k ≤ c, is it NP-hard to find a c-colouring of a given k-colourable graph?

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-6
SLIDE 6

Motivational example: Approximate graph colouring

Classical fact: For any fixed k ≥ 3, it’s NP-hard to find a k-colouring of a given k-colourable graph. Natural question: How many colours are needed to efficiently find a colouring? Old (in)famous problem: for any fixed const 3 ≤ k ≤ c, is it NP-hard to find a c-colouring of a given k-colourable graph? 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-7
SLIDE 7

Motivational example: Approximate graph colouring

Classical fact: For any fixed k ≥ 3, it’s NP-hard to find a k-colouring of a given k-colourable graph. Natural question: How many colours are needed to efficiently find a colouring? Old (in)famous problem: for any fixed const 3 ≤ k ≤ c, is it NP-hard to find a c-colouring of a given k-colourable graph? 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open. k vs. c = 2k − 2 is NP-hard [Brakensiek, Guruswami’16]

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-8
SLIDE 8

Motivational example: Approximate graph colouring

Classical fact: For any fixed k ≥ 3, it’s NP-hard to find a k-colouring of a given k-colourable graph. Natural question: How many colours are needed to efficiently find a colouring? Old (in)famous problem: for any fixed const 3 ≤ k ≤ c, is it NP-hard to find a c-colouring of a given k-colourable graph? 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open. k vs. c = 2k − 2 is NP-hard [Brakensiek, Guruswami’16] k vs. 2Ω(k1/3) is NP-hard for large enough k [Huang’13]

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-9
SLIDE 9

Motivational example: Approximate graph colouring

Classical fact: For any fixed k ≥ 3, it’s NP-hard to find a k-colouring of a given k-colourable graph. Natural question: How many colours are needed to efficiently find a colouring? Old (in)famous problem: for any fixed const 3 ≤ k ≤ c, is it NP-hard to find a c-colouring of a given k-colourable graph? 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open. k vs. c = 2k − 2 is NP-hard [Brakensiek, Guruswami’16] k vs. 2Ω(k1/3) is NP-hard for large enough k [Huang’13] NP-hard for all 3 ≤ k ≤ c, assuming non-standard (perfect completeness) variants of the UGC [Dinur, Mossel, Regev’09]

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-10
SLIDE 10

Approximating CSP

Goal: Given a CSP instance, find an approximate solution. Options:

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-11
SLIDE 11

Approximating CSP

Goal: Given a CSP instance, find an approximate solution. Options:

  • 1. Can violate some constraints, try to satisfy as many as poss

— Full understanding modulo UGC [Raghavendra’08]

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-12
SLIDE 12

Approximating CSP

Goal: Given a CSP instance, find an approximate solution. Options:

  • 1. Can violate some constraints, try to satisfy as many as poss

— Full understanding modulo UGC [Raghavendra’08]

  • 2. Relax the constraints themselves (this talk)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-13
SLIDE 13

Approximating CSP

Goal: Given a CSP instance, find an approximate solution. Options:

  • 1. Can violate some constraints, try to satisfy as many as poss

— Full understanding modulo UGC [Raghavendra’08]

  • 2. Relax the constraints themselves (this talk)
  • 3. Perhaps do both simultaneously — some time in the future

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-14
SLIDE 14

Promise CSP (PCSP)

Fix structures A = (A; R1, . . . , Rn) and B = (B; S1, . . . , Sn) s.t.

  • 1. arity(Ri) = arity(Si) for all i

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-15
SLIDE 15

Promise CSP (PCSP)

Fix structures A = (A; R1, . . . , Rn) and B = (B; S1, . . . , Sn) s.t.

  • 1. arity(Ri) = arity(Si) for all i
  • 2. ∃ h : A → B (homomorphism, i.e. h(Ri) ⊆ Si)

— special case: A ⊆ B, h(x) = x, and then Ri ⊆ Si.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-16
SLIDE 16

Promise CSP (PCSP)

Fix structures A = (A; R1, . . . , Rn) and B = (B; S1, . . . , Sn) s.t.

  • 1. arity(Ri) = arity(Si) for all i
  • 2. ∃ h : A → B (homomorphism, i.e. h(Ri) ⊆ Si)

— special case: A ⊆ B, h(x) = x, and then Ri ⊆ Si.

Consider pairs of CSP instances: Φstrict = R1(x, y, z), R1(z, y, w), R2(z), R3(x, w), R3(y, y) Φrelaxed = S1(x, y, z), S1(z, y, w), S2(z), S3(x, w), S3(y, y)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-17
SLIDE 17

Promise CSP (PCSP)

Fix structures A = (A; R1, . . . , Rn) and B = (B; S1, . . . , Sn) s.t.

  • 1. arity(Ri) = arity(Si) for all i
  • 2. ∃ h : A → B (homomorphism, i.e. h(Ri) ⊆ Si)

— special case: A ⊆ B, h(x) = x, and then Ri ⊆ Si.

Consider pairs of CSP instances: Φstrict = R1(x, y, z), R1(z, y, w), R2(z), R3(x, w), R3(y, y) Φrelaxed = S1(x, y, z), S1(z, y, w), S2(z), S3(x, w), S3(y, y) Because of h, have Φstrict is sat ⇒ Φrelaxed is sat

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-18
SLIDE 18

Promise CSP (PCSP)

Definition (PCSP(A, B), Decision version) Accept if Φstrict is sat, reject if Φrelaxed is unsat.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-19
SLIDE 19

Promise CSP (PCSP)

Definition (PCSP(A, B), Decision version) Accept if Φstrict is sat, reject if Φrelaxed is unsat. Obvious facts: For any A, PCSP(A, A) = CSP(A) CSP(A) or CSP(B) is in P ⇒ PCSP(A, B) is in P.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-20
SLIDE 20

Promise CSP (PCSP)

Definition (PCSP(A, B), Decision version) Accept if Φstrict is sat, reject if Φrelaxed is unsat. Obvious facts: For any A, PCSP(A, A) = CSP(A) CSP(A) or CSP(B) is in P ⇒ PCSP(A, B) is in P. Definition (PCSP(A, B), Search version) Given a satisfiable Φstrict, find a solution for Φrelaxed.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-21
SLIDE 21

Promise CSP (PCSP)

Definition (PCSP(A, B), Decision version) Accept if Φstrict is sat, reject if Φrelaxed is unsat. Obvious facts: For any A, PCSP(A, A) = CSP(A) CSP(A) or CSP(B) is in P ⇒ PCSP(A, B) is in P. Definition (PCSP(A, B), Search version) Given a satisfiable Φstrict, find a solution for Φrelaxed. Remark: there is an obvious reduction from decision to search.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-22
SLIDE 22

Promise CSP (PCSP)

Definition (PCSP(A, B), Decision version) Accept if Φstrict is sat, reject if Φrelaxed is unsat. Obvious facts: For any A, PCSP(A, A) = CSP(A) CSP(A) or CSP(B) is in P ⇒ PCSP(A, B) is in P. Definition (PCSP(A, B), Search version) Given a satisfiable Φstrict, find a solution for Φrelaxed. Remark: there is an obvious reduction from decision to search. Conjecture The search and the decision problems are always equivalent.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-23
SLIDE 23

Example: Approximate hypergraph colouring

Recall k-NAE: A = ([k]; {(a, b, c) ∈ [k]3 | a = b ∨ a = c ∨ b = c}) Essentially, this is k-colouring for 3-uniform hypergraphs.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-24
SLIDE 24

Example: Approximate hypergraph colouring

Recall k-NAE: A = ([k]; {(a, b, c) ∈ [k]3 | a = b ∨ a = c ∨ b = c}) Essentially, this is k-colouring for 3-uniform hypergraphs. Natural to consider (k-NAE, c-NAE).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-25
SLIDE 25

Example: Approximate hypergraph colouring

Recall k-NAE: A = ([k]; {(a, b, c) ∈ [k]3 | a = b ∨ a = c ∨ b = c}) Essentially, this is k-colouring for 3-uniform hypergraphs. Natural to consider (k-NAE, c-NAE). Theorem (Dinur, Regev, Smyth’05) For any 2 ≤ k ≤ c, PCSP(k-NAE, c-NAE) is NP-hard.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-26
SLIDE 26

Example: (1-in-3, NAE)-Sat

1-in-3 is R1/3 = {(0, 0, 1), (0, 1, 0), (1, 0, 0)} NAE is 2-NAE as in hypergraph 2-colouring

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-27
SLIDE 27

Example: (1-in-3, NAE)-Sat

1-in-3 is R1/3 = {(0, 0, 1), (0, 1, 0), (1, 0, 0)} NAE is 2-NAE as in hypergraph 2-colouring Both 1-in-3-Sat and NAE-Sat are standard NP-hard CSPs

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-28
SLIDE 28

Example: (1-in-3, NAE)-Sat

1-in-3 is R1/3 = {(0, 0, 1), (0, 1, 0), (1, 0, 0)} NAE is 2-NAE as in hypergraph 2-colouring Both 1-in-3-Sat and NAE-Sat are standard NP-hard CSPs Fact (Brakensiek, Guruswami’16) (1-in-3, NAE)-Sat is in P.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-29
SLIDE 29

Example: (1-in-3, NAE)-Sat

1-in-3 is R1/3 = {(0, 0, 1), (0, 1, 0), (1, 0, 0)} NAE is 2-NAE as in hypergraph 2-colouring Both 1-in-3-Sat and NAE-Sat are standard NP-hard CSPs Fact (Brakensiek, Guruswami’16) (1-in-3, NAE)-Sat is in P. Proof.

  • 1. Replace each R1/3(x, y, z) constraint by x + y + z = 1

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-30
SLIDE 30

Example: (1-in-3, NAE)-Sat

1-in-3 is R1/3 = {(0, 0, 1), (0, 1, 0), (1, 0, 0)} NAE is 2-NAE as in hypergraph 2-colouring Both 1-in-3-Sat and NAE-Sat are standard NP-hard CSPs Fact (Brakensiek, Guruswami’16) (1-in-3, NAE)-Sat is in P. Proof.

  • 1. Replace each R1/3(x, y, z) constraint by x + y + z = 1
  • 2. Solve the linear system over Z (can be done in poly-time)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-31
SLIDE 31

Example: (1-in-3, NAE)-Sat

1-in-3 is R1/3 = {(0, 0, 1), (0, 1, 0), (1, 0, 0)} NAE is 2-NAE as in hypergraph 2-colouring Both 1-in-3-Sat and NAE-Sat are standard NP-hard CSPs Fact (Brakensiek, Guruswami’16) (1-in-3, NAE)-Sat is in P. Proof.

  • 1. Replace each R1/3(x, y, z) constraint by x + y + z = 1
  • 2. Solve the linear system over Z (can be done in poly-time)
  • 3. Round the solution: positive → 1, non-positive → 0

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-32
SLIDE 32

Example: (1-in-3, NAE)-Sat

1-in-3 is R1/3 = {(0, 0, 1), (0, 1, 0), (1, 0, 0)} NAE is 2-NAE as in hypergraph 2-colouring Both 1-in-3-Sat and NAE-Sat are standard NP-hard CSPs Fact (Brakensiek, Guruswami’16) (1-in-3, NAE)-Sat is in P. Proof.

  • 1. Replace each R1/3(x, y, z) constraint by x + y + z = 1
  • 2. Solve the linear system over Z (can be done in poly-time)
  • 3. Round the solution: positive → 1, non-positive → 0
  • 4. 1-in-3 instance sat ⇒ lin system sat ⇒ NAE instance sat

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-33
SLIDE 33

How to prove tractability of PCSP(A, B) ?

All known proofs work (more or less) like this: By def, have a homomorphism h : A → B

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-34
SLIDE 34

How to prove tractability of PCSP(A, B) ?

All known proofs work (more or less) like this: By def, have a homomorphism h : A → B Find a (possibly infinite) structure S such that

— (a) A → S → B and (b) CSP(S) is in P.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-35
SLIDE 35

How to prove tractability of PCSP(A, B) ?

All known proofs work (more or less) like this: By def, have a homomorphism h : A → B Find a (possibly infinite) structure S such that

— (a) A → S → B and (b) CSP(S) is in P.

Then algorithm for CSP(S) solves PCSP(A, B)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-36
SLIDE 36

How to prove tractability of PCSP(A, B) ?

All known proofs work (more or less) like this: By def, have a homomorphism h : A → B Find a (possibly infinite) structure S such that

— (a) A → S → B and (b) CSP(S) is in P.

Then algorithm for CSP(S) solves PCSP(A, B) For the example from previous slide: A = ({0, 1}, R1/3), B = ({0, 1}, RNAE), S = (Z; x + y + z = 1)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-37
SLIDE 37

How to prove tractability of PCSP(A, B) ?

All known proofs work (more or less) like this: By def, have a homomorphism h : A → B Find a (possibly infinite) structure S such that

— (a) A → S → B and (b) CSP(S) is in P.

Then algorithm for CSP(S) solves PCSP(A, B) For the example from previous slide: A = ({0, 1}, R1/3), B = ({0, 1}, RNAE), S = (Z; x + y + z = 1) For any finite S with A → S → B, CSP(S) is NP-c [Barto’18]

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-38
SLIDE 38

Polymorphisms

An operation f : Am → B is called a polymorphism from a R ⊆ Ak to S ⊆ Bk if for any k-tuples f f f ↓ ↓ ↓ ( a11 , . . . , a1k ) ∈ R . . . . . . . . . . . . ( am1 , . . . , amk ) ∈ R ⇓ ( f (a11, . . . , am1) , . . . , f (a1k, . . . , amk) ) ∈ S

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-39
SLIDE 39

Polymorphisms

An operation f : Am → B is called a polymorphism from a R ⊆ Ak to S ⊆ Bk if for any k-tuples f f f ↓ ↓ ↓ ( a11 , . . . , a1k ) ∈ R . . . . . . . . . . . . ( am1 , . . . , amk ) ∈ R ⇓ ( f (a11, . . . , am1) , . . . , f (a1k, . . . , amk) ) ∈ S Can do polymorphisms from A to B. Notation — Pol(A, B).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-40
SLIDE 40

Polymorphisms

An operation f : Am → B is called a polymorphism from a R ⊆ Ak to S ⊆ Bk if for any k-tuples f f f ↓ ↓ ↓ ( a11 , . . . , a1k ) ∈ R . . . . . . . . . . . . ( am1 , . . . , amk ) ∈ R ⇓ ( f (a11, . . . , am1) , . . . , f (a1k, . . . , amk) ) ∈ S Can do polymorphisms from A to B. Notation — Pol(A, B). Example: n-ary functions from Pol(Kk, Kc) = c-colourings of Kn

k

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-41
SLIDE 41

Difference from CSP

Can’t compose polymorphisms! If f (x, y), g(x, y) ∈ Pol(A, B), what is f (g(x, y), z) ?

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-42
SLIDE 42

Difference from CSP

Can’t compose polymorphisms! If f (x, y), g(x, y) ∈ Pol(A, B), what is f (g(x, y), z) ? Implications:

  • 1. don’t have clones, old structural theory not applicable
  • 2. old way of getting strong symmetries from weak symmetries

doesn’t work

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-43
SLIDE 43

Difference from CSP

Can’t compose polymorphisms! If f (x, y), g(x, y) ∈ Pol(A, B), what is f (g(x, y), z) ? Implications:

  • 1. don’t have clones, old structural theory not applicable
  • 2. old way of getting strong symmetries from weak symmetries

doesn’t work

  • 3. any algorithm that uses repeated applications of

polymorphisms doesn’t work

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-44
SLIDE 44

Difference from CSP

Can’t compose polymorphisms! If f (x, y), g(x, y) ∈ Pol(A, B), what is f (g(x, y), z) ? Implications:

  • 1. don’t have clones, old structural theory not applicable
  • 2. old way of getting strong symmetries from weak symmetries

doesn’t work

  • 3. any algorithm that uses repeated applications of

polymorphisms doesn’t work Possible conclusions: Things are hopeless for algebra here

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-45
SLIDE 45

Difference from CSP

Can’t compose polymorphisms! If f (x, y), g(x, y) ∈ Pol(A, B), what is f (g(x, y), z) ? Implications:

  • 1. don’t have clones, old structural theory not applicable
  • 2. old way of getting strong symmetries from weak symmetries

doesn’t work

  • 3. any algorithm that uses repeated applications of

polymorphisms doesn’t work Possible conclusions: Things are hopeless for algebra here There’s a composition-free algebraic theory out there

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-46
SLIDE 46

Polymorphisms in control

Theorem (Pippenger’02, Brakensiek, Guruswami’18) If Pol(A, B) ⊆ Pol(C, D) then PCSP(C, D) poly-time reduces to PCSP(A, B).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-47
SLIDE 47

Polymorphisms in control

Theorem (Pippenger’02, Brakensiek, Guruswami’18) If Pol(A, B) ⊆ Pol(C, D) then PCSP(C, D) poly-time reduces to PCSP(A, B). Proof is the same as Jeavons’ proof of the analogous result for CSPs, goes via simulation (pp-definitions).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-48
SLIDE 48

Polymorphisms in control

Theorem (Pippenger’02, Brakensiek, Guruswami’18) If Pol(A, B) ⊆ Pol(C, D) then PCSP(C, D) poly-time reduces to PCSP(A, B). Proof is the same as Jeavons’ proof of the analogous result for CSPs, goes via simulation (pp-definitions). Some results based on this theorem: A Boolean PCSP known as (2 + ǫ)-Sat is NP-hard [AHG’14]

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-49
SLIDE 49

Polymorphisms in control

Theorem (Pippenger’02, Brakensiek, Guruswami’18) If Pol(A, B) ⊆ Pol(C, D) then PCSP(C, D) poly-time reduces to PCSP(A, B). Proof is the same as Jeavons’ proof of the analogous result for CSPs, goes via simulation (pp-definitions). Some results based on this theorem: A Boolean PCSP known as (2 + ǫ)-Sat is NP-hard [AHG’14] NP-hardness for some approx graph and (variants of) hypergraph colouring [BG’16-18]

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-50
SLIDE 50

Polymorphisms in control

Theorem (Pippenger’02, Brakensiek, Guruswami’18) If Pol(A, B) ⊆ Pol(C, D) then PCSP(C, D) poly-time reduces to PCSP(A, B). Proof is the same as Jeavons’ proof of the analogous result for CSPs, goes via simulation (pp-definitions). Some results based on this theorem: A Boolean PCSP known as (2 + ǫ)-Sat is NP-hard [AHG’14] NP-hardness for some approx graph and (variants of) hypergraph colouring [BG’16-18] Classification for Boolean symmetric predicates [BG’18]

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-51
SLIDE 51

Polymorphisms in control

Theorem (Pippenger’02, Brakensiek, Guruswami’18) If Pol(A, B) ⊆ Pol(C, D) then PCSP(C, D) poly-time reduces to PCSP(A, B). Proof is the same as Jeavons’ proof of the analogous result for CSPs, goes via simulation (pp-definitions). Some results based on this theorem: A Boolean PCSP known as (2 + ǫ)-Sat is NP-hard [AHG’14] NP-hardness for some approx graph and (variants of) hypergraph colouring [BG’16-18] Classification for Boolean symmetric predicates [BG’18] So this can take us some way, but we need a more abstract theory!

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-52
SLIDE 52

Minors and minions

Definition Let f : An → B and let π : [n] → [m]. We say that g : Am → B is a minor of f (wrt. π) if g(x1, . . . , xm) = f (xπ(1), . . . , xπ(n)). Meaning: g is obtained from f by identifying and permuting vars (and poss adding dummy vars)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-53
SLIDE 53

Minors and minions

Definition Let f : An → B and let π : [n] → [m]. We say that g : Am → B is a minor of f (wrt. π) if g(x1, . . . , xm) = f (xπ(1), . . . , xπ(n)). Meaning: g is obtained from f by identifying and permuting vars (and poss adding dummy vars) Fact Every Pol(A, B) is closed under taking minors.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-54
SLIDE 54

Minors and minions

Definition Let f : An → B and let π : [n] → [m]. We say that g : Am → B is a minor of f (wrt. π) if g(x1, . . . , xm) = f (xπ(1), . . . , xπ(n)). Meaning: g is obtained from f by identifying and permuting vars (and poss adding dummy vars) Fact Every Pol(A, B) is closed under taking minors. Such sets are knowns as minions or clonoids.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-55
SLIDE 55

Minor conditions

An identity of the form g(x1, . . . , xm) = f (xπ(1), . . . , xπ(m)) is called a minor identity. It’s a special case of a height-1 identity.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-56
SLIDE 56

Minor conditions

An identity of the form g(x1, . . . , xm) = f (xπ(1), . . . , xπ(m)) is called a minor identity. It’s a special case of a height-1 identity. Definition A minor condition is a set of minor identities. A bipartite minor condition (bmc) is one where the sets of function symbols on LHS and RHS are disjoint.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-57
SLIDE 57

Minor conditions

An identity of the form g(x1, . . . , xm) = f (xπ(1), . . . , xπ(m)) is called a minor identity. It’s a special case of a height-1 identity. Definition A minor condition is a set of minor identities. A bipartite minor condition (bmc) is one where the sets of function symbols on LHS and RHS are disjoint. Example: s(x, y) = f (x, x, y, y, y, x) s(x, y) = f (x, y, x, y, x, y) s(x, y) = f (y, x, x, x, y, y)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-58
SLIDE 58

Polymorphisms and minor conditions

What determines the complexity of PCSP(A, B) ? Pol(A, B) ? — yes!

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-59
SLIDE 59

Polymorphisms and minor conditions

What determines the complexity of PCSP(A, B) ? Pol(A, B) ? — yes! more abstractly, identities sat in Pol(A, B) ?

— Only height-1 (composition-free) identities makes sense!

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-60
SLIDE 60

Polymorphisms and minor conditions

What determines the complexity of PCSP(A, B) ? Pol(A, B) ? — yes! more abstractly, identities sat in Pol(A, B) ?

— Only height-1 (composition-free) identities makes sense!

h1 identities sat in Pol(A, B) ? - yes!

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-61
SLIDE 61

Polymorphisms and minor conditions

What determines the complexity of PCSP(A, B) ? Pol(A, B) ? — yes! more abstractly, identities sat in Pol(A, B) ?

— Only height-1 (composition-free) identities makes sense!

h1 identities sat in Pol(A, B) ? - yes! more generally, bmc’s sat in Pol(A, B) ? - yes! Theorem (Bul´ ın, AK, Oprˇ sal) If every bipartite minor condition sat in Pol(A, B) is also sat in Pol(C, D) then PCSP(C, D) logspace reduces to PCSP(A, B).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-62
SLIDE 62

Polymorphisms and minor conditions

What determines the complexity of PCSP(A, B) ? Pol(A, B) ? — yes! more abstractly, identities sat in Pol(A, B) ?

— Only height-1 (composition-free) identities makes sense!

h1 identities sat in Pol(A, B) ? - yes! more generally, bmc’s sat in Pol(A, B) ? - yes! Theorem (Bul´ ın, AK, Oprˇ sal) If every bipartite minor condition sat in Pol(A, B) is also sat in Pol(C, D) then PCSP(C, D) logspace reduces to PCSP(A, B). bmc’s sat in Pol(A, B) is the right notion of symmetry for PCSPs!

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-63
SLIDE 63

An application

Recall: 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-64
SLIDE 64

An application

Recall: 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open. Theorem (Bul´ ın, AK, Oprˇ sal) Every bmc sat in Pol(K3, K5) is sat in Pol(2 − NAE, 458 − NAE).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-65
SLIDE 65

An application

Recall: 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open. Theorem (Bul´ ın, AK, Oprˇ sal) Every bmc sat in Pol(K3, K5) is sat in Pol(2 − NAE, 458 − NAE). By [DRS’05], PCSP(2 − NAE, 458 − NAE) is NP-hard, so ... Corollary PCSP(K3, K5) is NP-hard.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-66
SLIDE 66

An application

Recall: 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open. Theorem (Bul´ ın, AK, Oprˇ sal) Every bmc sat in Pol(K3, K5) is sat in Pol(2 − NAE, 458 − NAE). By [DRS’05], PCSP(2 − NAE, 458 − NAE) is NP-hard, so ... Corollary PCSP(K3, K5) is NP-hard. Remarks: 458 is the number of binary functions in Pol(K3, K5)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-67
SLIDE 67

An application

Recall: 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open. Theorem (Bul´ ın, AK, Oprˇ sal) Every bmc sat in Pol(K3, K5) is sat in Pol(2 − NAE, 458 − NAE). By [DRS’05], PCSP(2 − NAE, 458 − NAE) is NP-hard, so ... Corollary PCSP(K3, K5) is NP-hard. Remarks: 458 is the number of binary functions in Pol(K3, K5) The proof actually works for all (k, 2k − 1), not just (3, 5)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-68
SLIDE 68

An application

Recall: 3 vs. 4 colouring is NP-hard [GJ76], but 3 vs. 5 is open. Theorem (Bul´ ın, AK, Oprˇ sal) Every bmc sat in Pol(K3, K5) is sat in Pol(2 − NAE, 458 − NAE). By [DRS’05], PCSP(2 − NAE, 458 − NAE) is NP-hard, so ... Corollary PCSP(K3, K5) is NP-hard. Remarks: 458 is the number of binary functions in Pol(K3, K5) The proof actually works for all (k, 2k − 1), not just (3, 5) Both Pol(K3, K5) and Pol(2 − NAE, 458 − NAE) satisfy many non-trivial bmc’s

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-69
SLIDE 69

Proof

Lemma (Bul´ ın, AK, Oprˇ sal) To prove the theorem, it is enough to show that Pol(K3, K5) does not satisfy the following bmc: s(x, y) = f (x, x, y, y, y, x) s(x, y) = f (x, y, x, y, x, y) s(x, y) = f (y, x, x, x, y, y)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-70
SLIDE 70

Proof

Lemma (Bul´ ın, AK, Oprˇ sal) To prove the theorem, it is enough to show that Pol(K3, K5) does not satisfy the following bmc: s(x, y) = f (x, x, y, y, y, x) s(x, y) = f (x, y, x, y, x, y) s(x, y) = f (y, x, x, x, y, y) Let’s show that Pol(K3, K5) contains no such f . What would such an f be? - a 5-colouring of K6

3 that that gives the same colour to

some specified vertices.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-71
SLIDE 71

End of proof

Take K6

3 and, for each pair (x, y) ∈ [3]2, glue together 3 vertices:

(x, x, y, y, y, x), (x, y, x, y, x, y), (y, x, x, x, y, y). Need to show: this graph is not 5-colourable.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-72
SLIDE 72

End of proof

Take K6

3 and, for each pair (x, y) ∈ [3]2, glue together 3 vertices:

(x, x, y, y, y, x), (x, y, x, y, x, y), (y, x, x, x, y, y). Need to show: this graph is not 5-colourable. But it contains the following (001110) (012120) (201012) (120201) (112221) (220002)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-73
SLIDE 73

The Label Cover problem

The Label Cover, LC(N) problem is a CSP that looks like this: u . . . v . . . πe U V typical instance of LC(4) 1 2 3 u 1 2 3 4 v typical constraint πe

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-74
SLIDE 74

The Label Cover problem

The Label Cover, LC(N) problem is a CSP that looks like this: u . . . v . . . πe U V typical instance of LC(4) 1 2 3 u 1 2 3 4 v typical constraint πe Fact For any N ≥ 3, LC(N) is NP-complete.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-75
SLIDE 75

Label Cover is an algebraic problem

Definition (Problem MC(N)) Given a bmc Σ involving functions of arity ≤ N, decide whether Σ is trivial (i.e. satisfiable in projections).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-76
SLIDE 76

Label Cover is an algebraic problem

Definition (Problem MC(N)) Given a bmc Σ involving functions of arity ≤ N, decide whether Σ is trivial (i.e. satisfiable in projections). Fact LC(N) and MC(N) are the same problem. gu(x1, x2, x3) = fv(x1, x1, x3, x3) minor identity 1 2 3 u 1 2 3 4 v constraint πe

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-77
SLIDE 77

Label Cover is an algebraic problem

Definition (Problem MC(N)) Given a bmc Σ involving functions of arity ≤ N, decide whether Σ is trivial (i.e. satisfiable in projections). Fact LC(N) and MC(N) are the same problem. gu(x1, x2, x3) = fv(x1, x1, x3, x3) minor identity 1 2 3 u 1 2 3 4 v constraint πe

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-78
SLIDE 78

Gap Label Cover (GLC)

Definition For ǫ > 0 and integer N, the problem GLC1,ǫ(N) is, given an instance of LC(N), to distinguish between two cases: (yes) all constraints can be satisfied, and (no) no assignment satisfies ǫ-fraction of constraints

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-79
SLIDE 79

Gap Label Cover (GLC)

Definition For ǫ > 0 and integer N, the problem GLC1,ǫ(N) is, given an instance of LC(N), to distinguish between two cases: (yes) all constraints can be satisfied, and (no) no assignment satisfies ǫ-fraction of constraints Theorem (PCP + Raz’s Parallel repetition) For any ǫ > 0, there is N such that GLC1,ǫ(N) is NP-hard.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-80
SLIDE 80

Gap Label Cover (GLC)

Definition For ǫ > 0 and integer N, the problem GLC1,ǫ(N) is, given an instance of LC(N), to distinguish between two cases: (yes) all constraints can be satisfied, and (no) no assignment satisfies ǫ-fraction of constraints Theorem (PCP + Raz’s Parallel repetition) For any ǫ > 0, there is N such that GLC1,ǫ(N) is NP-hard. Fact GLC1,ǫ(N) is equivalent to the problem of distiguishing whether a given bmc is trivial or any ǫ-fraction of it is non-trivial.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-81
SLIDE 81

The Promise MC problem (=PCSP)

Definition Fix a set M of functions. For an integer N, the problem PMCM(N) is, given a bmc, to distinguish between two cases: (yes) the bmc is trivial (sat in projections) (no) the bmc is not sat in M

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-82
SLIDE 82

The Promise MC problem (=PCSP)

Definition Fix a set M of functions. For an integer N, the problem PMCM(N) is, given a bmc, to distinguish between two cases: (yes) the bmc is trivial (sat in projections) (no) the bmc is not sat in M Theorem (Bul´ ın, AK, Oprˇ sal) Fix PCSP(A, B) and let M = Pol(A, B).

  • 1. For each N, PCSP(A, B) is logspace reducible to PMCM(N).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-83
SLIDE 83

The Promise MC problem (=PCSP)

Definition Fix a set M of functions. For an integer N, the problem PMCM(N) is, given a bmc, to distinguish between two cases: (yes) the bmc is trivial (sat in projections) (no) the bmc is not sat in M Theorem (Bul´ ın, AK, Oprˇ sal) Fix PCSP(A, B) and let M = Pol(A, B).

  • 1. For each N, PCSP(A, B) is logspace reducible to PMCM(N).
  • 2. If N is larger than |A| and max size of a relation in A then

PMCM(N) is logspace reducible to PCSP(A, B).

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-84
SLIDE 84

A strategy for proving hardness of PCSP(A, B)

Reduction from GLCL1, ǫ(N) to PMCM(N):

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-85
SLIDE 85

A strategy for proving hardness of PCSP(A, B)

Reduction from GLCL1, ǫ(N) to PMCM(N): Carefully choose ǫ. Transform a given GLC instance to a bmc as before and prove:

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-86
SLIDE 86

A strategy for proving hardness of PCSP(A, B)

Reduction from GLCL1, ǫ(N) to PMCM(N): Carefully choose ǫ. Transform a given GLC instance to a bmc as before and prove:

  • 1. GLC instance is sat ⇒ the bmc is trivial (we know this)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-87
SLIDE 87

A strategy for proving hardness of PCSP(A, B)

Reduction from GLCL1, ǫ(N) to PMCM(N): Carefully choose ǫ. Transform a given GLC instance to a bmc as before and prove:

  • 1. GLC instance is sat ⇒ the bmc is trivial (we know this)
  • 2. The bmc is sat in M ⇒ ǫ-fraction of the bmc is non-trivial.

Since bmc = LC, ǫ-fraction of the LC constraints are now sat. Key idea: (2) should work because symmetries of M are limited.

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-88
SLIDE 88

Is there a dichotomy for PCSP?

It’s too early too predict!

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-89
SLIDE 89

Is there a dichotomy for PCSP?

It’s too early too predict! We already know it’s all about symmetries

— bipartite minor conditions satisfiable in polymorphisms

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-90
SLIDE 90

Is there a dichotomy for PCSP?

It’s too early too predict! We already know it’s all about symmetries

— bipartite minor conditions satisfiable in polymorphisms

For CSPs, have either no symmetries or strong symmetries

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-91
SLIDE 91

Is there a dichotomy for PCSP?

It’s too early too predict! We already know it’s all about symmetries

— bipartite minor conditions satisfiable in polymorphisms

For CSPs, have either no symmetries or strong symmetries For PCSPs:

— limited non-trivial symmetries ⇒ hardness — strong enough symmetries ⇒ efficient algorithms

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-92
SLIDE 92

Is there a dichotomy for PCSP?

It’s too early too predict! We already know it’s all about symmetries

— bipartite minor conditions satisfiable in polymorphisms

For CSPs, have either no symmetries or strong symmetries For PCSPs:

— limited non-trivial symmetries ⇒ hardness — strong enough symmetries ⇒ efficient algorithms

Gap between “limited non-trivial” and “strong enough”?

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-93
SLIDE 93

Is there a dichotomy for PCSP?

It’s too early too predict! We already know it’s all about symmetries

— bipartite minor conditions satisfiable in polymorphisms

For CSPs, have either no symmetries or strong symmetries For PCSPs:

— limited non-trivial symmetries ⇒ hardness — strong enough symmetries ⇒ efficient algorithms

Gap between “limited non-trivial” and “strong enough”? Need more evidence, e.g. classifications for

— all Boolean PCSPs? (cf. [Schaefer’78] for CSP) — promise graph homomorphisms? (cf. [Hell-Neˇ seˇ tril’90])

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-94
SLIDE 94

Summary

Promise CSP - a vast generalisation of finite domain CSP

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-95
SLIDE 95

Summary

Promise CSP - a vast generalisation of finite domain CSP Involves both (in)approximability and infinite domain CSP

— Label Cover is an algebraic problem!

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-96
SLIDE 96

Summary

Promise CSP - a vast generalisation of finite domain CSP Involves both (in)approximability and infinite domain CSP

— Label Cover is an algebraic problem!

Includes famous open problems as special cases

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-97
SLIDE 97

Summary

Promise CSP - a vast generalisation of finite domain CSP Involves both (in)approximability and infinite domain CSP

— Label Cover is an algebraic problem!

Includes famous open problems as special cases Amenable to algebraic theory (symmetries!)

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-98
SLIDE 98

Summary

Promise CSP - a vast generalisation of finite domain CSP Involves both (in)approximability and infinite domain CSP

— Label Cover is an algebraic problem!

Includes famous open problems as special cases Amenable to algebraic theory (symmetries!) New alternatives to traditional approaches in complexity

Andrei Krokhin Constraints, Symmetry, and Complexity

slide-99
SLIDE 99

Summary

Promise CSP - a vast generalisation of finite domain CSP Involves both (in)approximability and infinite domain CSP

— Label Cover is an algebraic problem!

Includes famous open problems as special cases Amenable to algebraic theory (symmetries!) New alternatives to traditional approaches in complexity Complexity quest for PCSP - big, important, wide open

Andrei Krokhin Constraints, Symmetry, and Complexity