52
Lecture 20: The Adversary Method for Quantum Query Lower Bounds

Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Lecture 20:

The Adversary Methodfor Quantum Query Lower Bounds

Page 2: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Secret N-bit input string w

You can query a coordinate j to find out 𝑀𝑗

In fact, you can query superpositions…

Given access to 𝑄𝑀± which implements 𝑗 ↦ βˆ’1 𝑀𝑗|π‘—βŸ©

Trying to solve some fixed decision problem πœ‘ on w

Example: πœ‘ = β€œOR”, deciding if w has at least one 1

Think of πœ‘ = (π˜π„π’, 𝐍𝐎), where YES and NO are subsets of strings.In β€œOR” example, YES = {all N-bit strings with at least one 1}, NO = {00βˆ™βˆ™βˆ™0}

If π˜π„π’ βˆͺ 𝐍𝐎 = {all strings}, πœ‘ is called β€œtotal”; otherwise, πœ‘ is β€œpartial/promise”

Quantum query model: recap

Cost: only the number of uses of 𝑄𝑀±

Grover’s Algorithm: Solves πœ‘ = β€œOR” with cost ≲ 𝑁

Page 3: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

[Bennett–Bernstein–Brassard–Vazirani ca. ’96]:

Proved a cost lower bound for πœ‘ = β€œOR”: ≳ 𝑁 queries are necessary.

They called their technique the Hybrid Method.

How to prove Lower Bounds on quantum query algorithms…

[Beals–Buhrman–Cleve–Mosca–de Wolf ’98]: The Polynomial Method.

[Ambainis ’00]: The (Basic) Adversary Method.

[Many groups]: Variants on the Adversary Method.

[HΓΈyer–Lee–Špalek ’07]: β€œNegative-weights”, aka General Adversary Method.

[Reichardt ’09]: The General Adversary Method is optimal β€” there is always a matching upper bound (query algorithm)!

Page 4: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

A generic T-query algorithm:

log(N)-qubitquery register

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’β€œworkspace”

qubits

Secret N-bit input string w defines the behavior of 𝑄𝑀±

Page 5: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

β€’β€’β€’

An algorithm supposedly solving πœ‘ = (π˜π„π’, 𝐍𝐎):

Secret N-bit input string w defines the behavior of 𝑄𝑀±

πœ“π‘€0 πœ“π‘€

1 πœ“π‘€π‘‡βˆ’1 πœ“π‘€

𝑇

Page 6: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

β€’β€’β€’

An algorithm supposedly solving πœ‘ = (π˜π„π’, 𝐍𝐎):

πœ“π‘€0 πœ“π‘€

1 πœ“π‘€π‘‡βˆ’1 πœ“π‘€

𝑇

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

Page 7: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

An algorithm supposedly solving πœ‘ = (π˜π„π’, 𝐍𝐎):

πœ“π‘€0

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

Clearly: πœ“π’š0 = |πœ“π’›

0⟩; πœ“π’š0 πœ“π’›

0 = 1i.e.,

Page 8: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

An algorithm supposedly solving πœ‘ = (π˜π„π’, 𝐍𝐎):

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

πœ“π‘€π‘‡πœ“π’š

0 πœ“π’›0 = 1

Page 9: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

An algorithm supposedly solving πœ‘ = (π˜π„π’, 𝐍𝐎):

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

πœ“π’šπ‘‡ πœ“π’›

𝑇 β‰  1Clearly:πœ“π’š0 πœ“π’›

0 = 1

Algorithm must be able to discriminate between

|πœ“π’šπ‘‡βŸ© and |πœ“π’›

π‘‡βŸ© with high probability,

because it must β€œaccept” y and β€œreject” z.

Page 10: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

An algorithm supposedly solving πœ‘ = (π˜π„π’, 𝐍𝐎):

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

πœ“π’šπ‘‡ πœ“π’›

𝑇 ≀ .99In fact, we better haveπœ“π’š0 πœ“π’›

0 = 1

Algorithm must be able to discriminate between

|πœ“π’šπ‘‡βŸ© and |πœ“π’›

π‘‡βŸ© with high probability,

because it must β€œaccept” y and β€œreject” z.

Page 11: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

An algorithm supposedly solving πœ‘ = (π˜π„π’, 𝐍𝐎):

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

