Randomised enumeration of small witnesses using a decision oracle - - PowerPoint PPT Presentation

randomised enumeration of small witnesses using a
SMART_READER_LITE
LIVE PREVIEW

Randomised enumeration of small witnesses using a decision oracle - - PowerPoint PPT Presentation

Randomised enumeration of small witnesses using a decision oracle IPEC, Aarhus, 25th August 2016 Kitty Meeks Witnesses and Oracles Many problems involve finding a witness W (subset with some particular property) of size k in a universe U of size


slide-1
SLIDE 1

Randomised enumeration of small witnesses using a decision oracle

IPEC, Aarhus, 25th August 2016 Kitty Meeks

slide-2
SLIDE 2

Witnesses and Oracles

Many problems involve finding a witness W (subset with some particular property) of size k in a universe U of size n.

2/11

slide-3
SLIDE 3

Witnesses and Oracles

Many problems involve finding a witness W (subset with some particular property) of size k in a universe U of size n. ORA(X) Input: X ⊆ U Output: 1 if some witness is entirely contained in X; 0 otherwise.

2/11

slide-4
SLIDE 4

Witnesses and Oracles

Many problems involve finding a witness W (subset with some particular property) of size k in a universe U of size n. ORA(X) Input: X ⊆ U Output: 1 if some witness is entirely contained in X; 0 otherwise. In self-contained k-witness problem, we can obtain an oracle of this kind by calling a decision algorithm with universe X rather than U (so if W ⊆ X ⊆ U then W is a witness with respect to X if and only if it is a witness with respect to U).

2/11

slide-5
SLIDE 5

Witnesses and Oracles

Many problems involve finding a witness W (subset with some particular property) of size k in a universe U of size n. ORA(X) Input: X ⊆ U Output: 1 if some witness is entirely contained in X; 0 otherwise. In self-contained k-witness problem, we can obtain an oracle of this kind by calling a decision algorithm with universe X rather than U (so if W ⊆ X ⊆ U then W is a witness with respect to X if and only if it is a witness with respect to U). Examples k-CLIQUE k-PATH Non-examples k-VERTEX COVER k-DOMINATING SET

2/11

slide-6
SLIDE 6

Deciding, counting and enumerating

DECISION Is there a witness?

3/11

slide-7
SLIDE 7

Deciding, counting and enumerating

APPROX COUNTING Approximately how many witnesses? DECISION Is there a witness?

3/11

slide-8
SLIDE 8

Deciding, counting and enumerating

APPROX COUNTING Approximately how many witnesses? DECISION Is there a witness? EXACT COUNTING Exactly how many witnesses?

3/11

slide-9
SLIDE 9

Deciding, counting and enumerating

APPROX COUNTING Approximately how many witnesses? DECISION Is there a witness? EXACT COUNTING Exactly how many witnesses? EXTRACTION Identify a single witness

3/11

slide-10
SLIDE 10

Deciding, counting and enumerating

APPROX COUNTING Approximately how many witnesses? DECISION Is there a witness? EXACT COUNTING Exactly how many witnesses? EXTRACTION Identify a single witness UNIFORM SAMPLING Pick a single witness uniformly at random

3/11

slide-11
SLIDE 11

Deciding, counting and enumerating

APPROX COUNTING Approximately how many witnesses? DECISION Is there a witness? EXACT COUNTING Exactly how many witnesses? EXTRACTION Identify a single witness UNIFORM SAMPLING Pick a single witness uniformly at random ENUMERATION List all witnesses

3/11

slide-12
SLIDE 12

If we can decide, we can find a witness

4/11

slide-13
SLIDE 13

If we can decide, we can find a witness

4/11

slide-14
SLIDE 14

If we can decide, we can find a witness

4/11

slide-15
SLIDE 15

If we can decide, we can find a witness

4/11

slide-16
SLIDE 16

If we can decide, we can find a witness

4/11

slide-17
SLIDE 17

If we can decide, we can find a witness

4/11

slide-18
SLIDE 18

If we can decide, we can find a witness

4/11

slide-19
SLIDE 19

If we can decide, we can find a witness

Theorem (Björklund, Kaski and Kowalik, ESA 2014) There exists an algorithm that extracts a witness using at most 2k

  • log2

n k + 2

  • queries to a deterministic decision algorithm.

4/11

slide-20
SLIDE 20

With an extension oracle, we can find all witnesses

