Decision Trees Lecture 22 To left or to right 1 Decision Trees 2 - - PowerPoint PPT Presentation

decision trees
SMART_READER_LITE
LIVE PREVIEW

Decision Trees Lecture 22 To left or to right 1 Decision Trees 2 - - PowerPoint PPT Presentation

Decision Trees Lecture 22 To left or to right 1 Decision Trees 2 Decision Trees A different complexity measure 2 Decision Trees A different complexity measure Number of bits of input read 2 Decision Trees A different complexity measure


slide-1
SLIDE 1

Decision Trees

Lecture 22 To left or to right

1

slide-2
SLIDE 2

Decision Trees

2

slide-3
SLIDE 3

Decision Trees

A different complexity measure

2

slide-4
SLIDE 4

Decision Trees

A different complexity measure Number of bits of input read

2

slide-5
SLIDE 5

Decision Trees

A different complexity measure Number of bits of input read For simpler problems

2

slide-6
SLIDE 6

Decision Trees

A different complexity measure Number of bits of input read For simpler problems Interested in lower-bounds

2

slide-7
SLIDE 7

Decision Trees

A different complexity measure Number of bits of input read For simpler problems Interested in lower-bounds So even allow unbounded computational power

2

slide-8
SLIDE 8

Decision Trees

A different complexity measure Number of bits of input read For simpler problems Interested in lower-bounds So even allow unbounded computational power Simpler combinatorial structure (need not understand P vs. NP etc.)

2

slide-9
SLIDE 9

Decision Trees

3

slide-10
SLIDE 10

Decision Trees

Configuration graph of a computation, as it reads each bit

3

slide-11
SLIDE 11

Decision Trees

Configuration graph of a computation, as it reads each bit

x5 x2 x0 x2 x1 x5

3

slide-12
SLIDE 12

Decision Trees

Configuration graph of a computation, as it reads each bit For n-bit input, depth at most n

x5 x2 x0 x2 x1 x5

3

slide-13
SLIDE 13

Decision Trees

Configuration graph of a computation, as it reads each bit For n-bit input, depth at most n Some paths may be shorter

x5 x2 x0 x2 x1 x5

3

slide-14
SLIDE 14

Decision Trees

Configuration graph of a computation, as it reads each bit For n-bit input, depth at most n Some paths may be shorter DTree(L) = minalg A maxinput x TA,x where TA,x is the number of bits of x read by A

x5 x2 x0 x2 x1 x5

3

slide-15
SLIDE 15

Examples

4

slide-16
SLIDE 16

Examples

Simpler problems

4

slide-17
SLIDE 17

Examples

Simpler problems OR(x)=1 if at least one bit of x is 1

4

slide-18
SLIDE 18

Examples

Simpler problems OR(x)=1 if at least one bit of x is 1 PARITY(x)=1 if odd number of bits of x are 1

4

slide-19
SLIDE 19

Examples

Simpler problems OR(x)=1 if at least one bit of x is 1 PARITY(x)=1 if odd number of bits of x are 1 SATC(x) if x is a satisfying assignment for circuit (or circuit family) C

4

slide-20
SLIDE 20

Examples

Simpler problems OR(x)=1 if at least one bit of x is 1 PARITY(x)=1 if odd number of bits of x are 1 SATC(x) if x is a satisfying assignment for circuit (or circuit family) C CONNECTED(G) = 1 if G is the adjacency matrix

  • f a connected graph

4

slide-21
SLIDE 21

Examples

Simpler problems OR(x)=1 if at least one bit of x is 1 PARITY(x)=1 if odd number of bits of x are 1 SATC(x) if x is a satisfying assignment for circuit (or circuit family) C CONNECTED(G) = 1 if G is the adjacency matrix

  • f a connected graph

We are interested in showing DTree lower-bounds for these problems

4

slide-22
SLIDE 22

Adversary Argument

5

slide-23
SLIDE 23

Adversary Argument

Identifying one input which will cause a shallow decision tree to go wrong: Given a decision tree find inputs which lead it to the same leaf but must have different outputs

5

slide-24
SLIDE 24

Adversary Argument

Identifying one input which will cause a shallow decision tree to go wrong: Given a decision tree find inputs which lead it to the same leaf but must have different outputs e.g.: DTree(OR) = n (i.e., any correct decision tree will need to read all bits in the worst case)

5

slide-25
SLIDE 25

Adversary Argument