πœ“π’šπ‘‡ πœ“π’›

𝑇 ≀ .99In fact, we better haveπœ“π’š0 πœ“π’›

0 = 1

Algorithm must be able to discriminate between

|πœ“π’šπ‘‡βŸ© and |πœ“π’›

π‘‡βŸ© with high probability,

because it must β€œaccept” y and β€œreject” z.

Recall Lecture 4.5, β€œDiscriminating Two Qubits”:

Given two quantum states |π’–βŸ© and |π’—βŸ©,the probability with which they can be distinguished by anyquantum algorithm is a function of the angle between them.

Page 12: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

πœ“π’šπ‘‡ πœ“π’›

𝑇 ≀ .99We haveπœ“π’š0 πœ“π’›

0 = 1

Possible idea: define Progress𝑑 = πœ“π’šπ‘‘ πœ“π’›

𝑑

Suppose we can show Progress𝑑 βˆ’ Progress𝑑+1 ≀ 𝛿

This would imply: 𝑇 β‰₯ .01/𝛿 ☺

Page 13: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

π‘ˆ0

𝑄𝑀±

π‘ˆ1

𝑄𝑀± 𝑄𝑀

Β±

π‘ˆπ‘‡

β€’β€’β€’

0000000

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

Possible idea: define Progress𝑑 = πœ“π’šπ‘‘ πœ“π’›

𝑑

Suppose we can show Progress𝑑 βˆ’ Progress𝑑+1 ≀ 𝛿

This would imply: 𝑇 β‰₯ .01/𝛿 ☺

Note: Applying unitary Ut does not affect πœ“π’šπ‘‘ πœ“π’›

𝑑

So suffices to analyze how 𝑄𝑀± affects Progress

Page 14: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

An β€œadversary” picks some π’š ∈ π˜π„π’ and some 𝒛 ∈ 𝐍𝐎and considers running your algorithm with 𝑀 = π’š or with 𝑀 = 𝒛.

Possible idea: define Progress𝑑 = πœ“π’šπ‘‘ πœ“π’›

𝑑

Suppose we can show Progress𝑑 βˆ’ Progress𝑑+1 ≀ 𝛿

This would imply: 𝑇 β‰₯ .01/𝛿 ☺

Note: Applying unitary Ut does not affect πœ“π’šπ‘‘ πœ“π’›

𝑑

So suffices to analyze how 𝑄𝑀± affects Progress

This is a good idea, but a little too simple

Doesn’t suffice to focus on a single π’š ∈ π˜π„π’ and a single 𝒛 ∈ 𝐍𝐎

If it did, would show that many queries needed to distinguish 𝑀 = π’š from 𝑀 = 𝒛

But this only requires 1 query: since π’š β‰  𝒛, there exists j such that π’šπ‘— β‰  𝒛𝑗

Need to have a bunch of π’šβ€™s versus a bunch of 𝒛’s

Page 15: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

dist(y, z) = Hamming distance, # of coordinates where y, z differ

we’ll show β‰₯ .005 π‘š π‘šβ€²

[Ambainis ’00]Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Page 16: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Example use #1: πœ‘ = β€œOR” (Decision-Grover)

Take 𝒀 = {000001, 000010, 000100, 001000, 010000, 100000}.

Take 𝒁 = {000000}. (Well, at least for N = 6.)

π‘š = 1, π‘šβ€² = 𝑁 β‡’ Q(πœ‘) ≳ 𝑁 ☺

Page 17: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Example use #2: πœ‘: Decide if w has at least k 1’s, or less than k 1’s

Take 𝒀 = {all strings with exactly k 1’s}.

Take 𝒁 = {all strings with exactly π‘˜ βˆ’ 1 1’s}.

π‘š = π‘˜, π‘šβ€² = 𝑁 βˆ’ π‘˜ + 1

β‡’ Q(πœ‘) ≳ π‘˜(𝑁 βˆ’ π‘˜ + 1), which is ≳ π‘˜π‘ for π‘˜ ≀𝑁

2

Page 18: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Example use #3:

AND

OR OR OR

𝑁

𝑁

πœ‘

𝑀1𝑀2 𝑀 𝑁 𝑀𝑁

