The W Hierarchy

112
The W-Hierarchy

Transcript of The W Hierarchy

Page 1: The W Hierarchy

The W-Hierarchy

Page 2: The W Hierarchy

A Parametereized Problem

Page 3: The W Hierarchy

A Parametereized Problem

NP-hard for constant values of the parameter

“Easy” for small values of the parameter

Page 4: The W Hierarchy

“Easy” for small values of the parameter

Page 5: The W Hierarchy

“Easy” for small values of the parameter

An O(nk) algorithm exists.

Page 6: The W Hierarchy

“Easy” for small values of the parameter

Fixed-Parameter Tractable: f(k)poly(n)

As hard as solving Clique

An O(nk) algorithm exists.

Page 7: The W Hierarchy

“Easy” for small values of the parameter

As hard as solving Clique

Polynomial kernel“Stuck” with

large instances

An O(nk) algorithm exists.

Page 8: The W Hierarchy
Page 9: The W Hierarchy
Page 10: The W Hierarchy
Page 11: The W Hierarchy
Page 12: The W Hierarchy

To establish membership, reduce to X.

Page 13: The W Hierarchy

A problem is “hard” for a class if every problem in the class reduces to it.

Page 14: The W Hierarchy

A problem is “hard” for a class if every problem in the class reduces to it.

Page 15: The W Hierarchy

A problem is “hard” for a class if every problem in the class reduces to it.

Page 16: The W Hierarchy

A problem is “hard” for a class if every problem in the class reduces to it.

Page 17: The W Hierarchy

Short Turing Machine Acceptance

Page 18: The W Hierarchy

Short Turing Machine Acceptance

Page 19: The W Hierarchy

Short Turing Machine Acceptance

Page 20: The W Hierarchy

Short Turing Machine Acceptance

Page 21: The W Hierarchy

Short Turing Machine Acceptance

Page 22: The W Hierarchy

Short Turing Machine Acceptance

Page 23: The W Hierarchy

Short Turing Machine Acceptance

Input A [ND] Turing machine M, an input x, and an integer k.

Page 24: The W Hierarchy

Short Turing Machine Acceptance

InputQuestionDoes M accept x in at most k steps?

A [ND] Turing machine M, an input x, and an integer k.

Page 25: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

Page 26: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy)

Page 27: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

Read b and (a,b) is an edge.

(qa,happy)

Page 28: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

Read b and (a,b) is an edge.

(qa,happy)

Page 29: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

Read b and (a,b) is not an edge.

(qa,happy)

Page 30: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

Read b and (a,b) is not an edge.

(qa,happy)

Page 31: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

(qa,happy)

Page 32: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

Read an EOF symbol.

(qa,happy)

Page 33: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

(qa,happy) —> (q[move,a],happy); move left

Read an EOF symbol.

(qa,happy)

Page 34: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

(qa,happy) —> (q[move,a],happy); move left

(qa,happy)

Page 35: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

(qa,happy) —> (q[move,a],happy); move left

(qa,happy)

Read a.

Page 36: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

(qa,happy) —> (q[move,a],happy); move left

(q[move,a],happy) —> (q[read],happy); move right

(qa,happy)

Read a.

Page 37: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

(qa,happy) —> (q[move,a],happy); move left

(q[move,a],happy) —> (q[read],happy); move right

(qa,happy)

Page 38: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

(qa,happy) —> (QUIT)

(qa,happy) —> (qa,happy); move right

(qa,happy) —> (q[move,a],happy); move left

(q[move,a],happy) —> (q[read],happy); move right

(q[read],happy) —> (qb,happy); move right

(qa,happy)

Page 39: The W Hierarchy

Short Turing Machine Acceptance

Dominating Set

Page 40: The W Hierarchy

Short Turing Machine Acceptance

Dominating Set

Page 41: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

Page 42: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

Page 43: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

Page 44: The W Hierarchy

Short Turing Machine Acceptance

Independent Set

Page 45: The W Hierarchy

A problem is “hard” for a class if every problem in the class reduces to it.

Page 46: The W Hierarchy

Short Turing Machine Acceptance

Page 47: The W Hierarchy

Short Turing Machine Acceptance

Encode every configuration as a vertex.

Page 48: The W Hierarchy

Short Turing Machine Acceptance

At step i, the head is at j, and the transition is δ.

Encode every configuration as a vertex.

Page 49: The W Hierarchy

Short Turing Machine Acceptance

At step i, the head is at j, and the transition is δ.

At step i, the symbol at j is t, and the head is not at j.

Encode every configuration as a vertex.

Page 50: The W Hierarchy

[Step 3, Position 1, δ]

[Step 3, Position 2, δ]

[Step 3, Position 3, δ]

Page 51: The W Hierarchy

[Step 3, Position 1, a]

[Step 3, Position 2, a]

[Step 3, Position 3, a]

[Step 3, Position 1, b]

[Step 3, Position 2, b]

[Step 3, Position 3, b]

[Step 3, Position 1, δ]

[Step 3, Position 2, δ]

[Step 3, Position 3, δ]

Page 52: The W Hierarchy

[Step 3, Position 1, a]

[Step 3, Position 2, a]

[Step 3, Position 3, a]

[Step 3, Position 1, b]

[Step 3, Position 2, b]

[Step 3, Position 3, b]

[Step 3, Position 1, δ]

[Step 3, Position 2, δ]

[Step 3, Position 3, δ]

Page 53: The W Hierarchy

[Step 3, Position 1, a]

[Step 3, Position 2, a]

