3

My question might be similar to Hidden subgroup problem. However, I'm not exactly sure though. In addition, that question doesn't have an answer.

I'm trying to create some simple instances of the general abelian hidden subgroup problem to experiment with for learning purposes. This requires solving the following simpler (for small groups) 'reverse' problem:

Suppose we have a finite abelian group $G$. In addition, we have an arbitrary subgroup $H$. Find a function, $f_H : G \to S$, for some set $S$. In addition, $f_H$ is constant, and for simplicity distinct on the cosets of $H$.

I know that WLOG, we can assume $G \ge H$ is such that $G \cong \mathbb{Z}_{p^{k_1}} \oplus \mathbb{Z}_{p^{k_2}} \dots \oplus \mathbb{Z}_{p^{k_n}}$, for the same $p$. Since the abelian HSP, and thus the problem I mentioned above, can be solved separately for the relatively prime components.

My question is about when $p$ is not a power of $2$. In which can we need to instead look at $G' \cong \mathbb{Z}_{2^{r_1}} \oplus \mathbb{Z}_{2^{r_2}} \dots \oplus \mathbb{Z}_{2^{r_n}}$ where for each $k_i$, $p^{2k_{i}} \le 2^{r_i} \le 2p^{2k_{i}}$, and use the continued fractions algorithm. Given, $f_H$ for $G$ ($G \ge H$), how do we extend the support of $f_H$ to $G'$ such that we can still sample from the dual of $H$?

In the case of the order-finding/Shor's function with support $\mathbb{Z}_{\phi(N)}$ ($\phi$ is Euler's totient function), the support of $f(x) = a^k mod N$ can be naturally extended from $\mathbb{Z}_{\phi(N)}$ to $\mathbb{Z}_N$ and then $\mathbb{Z}_{2^k}$, $N^2 \le 2^k \le 2N^2$. Also Shor proved the extension is valid for this function. But what about an arbitrary $f_H$?

The set of functions I'm looking at are ones that simply assign a distinct natural number to each coset.

I was thinking something like given $f_H$ as above extend to $f'_H$:

$\quad f'_H((x_1, x_2, \dots, x_n)) = f_H((x_1 mod \mathbb{Z}_{p^{k_1}}, x_2 mod \mathbb{Z}_{p^{k_2}}, \dots, x_n mod \mathbb{Z}_{p^{k_n}}))$, $(x_1, x_2, \dots, x_n) \in \mathbb{Z}_{2^{r_1}} \oplus \mathbb{Z}_{2^{r_2}} \dots \oplus \mathbb{Z}_{2^{r_n}}$.

This doesn't seem to work; I'm not sure it actually makes sense.

Any ideas?

Update I realized I might be misunderstanding something. It seems like the setup is supposed to be the following: create a uniform superposition of the states of $G$, not $G'$, as I stated above. In which case we can apply $f_H$, as is. However, we still utilized the QFT of $G'$, which can be efficiently implemented. This seems to work for small groups, but it doesn't seem to be feasible to construct an arbitrary uniform superposition of a subset of all basis states, which is what we would need. To do this exactly, would require, to my knowledge, implementing the QFT for $G$ (or QFT for $\mathbb{Z}_r$ for arbirary $r$), which we can't do. I assume for small groups, this could be done through multiple applications of Grover to get an approximate uniform superposition.

Since, as mentioned here https://arxiv.org/pdf/quant-ph/0603140.pdf, the order-finding/Shor's function is somewhat of a special case. Since in Shor's we are actually dealing with free-abelian groups of finite rank (not finite), as the paper mentions.

I'm still not sure if this is correct. If it is, I'm not sure of an efficient way of implementing such superpositions.

Please let me know if anything isn't clear with my question.

