Basic quantum subroutines: finding multiple marked elements and summing numbers
We show how to find all k marked elements in a list of size N using the optimal number O(√(N k)) of quantum queries and only a polylogarithmic overhead in the gate complexity, in the setting where one has a small quantum memory. Previous algorithms either incurred a factor k overhead in the gate complexity, or had an extra factor log(k) in the query complexity. We then consider the problem of finding a multiplicative δ-approximation of s = ∑_i=1^N v_i where v=(v_i) ∈ [0,1]^N, given quantum query access to a binary description of v. We give an algorithm that does so, with probability at least 1-ρ, using O(√(N log(1/ρ) / δ)) queries (under mild assumptions on ρ). This quadratically improves the dependence on 1/δ and log(1/ρ) compared to a straightforward application of amplitude estimation. To obtain the improved log(1/ρ) dependence we use the first result.
READ FULL TEXT