YES = strings with a 1 in each β€˜block’NO = strings with a block of all 0’s

Y= strings with exactly one 1 per block

Z= strings with exactly one all-0’s block,all other blocks having exactly one 1

π‘š = 𝑁, π‘šβ€² = 𝑁 β‡’ Q(πœ‘) ≳ 𝑁

This lower bound is sharp, and not known to be attainable by the β€œPolynomial Method”

Page 19: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Proof: Define R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

(These are particularly challenging pairs of inputs for the algorithm:the algorithm needs to give different answers on them,

but there is only a single coordinate where they are different.)

Page 20: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Proof: Define R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑Define , where |πœ“π‘€π‘‘ ⟩ is state after tth query, on input w

We have Progress0 = |𝑅| and Progress𝑇 ≀ .99|𝑅|

the latter because πœ“π’šπ‘‡ πœ“π’›

𝑇 ≀ .99 must hold for all π’š ∈ 𝒀, 𝒛 ∈ 𝒁

Page 21: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Proof: Define

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑Define , where |πœ“π‘€π‘‘ ⟩ is state after tth query, on input w

We have Progress0 = |𝑅| and Progress𝑇 ≀ .99|𝑅|

Claim: Progress𝑑 βˆ’ Progress𝑑+1 ≀2

π‘šπ‘šβ€²|𝑅| for all t.

β‡’ T β‰₯ .005 π‘š π‘šβ€², as desired.

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Page 22: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Claim: Progress𝑑 βˆ’ Progress𝑑+1 ≀2

π‘šπ‘šβ€²|𝑅| for all t.

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Page 23: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Claim: Progress𝑑 βˆ’ Progress𝑑+1 ≀

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

Hence 𝑅 β‰₯ π‘š |𝒀|

Similarly 𝑅 β‰₯ π‘šβ€²|𝒁|

So 2 𝑅 β‰₯ π‘š|𝒀| + π‘šβ€²|𝒁|

Claim is even stronger if RHS is 1

π‘š π‘šβ€²(π‘š 𝒀 +π‘šβ€² 𝒁 )

π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’=

2

π‘šπ‘šβ€²|𝑅| for all t.

Page 24: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Recall: Unitaries don’t affect Progress, just the 𝑄𝑀± queries.

Consider any pair π’š, 𝒛 ∈ 𝑅

Fix any t and t+1 (β€œbefore” and β€œafter”)

They differ on some coordinate j*

Page 25: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ©

π‘ˆ0

π‘„π’šΒ±

π‘ˆ1

π‘„π’šΒ± π‘„π’š

Β±

π‘ˆπ‘‡

β€’β€’β€’

β€œAfter”: |πœ“π’šπ‘‘+1⟩

Page 26: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ©

π‘„π’šΒ± π‘„π’š

Β± π‘„π’šΒ±β€’

β€’β€’

|πœ“π’šπ‘‘βŸ© |πœ“π’š

𝑑+1⟩

β€œAfter”: |πœ“π’šπ‘‘+1⟩

Page 27: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ© = 1 βŠ— stuff1 + 2 βŠ— stuff2 +β‹―+ 𝑁 βŠ— stuff𝑁

queryregister

workspaceregister

We have collected like terms based on the query register.

Let |πœ™π‘—βŸ© be a unit vector

in the direction of (stuff𝑗)

β€œAfter”: |πœ“π’šπ‘‘+1⟩

Page 28: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ© = 𝛼1 1 βŠ— |πœ™1⟩ + 𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ 𝛼𝑁 𝑁 βŠ— |πœ™π‘βŸ©

We have collected like terms based on the query register.

Let |πœ™π‘—βŸ© be a unit vector

in the direction of (stuff𝑗)

β€œAfter”: |πœ“π’šπ‘‘+1⟩

Page 29: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ© = 𝛼1 1 βŠ— |πœ™1⟩ + 𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ 𝛼𝑁 𝑁 βŠ— |πœ™π‘βŸ© Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.

β€œAfter”: |πœ“π’šπ‘‘+1⟩

Page 30: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ© = 𝛼1 1 βŠ— |πœ™1⟩ + 𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ 𝛼𝑁 𝑁 βŠ— |πœ™π‘βŸ©

π‘„π’šΒ±