Identifying one input which will cause a shallow decision tree to go wrong: Given a decision tree find inputs which lead it to the same leaf but must have different outputs e.g.: DTree(OR) = n (i.e., any correct decision tree will need to read all bits in the worst case) Start with all inputs

5

slide-26
SLIDE 26

Adversary Argument

Identifying one input which will cause a shallow decision tree to go wrong: Given a decision tree find inputs which lead it to the same leaf but must have different outputs e.g.: DTree(OR) = n (i.e., any correct decision tree will need to read all bits in the worst case) Start with all inputs At first node restrict to inputs which answer 0, and consider the tree’ s behavior on such inputs

5

slide-27
SLIDE 27

Adversary Argument

Identifying one input which will cause a shallow decision tree to go wrong: Given a decision tree find inputs which lead it to the same leaf but must have different outputs e.g.: DTree(OR) = n (i.e., any correct decision tree will need to read all bits in the worst case) Start with all inputs At first node restrict to inputs which answer 0, and consider the tree’ s behavior on such inputs On second node, further restrict to inputs which answer 0

5

slide-28
SLIDE 28

Adversary Argument

Identifying one input which will cause a shallow decision tree to go wrong: Given a decision tree find inputs which lead it to the same leaf but must have different outputs e.g.: DTree(OR) = n (i.e., any correct decision tree will need to read all bits in the worst case) Start with all inputs At first node restrict to inputs which answer 0, and consider the tree’ s behavior on such inputs On second node, further restrict to inputs which answer 0 Before n nodes, set of inputs contain 0n and another input, no matter what bits where queried at the nodes

5

slide-29
SLIDE 29

Graph Connectivity

6

slide-30
SLIDE 30

Graph Connectivity

DTree(CONNECTED) = n(n-1)/2 (i.e., all possible edges)

6

slide-31
SLIDE 31

Graph Connectivity

DTree(CONNECTED) = n(n-1)/2 (i.e., all possible edges) If possible, answer “No,” but maintain the invariant that edges answered “Yes” plus unqueried edges form a connected graph.

6

slide-32
SLIDE 32

Graph Connectivity

DTree(CONNECTED) = n(n-1)/2 (i.e., all possible edges) If possible, answer “No,” but maintain the invariant that edges answered “Yes” plus unqueried edges form a connected graph. Yes edges by themselves are connected only if set of unqueried edges is empty

6

slide-33
SLIDE 33

Graph Connectivity

DTree(CONNECTED) = n(n-1)/2 (i.e., all possible edges) If possible, answer “No,” but maintain the invariant that edges answered “Yes” plus unqueried edges form a connected graph. Yes edges by themselves are connected only if set of unqueried edges is empty Otherwise some Yes edge was unforced: consider the cycle formed by an unqueried edge and the connected Yes graph

6

slide-34
SLIDE 34

Graph Connectivity

DTree(CONNECTED) = n(n-1)/2 (i.e., all possible edges) If possible, answer “No,” but maintain the invariant that edges answered “Yes” plus unqueried edges form a connected graph. Yes edges by themselves are connected only if set of unqueried edges is empty Otherwise some Yes edge was unforced: consider the cycle formed by an unqueried edge and the connected Yes graph Until then, graph can be connected or disconnected: by setting all unqueried edges to Yes or all to No

6

slide-35
SLIDE 35

Elusive Languages

7

slide-36
SLIDE 36

Elusive Languages

Languages which require the decision tree to read all the bits in the worst case

7

slide-37
SLIDE 37

Elusive Languages

Languages which require the decision tree to read all the bits in the worst case e.g.: OR, PARITY, CONNECTED

7

slide-38
SLIDE 38

Elusive Languages

Languages which require the decision tree to read all the bits in the worst case e.g.: OR, PARITY, CONNECTED Argued using adversary strategies

7

slide-39
SLIDE 39

Elusive Languages

Languages which require the decision tree to read all the bits in the worst case e.g.: OR, PARITY, CONNECTED Argued using adversary strategies Maj(x) = 1 iff #1s in x > #0s (assume |x| odd)

7

slide-40
SLIDE 40

Elusive Languages

Languages which require the decision tree to read all the bits in the worst case e.g.: OR, PARITY, CONNECTED Argued using adversary strategies Maj(x) = 1 iff #1s in x > #0s (assume |x| odd) Adversary strategy: alternately answer 0 and 1

7

slide-41
SLIDE 41

Monotonic Tree Circuits

8

slide-42
SLIDE 42

Monotonic Tree Circuits

Tree of AND gates and OR gates (monotonic)

8

slide-43
SLIDE 43