dylan7
  • 324
  • 1
  • 9
  • 1
    I highly suggest you take a look at Andrew Childs notes on Quantum Algorithms https://www.cs.umd.edu/~amchilds/qa/ in particular in section 4.4 he shows how you can use phase estimation to compute the QFT (at least approximately) for an arbitrary abelian group, in particular how to do it for $\mathbb{Z}_N$. In fact the answer to your question may even lie in section 6.2. – Condo Sep 29 '20 at 19:37
  • This was very helpful. I think my confusion was thinking too much in terms of Shor's which is really for $\mathbb{Z}$. However, I really need to implement an approximation for the QFT over $\mathbb{Z}_N$. I also found this which seems helpful https://arxiv.org/abs/quant-ph/0212002. – dylan7 Sep 29 '20 at 21:40
  • However, I noticed that the approximations require implementing a uniform superposition over $\mathbb{Z}_N$ for N not a power of 2. I did some research, and I don't see any suggestions on how to do this. This is the closest thing I found :https://quantumcomputing.stackexchange.com/q/2310/8765. Is there a circuit for doing this for arbitrary $N$? Unless it's obvious, and I'm missing something. – dylan7 Sep 29 '20 at 23:34
  • I think you misread section 4.4. Childs notes that the circuit in section 4.2 only works for $N$ a power of $2$. But then (in the next sentence) he claims that phase estimation can realize the QFT for $\mathbb{Z}_N$ (approximately) using phase estimation. I would also like to mention that one can prepare a superposition over the states of any group $G$ simply using $\log|G|$ qubits. – Condo Sep 30 '20 at 12:51
  • So in regards to you comment "that one can prepare a superposition over the states of any group $$ simply using $log||$ qubits". I couldn't find how this is typically done, but I'm guessing it's something along the lines of scaling up what was mentioned: https://quantumcomputing.stackexchange.com/q/2310/8765 . I did read section 4.4 (maybe I misunderstood parts), and I thought creating a superposition of the states of $G$ might be required. – dylan7 Sep 30 '20 at 22:26
  • If you start with $n$ qubits, each in the state $|0\rangle$ then you can just use $H^{\otimes n}$ (the hadamard gate $n$ on each one) to prepare a superposition over all $2^n$ bitstrings of length $n$. – Condo Oct 01 '20 at 13:36
  • This is for a group that has order that is a power of $2$ though, not a power of any prime $p$. It seems like the method you posted in your answer, along with Child's notes mentions that we first needs superposition of the states of $G$. https://arxiv.org/abs/0812.0380 see section 3C page 7. It says we first need this superposition and phase shifts to create the transformation: $|x,0\rangle \mapsto |x, \hat{x}\rangle$. $\hat{x}$, is the Fourier basis state for $F_N$, where $N$ is the order of the group. Then we use the approach you mentioned below with phase estimation to erase $x$. – dylan7 Oct 01 '20 at 13:51
  • Maybe I am still misunderstanding something, but it seems like Child's mentions that we need a uniform superposition of only the states of $G$, where $G$ is any of any order. But obviously of any prime order is enough due to the direct product decomposition. – dylan7 Oct 01 '20 at 13:56
  • if you replace $n$ with $log_2|G|$ then you can prepare a uniform superposition over the $|G|$ groups elements, each element is represented by a string of $log|G|$ qubits, and each is "representative" of an element in the group, then you need only construct a circuit that replicated the basis action of $U$ on the group represented in this way. – Condo Oct 01 '20 at 14:03
  • $log_2|G|$, wouldn't even be an integer for not an order of a power of $2$. Thus taking the ceiling or floor of that and applying $H$ tensored that many times would either create a uniform superposition of too many or not enough states (binary strings). The $U$ cyclic shift operator seems to only act as a unitary(invertible) on a space of dimension that is exactly equal to the order of $G$. Even if we extended $U$ to act on a space of size $\lceil log_2|G| \rceil$, taking the mod equal to the actual order of G, we would end up with the correct number of states, but not a uniform superposition. – dylan7 Oct 01 '20 at 14:20
  • I can't think of a circuit that would create such a superposition for $log_2|G|$ that is NOT an integer. Except that example for 3 out of the 3 basis states on 2 qubits that I linked earlier. – dylan7 Oct 01 '20 at 14:21
  • You just round up $log_2|G|$ to the nearest integer. All you need is some way to encode each group element as a state of your quantum computer. You will now worry that this won't be exact, but I think the idea is that the error won't be too bad. Remember we are just looking to approximately implement this transformation, we know we can't do this exactly. But also remark that if we use some quantum system with qudits for some $d$, then we can of course do this exactly, i'm not going to get into a debate about quantum computer architectures. – Condo Oct 01 '20 at 15:32
  • Ok, then in that case, I guess this goes back to my original question in the post. We now need to apply the function $f_H$ to the group elements, which is only defined for $|G|$ group elements, not $2^n, n=\lceil log_2|G|\rceil$. What is the correct way to approximate this function, or extend it, such that we can still recover $H$? – dylan7 Oct 01 '20 at 15:59
  • $2^{log|G|}=|G|$ exactly, this is always an integer, so there is no issue here. The issue is that the group elements are encoded by bit strings of length $\lceil log|G|\rceil$. You can then define your function on these bit strings. – Condo Oct 01 '20 at 16:07
  • But the function needs to be constant and distinct on the cosets of $H$ in $G$. The cosets have size $|H|$, where $|H|$ divides $|G|$. Thus there are $2^{\lceil log_2|G| \rceil} - |G|$, ($|G|$ not a power of 2) bit strings left over, which need some value in the range of $f_H$. But values that still allows us to recover $H$. None of these left over bit strings are mapped to any elements of $G$, but still have non-zero amplitude under the tensored Hadamards. I understand it's ok if the |G| elements are encoded in longer bit strings. I'm guessing we will need a different unitary, not Hadamards. – dylan7 Oct 01 '20 at 16:19