= βˆ’1 π’š1𝛼1 1 βŠ— |πœ™1⟩ + βˆ’1 π’š2𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ βˆ’1 π’šπ‘π›Όπ‘ 𝑁 βŠ— |πœ™π‘βŸ©

The jth amplitude is multiplied by βˆ’1 π’šπ‘—

Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.

β€œAfter”: |πœ“π’šπ‘‘+1⟩

Page 31: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ©

β€œAfter”: |πœ“π’šπ‘‘+1⟩

= 𝛼1 1 βŠ— |πœ™1⟩ + 𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ 𝛼𝑁 𝑁 βŠ— |πœ™π‘βŸ©

= βˆ’1 π’š1𝛼1 1 βŠ— |πœ™1⟩ + βˆ’1 π’š2𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ βˆ’1 π’šπ‘π›Όπ‘ 𝑁 βŠ— |πœ™π‘βŸ©

Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.= 𝛽1 1 βŠ— πœ’1 + 𝛽2 2 βŠ— πœ’2 +β‹―+ 𝛽𝑁 𝑁 βŠ— |πœ’π‘βŸ©

= βˆ’1 𝒛1𝛽1 1 βŠ— |πœ’1⟩ + βˆ’1 𝒛2 𝛽2 2 βŠ— |πœ’2⟩ + β‹―+ βˆ’1 𝒛𝑁𝛽𝑁 𝑁 βŠ— |πœ’π‘βŸ©

|πœ“π’›π‘‘βŸ©

|πœ“π’›π‘‘+1⟩

Page 32: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ©

β€œAfter”: |πœ“π’šπ‘‘+1⟩

= 𝛼1 1 βŠ— |πœ™1⟩ + 𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ 𝛼𝑁 𝑁 βŠ— |πœ™π‘βŸ©

= βˆ’1 π’š1𝛼1 1 βŠ— |πœ™1⟩ + βˆ’1 π’š2𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ βˆ’1 π’šπ‘π›Όπ‘ 𝑁 βŠ— |πœ™π‘βŸ©

Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.= 𝛽1 1 βŠ— πœ’1 + 𝛽2 2 βŠ— πœ’2 +β‹―+ 𝛽𝑁 𝑁 βŠ— |πœ’π‘βŸ©

= βˆ’1 𝒛1𝛽1 1 βŠ— |πœ’1⟩ + βˆ’1 𝒛2 𝛽2 2 βŠ— |πœ’2⟩ + β‹―+ βˆ’1 𝒛𝑁𝛽𝑁 𝑁 βŠ— |πœ’π‘βŸ©

|πœ“π’›π‘‘βŸ©

|πœ“π’›π‘‘+1⟩

βŸ¨πœ“π‘¦π‘‘ |πœ“π’›

π‘‘βŸ© = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

These signs are all the same β€” except for in coordinate j*

Page 33: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”: |πœ“π’šπ‘‘βŸ©

β€œAfter”: |πœ“π’šπ‘‘+1⟩

= 𝛼1 1 βŠ— |πœ™1⟩ + 𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ 𝛼𝑁 𝑁 βŠ— |πœ™π‘βŸ©

= βˆ’1 π’š1𝛼1 1 βŠ— |πœ™1⟩ + βˆ’1 π’š2𝛼2 2 βŠ— |πœ™2⟩ + β‹―+ βˆ’1 π’šπ‘π›Όπ‘ 𝑁 βŠ— |πœ™π‘βŸ©

Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.= 𝛽1 1 βŠ— πœ’1 + 𝛽2 2 βŠ— πœ’2 +β‹―+ 𝛽𝑁 𝑁 βŠ— |πœ’π‘βŸ©

= βˆ’1 𝒛1𝛽1 1 βŠ— |πœ’1⟩ + βˆ’1 𝒛2 𝛽2 2 βŠ— |πœ’2⟩ + β‹―+ βˆ’1 𝒛𝑁𝛽𝑁 𝑁 βŠ— |πœ’π‘βŸ©

|πœ“π’›π‘‘βŸ©

|πœ“π’›π‘‘+1⟩

βŸ¨πœ“π‘¦π‘‘ |πœ“π’›

π‘‘βŸ© = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

βŸ¨πœ“π‘¦π‘‘+1|πœ“π’›