Monotonic Tree Circuits

Tree of AND gates and OR gates (monotonic) Each variable (leaf) used only once

8

slide-44
SLIDE 44

Monotonic Tree Circuits

Tree of AND gates and OR gates (monotonic) Each variable (leaf) used only once Is elusive

8

slide-45
SLIDE 45

Monotonic Tree Circuits

Tree of AND gates and OR gates (monotonic) Each variable (leaf) used only once Is elusive Answer so that each gate kept undetermined until all its leaf-descendants are queried

8

slide-46
SLIDE 46

Monotonic Tree Circuits

Tree of AND gates and OR gates (monotonic) Each variable (leaf) used only once Is elusive Answer so that each gate kept undetermined until all its leaf-descendants are queried Exercise

8

slide-47
SLIDE 47

Certificate Complexity

9

slide-48
SLIDE 48

Certificate Complexity

1-certificate

9

slide-49
SLIDE 49

Certificate Complexity

1-certificate For x s.t. L(x)=1, a subset of the bits of x which proves that L(x)=1 : c s.t. x|c⇒x∈L (i.e., no x’ s.t. L(x’)=0 and has the same values at those positions)

9

slide-50
SLIDE 50

Certificate Complexity

1-certificate For x s.t. L(x)=1, a subset of the bits of x which proves that L(x)=1 : c s.t. x|c⇒x∈L (i.e., no x’ s.t. L(x’)=0 and has the same values at those positions) 0-certificate: similarly for x∉L, c s.t. x|c⇒x∉L

9

slide-51
SLIDE 51

Certificate Complexity

1-certificate For x s.t. L(x)=1, a subset of the bits of x which proves that L(x)=1 : c s.t. x|c⇒x∈L (i.e., no x’ s.t. L(x’)=0 and has the same values at those positions) 0-certificate: similarly for x∉L, c s.t. x|c⇒x∉L Can be much lower than DTree(L) because for different x’ s different sets of bits can be used

9

slide-52
SLIDE 52

Certificate Complexity

1-certificate For x s.t. L(x)=1, a subset of the bits of x which proves that L(x)=1 : c s.t. x|c⇒x∈L (i.e., no x’ s.t. L(x’)=0 and has the same values at those positions) 0-certificate: similarly for x∉L, c s.t. x|c⇒x∉L Can be much lower than DTree(L) because for different x’ s different sets of bits can be used Produced by someone who has seen all bits of x

9

slide-53
SLIDE 53

Certificate Complexity

1-certificate For x s.t. L(x)=1, a subset of the bits of x which proves that L(x)=1 : c s.t. x|c⇒x∈L (i.e., no x’ s.t. L(x’)=0 and has the same values at those positions) 0-certificate: similarly for x∉L, c s.t. x|c⇒x∉L Can be much lower than DTree(L) because for different x’ s different sets of bits can be used Produced by someone who has seen all bits of x 1-Cert(L): maxx∈L minc: x|c⇒x∈L |c| (e.g. 1-Cert(OR) = 1)

9

slide-54
SLIDE 54

Certificate Complexity

1-certificate For x s.t. L(x)=1, a subset of the bits of x which proves that L(x)=1 : c s.t. x|c⇒x∈L (i.e., no x’ s.t. L(x’)=0 and has the same values at those positions) 0-certificate: similarly for x∉L, c s.t. x|c⇒x∉L Can be much lower than DTree(L) because for different x’ s different sets of bits can be used Produced by someone who has seen all bits of x 1-Cert(L): maxx∈L minc: x|c⇒x∈L |c| (e.g. 1-Cert(OR) = 1) 0-Cert(L): maxx∉L minc: x|c⇒x∉L |c| (e.g. 0-Cert(OR) = n)

9

slide-55
SLIDE 55

DTree(L) ≤ 0Cert(L) x 1Cert(L)

10

slide-56
SLIDE 56

DTree(L) ≤ 0Cert(L) x 1Cert(L)

A Decision tree algorithm

10

slide-57
SLIDE 57

DTree(L) ≤ 0Cert(L) x 1Cert(L)

A Decision tree algorithm Start with a pool of all 0-certificates and all 1-certificates (for various x)

10

slide-58
SLIDE 58

DTree(L) ≤ 0Cert(L) x 1Cert(L)

A Decision tree algorithm Start with a pool of all 0-certificates and all 1-certificates (for various x) While both pools non-empty

10

slide-59
SLIDE 59

DTree(L) ≤ 0Cert(L) x 1Cert(L)