EXT-ORA(X, Y) Input: X ⊆ U and Y ⊆ X Output: 1 if there exists a witness W with Y ⊆ W ⊆ X; 0 otherwise.

5/11

slide-21
SLIDE 21

With an extension oracle, we can find all witnesses

EXT-ORA(X, Y) Input: X ⊆ U and Y ⊆ X Output: 1 if there exists a witness W with Y ⊆ W ⊆ X; 0 otherwise.

v1 v2 v2

yes no

v3 v3 v3 v3

yes yes no no

... ... ... ... ... ... ... ...

5/11

slide-22
SLIDE 22

Extension can be harder than inclusion

Suppose that a k-vertex subset is a witness if it either induces a clique or an independent set.

6/11

slide-23
SLIDE 23

Extension can be harder than inclusion

Suppose that a k-vertex subset is a witness if it either induces a clique or an independent set. The decision problem can be solved in time f(k):

By Ramsey, for sufficiently large graphs the answer is always “yes”.

6/11

slide-24
SLIDE 24

Extension can be harder than inclusion

Suppose that a k-vertex subset is a witness if it either induces a clique or an independent set. The decision problem can be solved in time f(k):

By Ramsey, for sufficiently large graphs the answer is always “yes”.

The extension version is W[1]-hard:

Reduction from p-CLIQUE.

G

6/11

slide-25
SLIDE 25

Extension can be harder than inclusion

Suppose that a k-vertex subset is a witness if it either induces a clique or an independent set. The decision problem can be solved in time f(k):

By Ramsey, for sufficiently large graphs the answer is always “yes”.

The extension version is W[1]-hard:

Reduction from p-CLIQUE.

v G

6/11

slide-26
SLIDE 26

Enumerating without using extension

Theorem There is a randomised algorithm to enumerate all witnesses of size k in a self-contained k-witness problem exactly once, whose expected number of calls to a deterministic decision oracle is at most 2O(k) log2 n · N, where N is the total number of witnesses. Moreover, if an oracle call can be executed in time g(k) · nO(1), then the expected total running time of the algorithm is 2O(k) · g(k) · nO(1) · N.

7/11

slide-27
SLIDE 27

Enumerating without using extension

Definition A family F of hash functions from [n] to [k] is said to be k-perfect if, for every subset A ⊂ [n] of size k, there exists f ∈ F such that the restriction of f to A is injective. Theorem (Alon, Yuster, Zwick, 1995) For all n, k ∈ N there is a k-perfect family Fn,k of hash functions from [n] to [k] of cardinality 2O(k) · log n. Furthermore, given n and k, a representation

  • f the family Fn,k can be computed in time 2O(k) · n log n.

7/11

slide-28
SLIDE 28

Enumerating without using extension

Definition A family F of hash functions from [n] to [k] is said to be k-perfect if, for every subset A ⊂ [n] of size k, there exists f ∈ F such that the restriction of f to A is injective. Theorem (Alon, Yuster, Zwick, 1995) For all n, k ∈ N there is a k-perfect family Fn,k of hash functions from [n] to [k] of cardinality 2O(k) · log n. Furthermore, given n and k, a representation

  • f the family Fn,k can be computed in time 2O(k) · n log n.

IDEA: create many coloured instances, and enumerate the colourful copies in each (omitting duplicates)

7/11

slide-29
SLIDE 29

Enumerating without using extension

Definition A family F of hash functions from [n] to [k] is said to be k-perfect if, for every subset A ⊂ [n] of size k, there exists f ∈ F such that the restriction of f to A is injective. Theorem (Alon, Yuster, Zwick, 1995) For all n, k ∈ N there is a k-perfect family Fn,k of hash functions from [n] to [k] of cardinality 2O(k) · log n. Furthermore, given n and k, a representation

  • f the family Fn,k can be computed in time 2O(k) · n log n.

IDEA: create many coloured instances, and enumerate the colourful copies in each (omitting duplicates) PROBLEM: although we’re now looking for colourful witnesses, we still only have a decision algorithm for the uncoloured version...

7/11

slide-30
SLIDE 30

Enumerating without using extension

A B C

8/11

slide-31
SLIDE 31

Enumerating without using extension

C1 C2 B1 B2 A1 A2

8/11

slide-32
SLIDE 32

Enumerating without using extension

A1 B1 C1 A2 A1 B1 C2 A1 B2 C1 A1 B2 C2 B1 C1 B1 C2 B2 C1 B2 C2 A2 A2 A2 C1 C2 B1 B2 A1 A2