𝑑+1⟩ = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―βˆ’ π›Όπ‘—βˆ—π›½π‘—βˆ— πœ™π‘—βˆ— πœ’π‘—βˆ— +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

Page 34: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”:

β€œAfter”:

Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.

βŸ¨πœ“π‘¦π‘‘ |πœ“π’›

π‘‘βŸ© = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

βŸ¨πœ“π‘¦π‘‘+1|πœ“π’›

𝑑+1⟩ = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―βˆ’ π›Όπ‘—βˆ—π›½π‘—βˆ— πœ™π‘—βˆ— πœ’π‘—βˆ— +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

Page 35: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”:

β€œAfter”:

Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.

βŸ¨πœ“π‘¦π‘‘+1|πœ“π’›

𝑑+1⟩ = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―βˆ’ π›Όπ‘—βˆ—π›½π‘—βˆ— πœ™π‘—βˆ— πœ’π‘—βˆ— +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

βŸ¨πœ“π‘¦π‘‘ |πœ“π’›

π‘‘βŸ© = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 = 2 π›Όπ‘—βˆ—π›½π‘—βˆ— πœ™π‘—βˆ— πœ’π‘—βˆ— πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀ 2 π›Όπ‘—βˆ— βˆ™ π›½π‘—βˆ—β‡’

Page 36: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”:

β€œAfter”:

Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.

βŸ¨πœ“π‘¦π‘‘+1|πœ“π’›

𝑑+1⟩ = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―βˆ’ π›Όπ‘—βˆ—π›½π‘—βˆ— πœ™π‘—βˆ— πœ’π‘—βˆ— +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

βŸ¨πœ“π‘¦π‘‘ |πœ“π’›

π‘‘βŸ© = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀

(triangle inequality)

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀ 2 π›Όπ‘—βˆ— βˆ™ π›½π‘—βˆ—

Page 37: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

β€œBefore”:

β€œAfter”:

Each |πœ™π‘—βŸ© is unit,

and σ𝑗 𝛼𝑗2= 1.

βŸ¨πœ“π‘¦π‘‘+1|πœ“π’›

𝑑+1⟩ = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―βˆ’ π›Όπ‘—βˆ—π›½π‘—βˆ— πœ™π‘—βˆ— πœ’π‘—βˆ— +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

βŸ¨πœ“π‘¦π‘‘ |πœ“π’›

π‘‘βŸ© = 𝛼1𝛽1βŸ¨πœ™1 πœ’1 + 𝛼2𝛽2βŸ¨πœ™2 πœ’2 +β‹―+ π›Όπ‘π›½π‘βŸ¨πœ™π‘|πœ’π‘βŸ©

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀ 2 π›Όπ‘—βˆ— βˆ™ π›½π‘—βˆ—

Page 38: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀ 2 π›Όπ‘—βˆ— βˆ™ π›½π‘—βˆ—

A math trick: For any real π‘Ž, 𝑏, and β„Ž > 0: 2π‘Žπ‘ ≀ β„Žπ‘Ž2 + Ξ€1 β„Ž 𝑏2

Proof 1: AM-GM inequality: π‘Žπ‘ is the geometric mean of β„Žπ‘Ž2 and Ξ€1 β„Ž 𝑏2

Proof 2: Certainly: 0 ≀ β„Ž π‘Ž βˆ’ Ξ€1 β„Ž 𝑏2

Expanding: 0 ≀ β„Žπ‘Ž2 + Ξ€1 β„Ž 𝑏2 βˆ’ 2π‘Žπ‘

Page 39: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀

A math trick: For any real π‘Ž, 𝑏, and β„Ž > 0: 2π‘Žπ‘ ≀ β„Žπ‘Ž2 + Ξ€1 β„Ž 𝑏2

Apply this above, with π‘Ž = π›Όπ‘—βˆ— , 𝑏 = π›½π‘—βˆ— , β„Ž =π‘šβ€²

π‘šβ€²

2 π›Όπ‘—βˆ— βˆ™ π›½π‘—βˆ—

Page 40: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀

A math trick: For any real π‘Ž, 𝑏, and β„Ž > 0: 2π‘Žπ‘ ≀ β„Žπ‘Ž2 + Ξ€1 β„Ž 𝑏2

