22.04.2014 Views

a590003

a590003

a590003

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

first indexes such that y i = 0 If there are more than q indexes, the function truncates to the first q.<br />

F is realizable by a simple classical algorithm, so it can be implemented as a quantum algorithm.<br />

Apply this algorithm to |ψ 1 〉, obtaining the state<br />

|ψ 2 〉 =<br />

1<br />

√<br />

Ck,q,n<br />

∑<br />

y:∆(y)≤q<br />

|y, F (y)〉<br />

Next, let G : Y k → Y q be the function that takes in vector y, computes x = F (y), and outputs<br />

the vector (y x1 , y x2 , ..., y xq ). In other words, it outputs the vector of the non-zero components of y,<br />

padding with zeros if needed. This function is also efficiently computable by a classical algorithm,<br />

so we can apply if to each part of the superposition:<br />

|ψ 3 〉 =<br />

1<br />

√<br />

Ck,q,n<br />

∑<br />

y:∆(y)≤q<br />

|y, F (y), G(y)〉<br />

Now we apply the Fourier transform to the G(y) part, obtaining<br />

1 ∑<br />

|ψ 4 〉 = √ |y, F (y)〉 ∑ e −i 2π n 〈z,G(y)〉 |z〉<br />

Ck,q,n<br />

z<br />

y:∆(y)≤q<br />

Now we can apply H to the F (y) part using q non-adaptive queries, adding the answer to the z<br />

part. The result is the state<br />

1 ∑<br />

|ψ 5 〉 = √ |y, F (y)〉 ∑ e −i 2π n 〈z,G(y)〉 |z + H(F (y))〉<br />

Ck,q,n<br />

z<br />

y:∆(y)≤q<br />

We can rewrite this last state as follows:<br />

1 ∑<br />

|ψ 5 〉 = √ e i 2π n 〈H(F (y)),G(y)〉 |y, F (y)〉 ∑ Ck,q,n<br />

y:∆(y)≤q z<br />

e −i 2π n 〈z,G(y)〉 |z〉<br />

Now, notice that H(F (y)) is the vector of H applied to the indexes where y is non-zero, and<br />

that G(y) is the vector of values of y that those points. Thus the inner product is<br />

〈H(F (y), G(y)〉 = ∑<br />

k∑<br />

H(i) × y i = H(i)y i = 〈H([k]), y〉 .<br />

i:y i ≠0<br />

i=0<br />

The next step is to uncompute the z and F (y) registers, obtaining<br />

1 ∑<br />

|ψ 6 〉 = √ e i 2π n 〈H([k]),y〉 |y〉<br />

Ck,q,n<br />

y:∆(y)≤q<br />

Lastly, we perform a Fourier transform the remaining space, obtaining<br />

⎛<br />

⎞<br />

1 ∑<br />

|ψ 7 〉 = √<br />

⎝<br />

∑<br />

e i 2π n 〈H([k])−z,y〉 ⎠|z〉<br />

C k,q,n n k z<br />

y:∆(y)≤q<br />

Now measure. The probability we obtain H([k]) is<br />

∣ ∣∣∣∣∣<br />

1 ∑<br />

2<br />

C k,q,n n k 1<br />

∣<br />

as desired.<br />

y:∆(y)≤q<br />

16<br />

= C k,q,n<br />

n k<br />

8. Quantum-Secure Message Authentication Codes

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!