[Step 3, Position 3, a]

[Step 3, Position 1, b]

[Step 3, Position 2, b]

[Step 3, Position 3, b]

[Step 3, Position 1, δ]

[Step 3, Position 2, δ]

[Step 3, Position 3, δ]

Page 54: The W Hierarchy

[Step 3, Position 1, a]

[Step 3, Position 2, a]

[Step 3, Position 3, a]

[Step 3, Position 1, b]

[Step 3, Position 2, b]

[Step 3, Position 3, b]

[Step 3, Position 1, δ]

[Step 3, Position 2, δ]

[Step 3, Position 3, δ]

Page 55: The W Hierarchy

[Step 3, Position 1, a]

[Step 3, Position 2, a]

[Step 3, Position 3, a]

[Step 3, Position 1, b]

[Step 3, Position 2, b]

[Step 3, Position 3, b]

[Step 3, Position 1, δ]

[Step 3, Position 2, δ]

[Step 3, Position 3, δ]

Page 56: The W Hierarchy

CIRCUITS

Introducing…

Page 57: The W Hierarchy

CIRCUITS

Page 58: The W Hierarchy

CIRCUITS

Page 59: The W Hierarchy

Weighted Circuit Satisfiablity

Page 60: The W Hierarchy

Weighted Circuit Satisfiablity

Input A circuit C, and an integer k.

Page 61: The W Hierarchy

Weighted Circuit Satisfiablity

Input

QuestionIs there an assignment setting EXACTLY k variables to one, that satisfies C?

A circuit C, and an integer k.

Page 62: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

b

c

a

d

e

f g

h

t

Page 63: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

b

c

a

d

e

f g

h

t t h

Page 64: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

b

c

a

d

e

f g

h

t t h

AND

Page 65: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

b

c

a

d

e

f g

h

t t h

AND

Page 66: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

b

c

a

d

e

f g

h

t t h

NOT

AND

Page 67: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Page 68: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Page 69: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Page 70: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Page 71: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Vertices as Input Gates

NOT Gates

Edges as AND Gates

Output Gate [AND]

Page 72: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

Page 73: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

Page 74: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

AND Gate

Page 75: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

AND Gate

Page 76: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

AND Gate

Page 77: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

AND Gate

Set a Dominating Set to 1 and the rest to 0…

Page 78: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

AND Gate

Set a Dominating Set to 1 and the rest to 0…

Page 79: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

AND Gate

Otherwise:

Page 80: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Page 81: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Page 82: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Page 83: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Page 84: The W Hierarchy

The weft of a circuit is the maximum number of large nodes on

a path from an input node to the output node.

*Nodes with in-degree more than two.

Page 85: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Vertices as Input Gates

NOT Gates

Edges as AND Gates

Output Gate [AND]

Page 86: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

AND Gate

Page 87: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 1.

Independent Set, Clique, etc.

W[1]

Page 88: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

W[2]

Page 89: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

W[2]

Dominating Set, Set Cover, Hitting Set

Page 90: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

W[2]

Dominating Set, Set Cover, Hitting Set

Page 91: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

W[2]

Dominating Set, Set Cover, Hitting Set

Page 92: The W Hierarchy

CIRCUITS & SATISFIABILITY (as we know it)

Page 93: The W Hierarchy

Weighted Circuit Satisfiability

Independent Set

Vertices as Input Gates

NOT Gates

Edges as AND Gates

Output Gate [AND]

Page 94: The W Hierarchy

Input Gates

NOT Gates

AND Gates

Output Gate [AND]

Page 95: The W Hierarchy

Input Gates

NOT Gates

AND Gates

Output Gate [AND]

(x � y) � (z � x) � · · · � (z � y)

Page 96: The W Hierarchy

Weighted Circuit Satisfiability

Dominating Set

OR Gates

AND Gate

Page 97: The W Hierarchy

OR Gates

AND Gate

Page 98: The W Hierarchy

OR Gates

AND Gate

(x � y � a � b � p � q) � (z � x � r) � · · · � (z � y � p � q � z)

Page 99: The W Hierarchy
Page 100: The W Hierarchy
Page 101: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

Page 102: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

Weighted SAT for Appropriately Normalized & Monotone Formulas

Page 103: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

Weighted SAT for Appropriately Normalized & Monotone Formulas

Page 104: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

Weighted SAT for Appropriately Normalized & Monotone Formulas

Page 105: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

Weighted SAT for Appropriately Normalized & Monotone Formulas

Dominating Set, Set Cover, Hitting Set

Page 106: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

Weighted SAT for Appropriately Normalized & Monotone Formulas

Dominating Set, Set Cover, Hitting Set

Page 107: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

Weighted SAT for Appropriately Normalized & Monotone Formulas

Dominating Set, Set Cover, Hitting Set

Page 108: The W Hierarchy

Weighted Circuit Satisfiability restricted to circuits of weft 2.

Weighted SAT for Appropriately Normalized & Monotone Formulas

Dominating Set, Set Cover, Hitting Set

Page 109: The W Hierarchy

(x � y � a � b � p � q) � (z � x � r) � · · · � (z � y � p � q � z)

Page 110: The W Hierarchy

(x � y � a � b � p � q) � (z � x � r) � · · · � (z � y � p � q � z)

Page 111: The W Hierarchy

(x � y � a � b � p � q) � (z � x � r) � · · · � (z � y � p � q � z)

p

Page 112: The W Hierarchy

(x � y � a � b � p � q) � (z � x � r) � · · · � (z � y � p � q � z)

p