Apply this above, with π‘Ž = π›Όπ‘—βˆ— , 𝑏 = π›½π‘—βˆ— , β„Ž =π‘šβ€²

π‘šβ€²

π‘šβ€²

π‘šβ€² π›Όπ‘—βˆ—2

+π‘šβ€²

π‘šβ€² π›½π‘—βˆ—2

Page 41: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀

Finally, coordinate j* really depends on the pair π’š, 𝒛 , so let’s write it as

j* π’š, 𝒛

π‘šβ€²

π‘šβ€² π›Όπ‘—βˆ—2

+π‘šβ€²

π‘šβ€² π›½π‘—βˆ—2

Page 42: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j*

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 ≀

Finally, coordinate j* really depends on the pair π’š, 𝒛 , so let’s write it as

j* π’š, 𝒛

π‘šβ€²

π‘šβ€² π›Όπ‘—βˆ— π’š,𝒛2

+π‘šβ€²

π‘šβ€² π›½π‘—βˆ— π’š,𝒛2

Page 43: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j* π’š, 𝒛

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 β‰€π‘šβ€²

π‘šβ€² π›Όπ‘—βˆ— π’š,𝒛2

+π‘šβ€²

π‘šβ€² π›½π‘—βˆ— π’š,𝒛2

Also, to be scrupulous about notation, the 𝛼𝑗 ’s come from |πœ“π’šπ‘‘βŸ©, and thus depend on y.

Similarly, the 𝛽𝑗 ’s depend on z.

Page 44: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Consider any pair π’š, 𝒛 ∈ 𝑅Fix any t and t+1 They differ on some coordinate j* π’š, 𝒛

πœ“π‘¦π‘‘ πœ“π’›

𝑑 βˆ’ πœ“π‘¦π‘‘+1 πœ“π’›

𝑑+1 β‰€π‘šβ€²

π‘šβ€² π›Όπ‘—βˆ— π’š,π’›π’š 2

+π‘šβ€²

π‘šβ€² π›½π‘—βˆ— π’š,𝒛𝒛

2

Summing overall π’š, 𝒛 ∈ 𝑅:

Progress𝑑 βˆ’ Progress𝑑+1 ≀

π’š,𝒛 βˆˆπ‘…

π‘šβ€²

π‘šβ€²π›Όπ‘—βˆ— π’š,𝒛

π’š 2+

π’š,𝒛 βˆˆπ‘…

π‘šβ€²

π‘šβ€²π›½π‘—βˆ— π’š,𝒛

𝒛2

Final claim:

π’š,𝒛 βˆˆπ‘…

π›Όπ‘—βˆ— π’š,π’›π’š 2

≀ |𝒀| (and similarly for the second term, completing the proof)

Page 45: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Progress𝑑 =

π’š,𝒛 βˆˆπ‘…

πœ“π’šπ‘‘ πœ“π’›

𝑑R = { (π’š, 𝒛) : dist(y, z) = 1 } βŠ† 𝒀 Γ— 𝒁

Claim: Progress𝑑 βˆ’ Progress𝑑+1 β‰€π‘šβ€²

π‘šβ€²π’€ +

π‘šβ€²

π‘šβ€²π’

Final claim:

π’š,𝒛 βˆˆπ‘…

π›Όπ‘—βˆ— π’š,π’›π’š 2

≀ |𝒀|

Consider any pair π’š, 𝒛 ∈ 𝑅 They differ on some coordinate j* π’š, 𝒛Fix any t and t+1

For each π’š ∈ 𝒀, if you go over all z such that π’š, 𝒛 ∈ 𝑅, the associated j* π’š, 𝒛 are distinct.

So for each π’š ∈ 𝒀, you’re summing a subset of all possible π›Όπ‘—π’š 2

. Which is at most 1.

So indeed the overall sum is at most |𝒀|.

Page 46: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

[Ambainis ’00]Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Page 47: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

[Ambainis ’00]Super-Basic Adversary Method:

For πœ‘ = (YES, NO), suppose 𝒀 βŠ† YES, 𝒁 βŠ† NO are such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with dist(y, z) = 1

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with dist(y, z) = 1

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ π‘šπ‘šβ€².

Page 48: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

[Ambainis ’00] Basic Adversary Method:

For πœ‘ = (YES, NO), let 𝒀 βŠ† YES, 𝒁 βŠ† NO.

