Quantum Computing (Fall 2013) Instructor: Shengyu Zhang. Lecture 8 Quantum communication complexity: A recent protocol The original plan was to talk about lower bounds on quantum communication complexity, but it may again well fall into the category of being “too difficult”. So after some reflections, I decided to change to something lighter but probably with a broader range of applications. 1. Fourier analysis over {π, π}π In computer science, we often run into real-valued functions defined on {0,1}π . (Name some examples yourself; you’d find that actually it’s even hard to think of any common function we studied that doesn’t fall into this category.) These functions form a linear space {π: {0,1}π → β} It is easily seen that the addition of any two real-valued functions on the same domain gives another real-valued function on the domain. A standard set of basis of this space contains the following ones: {ππ : π ∈ {0,1}π } where ππ (π₯) = { 1 ππ π₯ = π . 0 ππ π₯ ≠ π Actually these basis functions, when scaled up by a factor of √2π , are orthonormal under the inner product defined by 〈π, π〉 = ππ₯∈{0,1}π [π(π₯)π(π₯)] where all expectations in this note are over uniform distribution unless stated otherwise. Namely, we have that 〈ππ , ππ‘ 〉 = πΏπ π‘ . There is actually another orthonormal basis defined by characters. {ππΌ : πΌ ∈ {0,1}π } where ππΌ (π₯) = (−1)πΌ⋅π₯ Exercise. Verify that these character functions form an orthonormal basis. The new basis is usually called the Fourier basis. Any real-valued function can be written in the Fourier basis: π = ∑ πΜ(πΌ)ππΌ , πΌ and the coefficients πΜ(πΌ) are called Fourier coefficients, computed by πΜ(πΌ) = ππ₯ [π(π₯)ππΌ (π₯)]. One useful fact about Fourier transform is that the multiplication in one domain becomes the convolution in the other. For π, π: {0,1}π → β, their convolution π β π is defined by (π β π)(π₯) = ππ¦ [π(π¦)π(π₯ + π¦)] = ππ¦ [π(π₯ + π¦)π(π¦)] In the Fourier domain, the definition is similar except for a normalization factor. (πΜ β πΜ)(πΌ) = ∑ πΜ(π½)πΜ(πΌ + π½) = ∑ πΜ(πΌ + π½)πΜ(π½). π½ π½ Μ = πΜ β πΜ, πΜ Fact. ππ β π = πΜπΜ. One can define the βπ -norm for πΜ as usual: 1/π π βπΜββ = (∑|πΜ(πΌ)| ) π πΌ When π = 0, the quantity is the Fourier sparsity of π, i.e. the number of nonzero Fourier coefficients. Similarly, we can define an πΏπ -norm for π but note that it’s more convenient to use the expectation instead of summation. βπβπΏπ = (ππ₯ [|π(π₯)|π ])1/π An elegant fact is that βπβπΏ2 = βπΜβ . β 2 In computer science, we run into Boolean functions a lot. There are two ways of writing expressing a Boolean value---{0,1} or {+1, −1}. Note that the group β€2 ≅ ({0,1}, ⊕) ≅ ({+1, −1}, ⋅ ), where ⊕ and ⋅ are the XOR and multiplication, respectively. These two ways of representing a Boolean value can be exchanged easily as follows. Suppose that we use π for {0,1}-valued function and π for the same function but with range {+1, −1}, then π = (1 − π)/2, and π = 1 − 2π. For Boolean functions with range {+1, −1}, we have the following fact. Parseval Identity. For any function π: {0,1}π → {+1, −1}, we have ∑πΌ πΜ(πΌ)2 = 1. So one can view πΜ(πΌ)2 as a distribution over all πΌ ∈ {0,1}π . 2. π½π -degree, discrete derivatives For Boolean functions π: {0,1}π → {0,1}, we can either view them as a polynomial over β or a polynomial over π½2 . Exercise. For the Parity function of 2 bits, write down it as a polynomial π ∈ β[π₯1 , π₯2 ] and π ∈ π½2 [π₯1 , π₯2 ]. Whenever we have a polynomial, we can talk about its degree. Note from the above example that the degree of π as a polynomial over β or that over π½2 are different. We denote by deg(π) and deg 2 (π) the degrees π as a polynomial over β and that over π½2 , respectively. One interesting operator on functions is the derivative. For any π: {0,1}π → {0,1} and any direction vector π‘ ∈ {0,1}π , the discrete derivative of π along the direction π‘ is another function π₯π‘ π: {0,1}π → {0,1} defined by π₯π‘ π(π₯) = π(π₯) + π(π₯ + π‘) Note that when we talk about polynomials over π½2 , all additions in the above equation are also over π½2 . Just as derivatives for polynomials over β, the discrete derivative also decrease the degree of a polynomial. That is, deg 2 (Δπ‘ π) ≤ deg 2 (π) − 1. When we use {+1, −1} as the range, then the derivative changes to π₯π‘ π(π₯) = π(π₯)π(π₯ + π‘). 3. Quantum Fourier transform For a function π: {0,1}π → {+1, −1}, one can define an n-qubit quantum state 1 √π ∑ π(π₯)|π₯〉 π₯ If one applies Hadamard gates, one on each qubit, then the state becomes 1 ∑ πΜ(πΌ)|πΌ〉 √π πΌ Verify this! 4. XOR functions XOR functions are the class of functions πΉ(π₯, π¦) = π(π₯ + π¦) for some π-bit function π. We sometimes denote such function πΉ by π β⊕ The class contains interesting functions such as Equality and Hamming Distance. It also has an intimate connection to Fourier analysis because the rank of the communication matrix ππΉ is nothing but the Fourier sparsity of π, i.e. the number of nonzero Fourier coefficients. Μβ . Exercise. rank(ππβ⊕ ) = βπ 0 A lower bound for the quantum communication complexity for XOR functions is the following. First, let’s define a variant of the Fourier 1-norm. βπβ1,π = min{βπβ1 : |π(π₯) − π(π₯)| ≤ π, ∀π₯ ∈ {0,1}π } Theorem ([LS09]). ππ (π β⊕) = Ω(logβπβ1,π ). It was considered to be pretty tight, but it has lacked rigorous argument. Recently, the following bound was shown, which implies that the above lower bound is tight for low degree polynomials. Theorem ([Z14]) ππ (π β⊕) = π(2π logβπβ1,π ) where π = deg 2 (π). Next we give a protocol for a simpler case of exact communication, namely protocols without error. The communication cost is at most 2π logβπβ0. The main idea is degree reduction. You’ll see how logβπβ0 naturally comes into the picture when using quantum protocols. The analysis of the protocol needs the following fact. Μ Μ Fact. For any π‘ ∈ {0,1}π , supp(π₯Μ π‘ π ) ⊆ supp(π ) + supp(π ). Proof. Let’s see what the Fourier coefficients of π₯π‘ π are. Define ππ‘ (π₯) = π(π₯ + π‘). Then πΜπ‘ (πΌ) = ππ₯ [π(π₯ + π‘)ππΌ (π₯)] = ππ¦ [π(π¦)ππΌ (π¦ + π‘)] = ππ¦ [π(π¦)ππΌ (π¦)ππΌ (π‘)] = πΜ(πΌ)ππΌ (π‘). Thus, Μ Μ Μ Μ Μ π₯Μ π‘ π (πΌ) = πππ‘ (πΌ) = ∑ π(πΌ + π½)ππ‘ (π½) = ∑ π(πΌ + π½)π(π½) ππ½ (π‘) π½ π½ Therefore, if πΌ ∉ supp(πΜ) + supp(πΜ), then there isn’ t π½ with both πΜ(πΌ + π½) and πΜ(π½) being nonzero. So π₯Μ π‘ π (πΌ) = 0 for those πΌ. π Notation in the protocol: π: {0,1}π → {+1, −1}, π΄ = supp(πΜ), πΈπ : {0,1}π → [|π΄|2 ], π§ = π₯ + π¦. To see why the protocol works, consider the second round. If π₯π‘1 π is a constant, then π(π§) = π(π§ + π‘1 ) + π₯π‘1 π is known; else, repeat the above procedure for π2 = π₯π‘1 π. Let π = 2, and use πΈπ to encode Fourier coefficients of π₯π‘1 π. Note that though Alice doesn’t know π‘1 and thus the Fourier coefficients of π₯π‘1 π, she can still do that because for any π‘1 , the Fourier support of π₯π‘1 π is within π΄ + π΄. π Complexity: Stage π takes log|A|2 = 2π log |π΄| communication qubits, and there is at most π stages. Thus the total complexity is 2π log |supp(πΜ)|. Protocol: Alice Bob |π〉 = 2−1/2 (|0〉πΆ |0〉π |π〉 +|1〉πΆ ∑π ∈π΄ πΜ(π )ππ (π¦)|πΈ1 (π )〉π ) On |1〉πΆ : |πΈ1 (π )〉π → ππ (π₯)|πΈ1 (π )〉π |π〉′ = 2−1/2 (|0〉πΆ |0〉π +|1〉πΆ ∑π ∈π΄ πΜ(π )ππ (π§)|πΈ1 (π )〉π ) |π〉′ On |1〉πΆ : |πΈ1 (π )〉π → |π 〉π |π〉′ = 2−1/2 (|0〉πΆ |0〉π +|1〉πΆ ∑π ∈π΄ πΜ(π )ππ (π§)|π 〉π ) Apply FT on M: |π 〉π → π −1/2 ππ (π‘)|π‘〉π |π〉′ = (2π)−1/2 (|0〉πΆ ∑π‘|π‘〉π +|1〉πΆ ∑π‘ ∑π ∈π΄ πΜ(π )ππ (π§ + π‘)|π‘〉π ) = (2π)−1/2 (|0〉πΆ ∑π‘|π‘〉π + |1〉πΆ ∑π‘ π(π§ + π‘)|π‘〉π ) = π −1/2 ∑π‘ |0〉πΆ +π(π§+π‘)|1〉πΆ √2 |π‘〉π Apply Hadamard on C, then measure M A random π‘ ∈ {0,1}π and the corresponding π(π§ + π‘) Note See [LS09] for a survey of classical and quantum lower bounds using norm-based methods. The protocol is from [Z14]. Reference [LS09] Troy Lee and Adi Shraibman, Lower bounds on communication complexity, Foundations and Trends in Theoretical Computer Science, 2009. [Z14] Shengyu Zhang, Efficient quantum protocols for XOR functions, Proceedings of the 25th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), 2014, to appear.