A Decision tree algorithm Start with a pool of all 0-certificates and all 1-certificates (for various x) While both pools non-empty Pick a 0-certificate, and query all (remaining) bits in it

10

slide-60
SLIDE 60

DTree(L) ≤ 0Cert(L) x 1Cert(L)

A Decision tree algorithm Start with a pool of all 0-certificates and all 1-certificates (for various x) While both pools non-empty Pick a 0-certificate, and query all (remaining) bits in it If a good 0-certificate, terminate with 0. Else, remove all 0 and 1 certificates inconsistent with the bits revealed

10

slide-61
SLIDE 61

DTree(L) ≤ 0Cert(L) x 1Cert(L)

A Decision tree algorithm Start with a pool of all 0-certificates and all 1-certificates (for various x) While both pools non-empty Pick a 0-certificate, and query all (remaining) bits in it If a good 0-certificate, terminate with 0. Else, remove all 0 and 1 certificates inconsistent with the bits revealed One pool must be non-empty. Output the corresponding answer

10

slide-62
SLIDE 62

DTree(L) ≤ 0Cert(L) x 1Cert(L)

A Decision tree algorithm Start with a pool of all 0-certificates and all 1-certificates (for various x) While both pools non-empty Pick a 0-certificate, and query all (remaining) bits in it If a good 0-certificate, terminate with 0. Else, remove all 0 and 1 certificates inconsistent with the bits revealed One pool must be non-empty. Output the corresponding answer Clearly correct. Number of bits read?

10

slide-63
SLIDE 63

DTree(L) ≤ 0Cert(L) x 1Cert(L)

11

slide-64
SLIDE 64

DTree(L) ≤ 0Cert(L) x 1Cert(L)

An undetermined 0-certificate has at least one unrevealed conflicting bit with each undetermined 1-certificate

11

slide-65
SLIDE 65

DTree(L) ≤ 0Cert(L) x 1Cert(L)

An undetermined 0-certificate has at least one unrevealed conflicting bit with each undetermined 1-certificate Otherwise it is possible to have an x consistent with both those certificates!

11

slide-66
SLIDE 66

DTree(L) ≤ 0Cert(L) x 1Cert(L)

An undetermined 0-certificate has at least one unrevealed conflicting bit with each undetermined 1-certificate Otherwise it is possible to have an x consistent with both those certificates! Picking such a 0-certificate and querying reduces number of unrevealed bits of each remaining 1-certificate by at least 1

11

slide-67
SLIDE 67

DTree(L) ≤ 0Cert(L) x 1Cert(L)

An undetermined 0-certificate has at least one unrevealed conflicting bit with each undetermined 1-certificate Otherwise it is possible to have an x consistent with both those certificates! Picking such a 0-certificate and querying reduces number of unrevealed bits of each remaining 1-certificate by at least 1 Initially at most 1Cert(L) bits in each 1-certificate

11

slide-68
SLIDE 68

DTree(L) ≤ 0Cert(L) x 1Cert(L)

An undetermined 0-certificate has at least one unrevealed conflicting bit with each undetermined 1-certificate Otherwise it is possible to have an x consistent with both those certificates! Picking such a 0-certificate and querying reduces number of unrevealed bits of each remaining 1-certificate by at least 1 Initially at most 1Cert(L) bits in each 1-certificate So at most 1Cert(L) iterations

11

slide-69
SLIDE 69

DTree(L) ≤ 0Cert(L) x 1Cert(L)

An undetermined 0-certificate has at least one unrevealed conflicting bit with each undetermined 1-certificate Otherwise it is possible to have an x consistent with both those certificates! Picking such a 0-certificate and querying reduces number of unrevealed bits of each remaining 1-certificate by at least 1 Initially at most 1Cert(L) bits in each 1-certificate So at most 1Cert(L) iterations In each iteration at most 0Cert(L) bits queried

11

slide-70
SLIDE 70

DTree(L) ≤ 0Cert(L) x 1Cert(L)

12

slide-71
SLIDE 71

DTree(L) ≤ 0Cert(L) x 1Cert(L)

Example: AND-OR trees

12

slide-72
SLIDE 72

DTree(L) ≤ 0Cert(L) x 1Cert(L)

Example: AND-OR trees 0-certificate: enough variables so that can evaluate just one input wire for AND gates, and all input wires for OR gates

12

slide-73
SLIDE 73

DTree(L) ≤ 0Cert(L) x 1Cert(L)