1 Answers1

1

I am not sure if this anwers your question but I think this all boils down to whether one can we efficiently implement $QFT_{\mathbb{Z}_N}$ when $N$ is not a power of $2$. In this case we can no longer implement the $QFT$ using the standard gate construction one sees often. However, for any $N$ we can approximately implement $QFT_{\mathbb{Z}_N}$ using the following trick (from section 4.4 of Andrew Childs notes).

Recall that $$F_N:=\frac{1}{\sqrt{N}}\sum_{x,y\in Z_N}\omega_N^{xy} |y\rangle \langle x|$$ is the QFT for $\mathbb{Z}_N$. Now, introduce the cyclic shift operator $$U:=\sum_{x\in Z_n} |{x+1}\rangle\langle x|,$$ and note that the eigenstates of $U$ are the basis for the the $QFT$, since $$F^*_NUF_N=\sum_{x\in \mathbb{Z}_N} (\omega^{x}_N)^{-1}|x\rangle\langle x|.$$ Then running phase estimation with on the unitary operator $U$ with $n=O(\log N)$ qubits performs the transformation $$|\tilde{x}\rangle |0\rangle \mapsto |\tilde{x}\rangle |\widetilde{(\omega^{x}_N)^{-1}}\rangle,$$ where $|\tilde{x}\rangle$ is an eigenstate of $U$, and $\widetilde{(\omega^{x}_N)^{-1}}$ is an $n$-bit approximation of the eigenvalue corresponding to $|\tilde{x}\rangle$. Now observe that if we run the circuit in reverse, we can effectively remove the undesired phase from the eigenstates of $U$, leaving us with the same states that would be output by the transformation $F_N$. Because the phase estimation algorithm is efficient i.e. $O(poly(n))$, it follows that this method is efficient with complexity $O(poly(\log N))$.

With this method in hand one can decompose any abelian group into a product of such cyclic groups and use this approach on each factor (see section 6 of Childs notes). This is the essence of how one could use a quantum computer to solve the discrete log problem (a variant of hidden subgroup) for a general abelian group.

Condo
  • 2,008
  • 6
  • 31