Let 𝑅 βŠ† 𝒀 Γ— 𝒁 be a set of β€œhard-to-distinguish” pairs, such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with π’š, 𝒛 ∈ 𝑅

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with π’š, 𝒛 ∈ 𝑅

Also, for each coordinate j, define Rj = π’š, 𝒛 ∈ 𝑅 ∢ π’šπ‘— β‰  𝒛𝑗

(namely, all the pairs distinguishable by querying coordinate j).

Assume:

β€’ for each π’š ∈ 𝒀 and j, there are at most β„“ strings 𝒛 ∈ 𝒁 with π’š, 𝒛 ∈ 𝑅𝑗

β€’ for each 𝒛 ∈ 𝒁 and j, there are at most β„“β€² strings π’š ∈ 𝒀 with π’š, 𝒛 ∈ 𝑅𝑗

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ Ξ€π‘š π‘šβ€² β„“ β„“β€².

Page 49: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Proof: Exercise!

(Only tiny modifications needed to the proof we saw.)

Exercise #2: Recall that Grover Search only needs ≲ ΀𝑁 π‘˜ queries to find a 1if it’s promised there are at least k 1’s. (Assume π‘˜ ≀ ΀𝑁 2.)

Use the Basic Adversary Method to show ≳ ΀𝑁 π‘˜ queries are necessary for the promise problem:

πœ‘ = β€œdecide if w has no 1’s, or at least k 1’s”.

Page 50: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

Basic Adversary Method:

For πœ‘ = (YES, NO), let 𝒀 βŠ† YES, 𝒁 βŠ† NO.

Let 𝑅 βŠ† 𝒀 Γ— 𝒁 be a set of β€œhard-to-distinguish” pairs, such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with π’š, 𝒛 ∈ 𝑅

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with π’š, 𝒛 ∈ 𝑅

Also, for each coordinate j, define Rj = π’š, 𝒛 ∈ 𝑅 ∢ π’šπ‘— β‰  𝒛𝑗

(namely, all the pairs distinguishable by querying coordinate j).

Assume:

β€’ for each π’š ∈ 𝒀 and j, there are at most β„“ strings 𝒛 ∈ 𝒁 with π’š, 𝒛 ∈ 𝑅𝑗

β€’ for each 𝒛 ∈ 𝒁 and j, there are at most β„“β€² strings π’š ∈ 𝒀 with π’š, 𝒛 ∈ 𝑅𝑗

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ Ξ€π‘š π‘šβ€² β„“ β„“β€².

Page 51: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

General (β€œNegative-Weights”) Adversary Method:

For πœ‘ = (YES, NO), let 𝒀 βŠ† YES, 𝒁 βŠ† NO.

Let 𝑅 βŠ† 𝒀 Γ— 𝒁 be a set of β€œhard-to-distinguish” pairs, such that:

β€’ for each π’š ∈ 𝒀, there are at least π‘š strings 𝒛 ∈ 𝒁 with π’š, 𝒛 ∈ 𝑅

β€’ for each 𝒛 ∈ 𝒁, there are at least π‘šβ€² strings π’š ∈ 𝒀 with π’š, 𝒛 ∈ 𝑅

Also, for each coordinate j, define Rj = π’š, 𝒛 ∈ 𝑅 ∢ π’šπ‘— β‰  𝒛𝑗

(namely, all the pairs distinguishable by querying coordinate j).

Assume:

β€’ for each π’š ∈ 𝒀 and j, there are at most β„“ strings 𝒛 ∈ 𝒁 with π’š, 𝒛 ∈ 𝑅𝑗

β€’ for each 𝒛 ∈ 𝒁 and j, there are at most β„“β€² strings π’š ∈ 𝒀 with π’š, 𝒛 ∈ 𝑅𝑗

Then Q(πœ‘), the quantum query complexity of πœ‘, is ≳ Ξ€π‘š π‘šβ€² β„“ β„“β€².

Page 52: Lecture 20: The Adversary Methododonnell/quantum18/lecture20.pdfΒ Β· Lecture 20: The Adversary Method for Quantum Query Lower Bounds. Secret N-bit input string w You can query a coordinate

General (β€œNegative-Weights”) Adversary Method:

A story for another time!