Example: AND-OR trees 0-certificate: enough variables so that can evaluate just one input wire for AND gates, and all input wires for OR gates 1-certificate: enough variables so that can evaluate just one input wire for OR gates, and all input wires for AND gates

12

slide-74
SLIDE 74

DTree(L) ≤ 0Cert(L) x 1Cert(L)

Example: AND-OR trees 0-certificate: enough variables so that can evaluate just one input wire for AND gates, and all input wires for OR gates 1-certificate: enough variables so that can evaluate just one input wire for OR gates, and all input wires for AND gates If regular AND-OR tree, 0Cert(L) x 1Cert(L) = number

  • f leaves = DTree(L)

12

slide-75
SLIDE 75

Studying DTree(L)

13

slide-76
SLIDE 76

Studying DTree(L)

Various techniques

13

slide-77
SLIDE 77

Studying DTree(L)

Various techniques Arithmetization: write the boolean function for L as a multi-linear polynomial of n boolean variables. Then degree is a lower-bound on DTree(L)

13

slide-78
SLIDE 78

Studying DTree(L)

Various techniques Arithmetization: write the boolean function for L as a multi-linear polynomial of n boolean variables. Then degree is a lower-bound on DTree(L) Topological criterion for monotone functions: construct a simplicial complex corresponding to the monotone boolean function. If the simplicial complex “not collapsible” then DTree(L)=n

13

slide-79
SLIDE 79

Studying DTree(L)

Various techniques Arithmetization: write the boolean function for L as a multi-linear polynomial of n boolean variables. Then degree is a lower-bound on DTree(L) Topological criterion for monotone functions: construct a simplicial complex corresponding to the monotone boolean function. If the simplicial complex “not collapsible” then DTree(L)=n “Sensitivity” is a lower-bound on DTree(L)

13

slide-80
SLIDE 80

Studying DTree(L)

Various techniques Arithmetization: write the boolean function for L as a multi-linear polynomial of n boolean variables. Then degree is a lower-bound on DTree(L) Topological criterion for monotone functions: construct a simplicial complex corresponding to the monotone boolean function. If the simplicial complex “not collapsible” then DTree(L)=n “Sensitivity” is a lower-bound on DTree(L) Will explore some in exercises

13

slide-81
SLIDE 81

Randomized Decision Trees

14

slide-82
SLIDE 82

Randomized Decision Trees

Recall two views of randomized computation

14

slide-83
SLIDE 83

Randomized Decision Trees

Recall two views of randomized computation Randomly decide (based on fresh coin flips, and queries and answers so far) what variable to query

14

slide-84
SLIDE 84

Randomized Decision Trees

Recall two views of randomized computation Randomly decide (based on fresh coin flips, and queries and answers so far) what variable to query Flip all coins up front and then run a deterministic computation

14

slide-85
SLIDE 85

Randomized Decision Trees

Recall two views of randomized computation Randomly decide (based on fresh coin flips, and queries and answers so far) what variable to query Flip all coins up front and then run a deterministic computation i.e., randomly choose a (deterministic) decision tree

14

slide-86
SLIDE 86

Randomized Decision Trees

15

slide-87
SLIDE 87

Randomized Decision Trees

Complexity measure

15

slide-88
SLIDE 88

Randomized Decision Trees

Complexity measure Expected number of bits read, max over all inputs

15

slide-89
SLIDE 89

Randomized Decision Trees

Complexity measure Expected number of bits read, max over all inputs Note: No error allowed (Las Vegas)

15

slide-90
SLIDE 90

Randomized Decision Trees

Complexity measure Expected number of bits read, max over all inputs Note: No error allowed (Las Vegas) Random decision tree chosen independent of the (adversarial)

  • input. i.e., input chosen “before” the random choice

15

slide-91
SLIDE 91

Randomized Decision Trees

Complexity measure Expected number of bits read, max over all inputs Note: No error allowed (Las Vegas) Random decision tree chosen independent of the (adversarial)

  • input. i.e., input chosen “before” the random choice

Gets more power over the “adversary”

15

slide-92
SLIDE 92

Randomized Decision Trees

Complexity measure Expected number of bits read, max over all inputs Note: No error allowed (Las Vegas) Random decision tree chosen independent of the (adversarial)

  • input. i.e., input chosen “before” the random choice

Gets more power over the “adversary” Adversary can’t find a single pair of inputs that force many reads for all random choices

15

slide-93
SLIDE 93

Randomized Decision Trees