8/11

slide-33
SLIDE 33

Enumerating without using extension

A1 B1 C1 A2 A1 B1 C2 A1 B2 C1 A1 B2 C2 B1 C1 B1 C2 B2 C1 B2 C2 A2 A2 A2 C1 C2 B1 B2 A1 A2

8/11

slide-34
SLIDE 34

Enumerating without using extension

If a witness is colourful: It will always survive in exactly one combination

9/11

slide-35
SLIDE 35

Enumerating without using extension

If a witness is colourful: It will always survive in exactly one combination If a witness contains vertices of only ℓ < k colours: the probability it survives in at least one combination is at most 2−(k−ℓ) if it survives in any combination, it will survive in exactly 2k−ℓ combinations

9/11

slide-36
SLIDE 36

Enumerating without using extension

If a witness is colourful: It will always survive in exactly one combination If a witness contains vertices of only ℓ < k colours: the probability it survives in at least one combination is at most 2−(k−ℓ) if it survives in any combination, it will survive in exactly 2k−ℓ combinations It can then be shown that, for any witness, the expected number of combinations in which it survives at each level is at most one.

9/11

slide-37
SLIDE 37

Application to counting

Theorem Let Π be a self-contained k-witness problem, and suppose that 0 < δ ≤ 1

2

and M ∈ N. Then there exists a randomised algorithm which makes at most 2O(k) log2 n M log(δ−1) calls to a deterministic decision oracle for Π, and

1 if the number of witnesses in the instance of Π is at most M, outputs

with probability at least 1 − δ the exact number of witnesses in the instance;

2 if the number of witnesses in the instance of Π is strictly greater than

M, always outputs “More than M.” Moreover, if there is an algorithm solving the decision version of Π in time g(k) · nO(1), then the expected running time of the randomised algorithm is bounded by 2O(k) · g(k) · nO(1) · M · log(δ−1).

10/11

slide-38
SLIDE 38

Application to counting

Theorem Let Π be a self-contained k-witness problem, and suppose that 0 < δ ≤ 1

2

and M ∈ N. Then there exists a randomised algorithm which makes at most 2O(k) log2 n M log(δ−1) calls to a deterministic decision oracle for Π, and

1 if the number of witnesses in the instance of Π is at most M, outputs

with probability at least 1 − δ the exact number of witnesses in the instance;

2 if the number of witnesses in the instance of Π is strictly greater than

M, always outputs “More than M.” Moreover, if there is an algorithm solving the decision version of Π in time g(k) · nO(1), then the expected running time of the randomised algorithm is bounded by 2O(k) · g(k) · nO(1) · M · log(δ−1).

At most f(k)nO(1) witnesses At least nk/(f(k)nO(1)) witnesses n k

( (

10/11

slide-39
SLIDE 39

Application to counting

Theorem Let Π be a self-contained k-witness problem, and suppose that 0 < δ ≤ 1

2

and M ∈ N. Then there exists a randomised algorithm which makes at most 2O(k) log2 n M log(δ−1) calls to a deterministic decision oracle for Π, and

1 if the number of witnesses in the instance of Π is at most M, outputs

with probability at least 1 − δ the exact number of witnesses in the instance;

2 if the number of witnesses in the instance of Π is strictly greater than

M, always outputs “More than M.” Moreover, if there is an algorithm solving the decision version of Π in time g(k) · nO(1), then the expected running time of the randomised algorithm is bounded by 2O(k) · g(k) · nO(1) · M · log(δ−1).

At most f(k)nO(1) witnesses At least nk/(f(k)nO(1)) witnesses n k

( (

?

10/11

slide-40
SLIDE 40

Open problems

Can the randomised enumeration process be derandomised?

11/11

slide-41
SLIDE 41

Open problems

Can the randomised enumeration process be derandomised? How common are self-contained k-witness problems whose decision version is FPT but for which the extension problem is W[1]-hard?

11/11

slide-42
SLIDE 42

Open problems

Can the randomised enumeration process be derandomised? How common are self-contained k-witness problems whose decision version is FPT but for which the extension problem is W[1]-hard? Can we improve the algorithm to bound the expected time between finding one witness and the next?

11/11

slide-43
SLIDE 43

Open problems

Can the randomised enumeration process be derandomised? How common are self-contained k-witness problems whose decision version is FPT but for which the extension problem is W[1]-hard? Can we improve the algorithm to bound the expected time between finding one witness and the next?

Thank you

11/11