Complexity measure Expected number of bits read, max over all inputs Note: No error allowed (Las Vegas) Random decision tree chosen independent of the (adversarial)

  • input. i.e., input chosen “before” the random choice

Gets more power over the “adversary” Adversary can’t find a single pair of inputs that force many reads for all random choices Question: How to prove lower-bounds against randomization?

15

slide-94
SLIDE 94

Yao’ s Min-Max

16

slide-95
SLIDE 95

Yao’ s Min-Max

Interested in expected cost (running time)

16

slide-96
SLIDE 96

Yao’ s Min-Max

Interested in expected cost (running time)

(Deterministic) Algorithms Input s

TA,x

16

slide-97
SLIDE 97

Yao’ s Min-Max

Interested in expected cost (running time)

(Deterministic) Algorithms Input s

TA,x

0.125 0.25 0.5 0.125

a randomized algorithm

16

slide-98
SLIDE 98

Yao’ s Min-Max

Interested in expected cost (running time) Standard setting: Pick your randomized algorithm R; input x given adversarially

(Deterministic) Algorithms Input s

TA,x

0.125 0.25 0.5 0.125

a randomized algorithm

16

slide-99
SLIDE 99

Yao’ s Min-Max

Interested in expected cost (running time) Standard setting: Pick your randomized algorithm R; input x given adversarially (Or may allow random input: not useful to the adversary)

(Deterministic) Algorithms Input s

TA,x

0.125 0.25 0.5 0.125

a randomized algorithm

16

slide-100
SLIDE 100

Yao’ s Min-Max

Interested in expected cost (running time) Standard setting: Pick your randomized algorithm R; input x given adversarially (Or may allow random input: not useful to the adversary) Another setting: Given adversarial input distribution X; pick your deterministic algorithm A

(Deterministic) Algorithms Input s

TA,x

0.125 0.25 0.5 0.125

a randomized algorithm

16

slide-101
SLIDE 101

Yao’ s Min-Max

Interested in expected cost (running time) Standard setting: Pick your randomized algorithm R; input x given adversarially (Or may allow random input: not useful to the adversary) Another setting: Given adversarial input distribution X; pick your deterministic algorithm A (Allowing randomized algorithm no better)

(Deterministic) Algorithms Input s

TA,x

0.125 0.25 0.5 0.125

a randomized algorithm

16

slide-102
SLIDE 102

Yao’ s Min-Max

Interested in expected cost (running time) Standard setting: Pick your randomized algorithm R; input x given adversarially (Or may allow random input: not useful to the adversary) Another setting: Given adversarial input distribution X; pick your deterministic algorithm A (Allowing randomized algorithm no better) Both have the same expected cost!! (not

  • bvious: follows from LP duality)

(Deterministic) Algorithms Input s

TA,x

0.125 0.25 0.5 0.125

a randomized algorithm

16

slide-103
SLIDE 103

Yao’ s Min-Max

17

slide-104
SLIDE 104

minrand-alg R maxinput x EA←R[TA,x] = maxinp-distr X minalg A Ex←X[TA,x]

Yao’ s Min-Max

17

slide-105
SLIDE 105

minrand-alg R maxinput x EA←R[TA,x] = maxinp-distr X minalg A Ex←X[TA,x] Simpler, but useful direction: for any randomized alg R and any input-distribution X, maxinput x EA←R[TA,x] ≥ minalg A Ex←X[TA,x]

Yao’ s Min-Max

17

slide-106
SLIDE 106

minrand-alg R maxinput x EA←R[TA,x] = maxinp-distr X minalg A Ex←X[TA,x] Simpler, but useful direction: for any randomized alg R and any input-distribution X, maxinput x EA←R[TA,x] ≥ minalg A Ex←X[TA,x] If every algorithm A performs badly on an input-distribution X, then a randomized combination of those algorithms also perform badly on X. If R does badly on X, on some x in its support it does at least as badly (x depends on R)

Yao’ s Min-Max

17

slide-107
SLIDE 107

minrand-alg R maxinput x EA←R[TA,x] = maxinp-distr X minalg A Ex←X[TA,x] Simpler, but useful direction: for any randomized alg R and any input-distribution X, maxinput x EA←R[TA,x] ≥ minalg A Ex←X[TA,x] If every algorithm A performs badly on an input-distribution X, then a randomized combination of those algorithms also perform badly on X. If R does badly on X, on some x in its support it does at least as badly (x depends on R) Useful: Can show lower-bound for randomized algorithms via lower-bound on distributional complexity for deterministic algorithms

Yao’ s Min-Max

17