For any , the dihedral group is the group of isometries of the plane generated by the reflection about the -axis and the rotation of angle . It is composed of elements: rotations and reflections () . The elements satisfy the relation . We have already seen the case in an example of Fourier Sampling. Alternatively, we can describe as a semi-direct product , where represents the isometry . We have and , so the law of this semi-direct product is given by
and consequently the inverse operation is
(DHSP)
The dihedral HSP (DHSP) is the hidden subgroup problem for the dihedral group . An efficient algorithm for the dihedral HSP has a complexity (this is equivalent to our general definition because ).
DHSP is by itself a natural candidate for finding efficient quantum algorithm based on a nonabelian HSP: on the one hand it is a nonabelian group with a simple structure (so we can hope it is not too difficult to solve) and on the other hand is an exponential number of subgroups (so the brute-force guessing is infeasible). We will see another motivation in the next section.
What are the possible hidden subgroups ? Consider the cyclic subgroup of . Then is a subgroup of so there is a divisor of such that . If then there exists . If is another element of , then . We have . As a consequence, . Note that if is the euclidean division of by , . Replacing by , we can assume . Finally, we have:
(subgroups of )
The subgroups of are:
Moreover, the dihedral HSP reduces to efficiently find when and is known.
proof: The first part has been discussed above. The value can be found with high probability in by the cyclic HSP algorithm using the oracle . Hence we may assume that is known. Suppose we have an algorithm that finds with high probability when and is known. We can suppose that this algorithm always returns a value . If then we return otherwise we return . Because the sub-routines succeed with high probability, so does the whole algorithm.
Can we use the general algorithms based on the Weak Fourier Sampling, that we have previously seen? We note that so is normal. We also have so is normal iff for all we have (which is obviously true for being 1 or 2). The case and shows that can not be more than 2 if we want this equality to hold. As a consequence, the normal subgroups are (for any divisor of ), and (if is even) or . It is easy to check that they correspond to the intersection of the kernels of representations measured in theorem 9.9 of Appendix B. We notice that so . As a consequence, . So Gavinski's HSP algorithm is successful iff .
Ettinger and Høyer proved in [EttHøy1998] that the dihedral HSP reduces to the case where . To see that, suppose we start with the reduced case of the theorem i.e. and is known. The elements of are and for while the elements of are given by , . Hence, moving to the quotient group we have the hidden subgroup problem for and hidden subgroup . We see that we have a solution to the hidden subgroup problem with complexity ( to find and to find working in ). In particular the algorithm is already efficient in the case solved by Gavinski's HSP algorithm. We have proved the important reduction:
(reduction to finding a slope)
The dihedral HSP reduces to efficiently find the slope when .
Ettinger and Høyer used the same circuit as in HSP over and proved that this yields an algorithm for the dihedral HSP. In this quantum circuit, we distinguish two registers for encoding the elements of and perform three separate measurements.
As usual, the first part of the circuit produces a superposition
The first measurement yields a and makes the two first registers collapse to
since and are chosen uniformly at random, this is equivalent to have a state
for some chosen uniformly at random. Applying the Fourier transform to the first register gives the state
The second measurement returns a chosen uniformly at random and make the second register collapse to the state
Finally, we apply an hadamard gate on the second register to get
The measurement given by (2) and (3) is then:
The algorithm of Ettinger and Høyer starts by checking the values or (just by comparing with and ). Otherwise, they show that there is some such that from samples of the previous algorithm we can find , just by searching the minimum of a function over the domain . The whole algorithm allows to solve the dihedral HSP using calls to . However, to find the minimum of the function we test elements.
The state at the output of coset sampling is important since it is the base of all the other DHSP algorithms. Thus we define the following problem, to which DHSP reduces:
(Dihedral Coset Problem)
Let and . The dihedral coset problem (DCP) is to find the value of given a black box that outputs a state given in formula 5.5 for a random .
Note that the circuit of figure 5.1 is not the Fourier Sampling based on group representations. Appendix B studies in detail all the possible distribution obtained by this latter method. One of the main results is that the distribution probability of formula 5.9 can be obtained from the output of a Strong Fourier Sampling in a particular basis and so Ettinger and Høyer 's algorithm applies. The second important result is that Strong Fourier Sampling is less general than DCP, in the sense that a black-box for DCP can simulate a Strong Fourier Sampling. This includes the case where we apply Strong Fourier Sampling with any hidden subgroup and not only . Actually, it is quite remarkable that applying Strong Fourier Sampling on the initial group is essentially the same as applying Strong Fourier Sampling on the quotient group. Some attempts to solve DHSP via Strong Fourier Sampling are given in Appendix C and suggest that this method is not likely to work. Indeed, Fourier Sampling uses only measurement on one coset state at once, while we will see later that we require a polynomial number of them. In appendix G, we propose an entirely new approach, based on uniform superpositions over large subsets of . In particular, we can solve the case if we have an efficient process to create for the states .
In the next section, we will see in more details the different results obtained for DCP.
The next successful step after Ettinger and Høyer was the discovery by Kuperberg [Kup2003] of a subexponential-time algorithm to find the slope and thus the hidden subgroup. First note that ignoring the phase factor, formula 5.7 allows to generate states:
We now give a rough description of Kuperberg's algorithm in the particular case . In that case, if we are able to create then a measure in the Hadamard basis gives the parity of . Kuperberg noted that the hidden subgroup is necessarily included in the subgroup (if is even) or (if is odd). Both are isomorphic to so we can restrict to the appropriate subgroup and use an iterative algorithm for finding the other digits of .
Suppose we have two states and . Taking their tensor product, applying a CNOT gate and ignoring the phase factor gives a state on the first register where ± is randomly determined by the measurement of the second register. If both are multiple of (i.e. have 0's as their least significant bits) then one of is multiple of for some .
The idea of Kuperberg is to use a pipeline as represented in figure 5.2. At the input, many 's are created by the DCP black box. At each stage , we have states such that the least significant bits of are zeros. We make many combinations as described above and we get at stage a certain amount of states such that the least significant bits of are zeros. At the output of the pipeline, we get the state with high probability.
The running time of Kupenberg's algorithm is which is subexponential but unfortunately, the algorithm also requires quantum space. Shortly after that Kupenberg designed its algorithm, Regev [Reg2004] gave an improved version that requires only polynomial space at the price of increasing the running time to . Note that in both algorithms the query complexity is actually the same as the running time.
In [BacChiDam2005] quantum-information theory is used to see how much information we can get from a DCP black box. If we let then the density matrix output by the DCP black box is . So if we use outputs from this black box, our purpose is to identify the density matrix among all the a priori equiprobable values of . Bacon, Childs and van Dam found the optimal measurement for that purpose (the so-called "pretty good measurement") and showed that we can determine with exponentially small probability if and a constant probability if . Since the algorithm of Ettinger and Høyer gives an algorithm using linear (in ) oracle calls, this means that the query complexity of DCP is exactly . Note that Bacon, Childs and van Dam have a similar result in the case where we try to determine only the parity of .
Finally, let's mention a relationship between DCP and the subset sum problem. Recall that this problem is to find a subset of a given set of integers that sums to another given integer . It is well-known that the decision version of the problem is NP-complete. However, in the discussion below, we fix a density . We can still hope that it is possible to solve some instances at that density and so that it will help us to get better algorithms for DHSP.
(subset sum problem)
Let be an integer. The subset sum problem at a fixed density is, given a and a target value , to find an element of . A legal instance of the problem is such that .
In [Reg2003], Regev proved that if it is possible to solve a fraction of the legal instances of the subset sum problem if , then we have a solution to DCP. Some algorithms have been proposed after Regev's paper [FlaPrz2004] [Lyu2004], giving an alternative solution for DHSP with subexponential complexity.
Bacon, Childs and van Dam gave a similar result in [BacChiDam2005]. We define the uniform superposition of solutions to a legal instance of the subset sum problem with input :
if we have a quantum circuit that operates on input states and sends the legal instances to then we can implement the optimal measurement and thus solve DCP. Producing these states is stronger than the Regev's condition: not only we need to be able to solve all the legal instances but also for a given input we need to gather all the solutions in one big entangled state. Conversely, Bacon, Childs and van Dam showed that an implementation of the optimal measurement according to their particular schema yields a solution to the subset sum problem.
Note that these DCP solutions based on the subset sum problem are solving DHSP by coset sampling over the whole group. In contrast, Kuperberg's algorithm for DHSP works recursively: we need a DCP black-box which is able to sample over subgroups of containing . However, there is an alternative non recursive version where we use the phase estimation algorithm to approximate .
In the two previous sections, we have given an overview of the DHSP results known so far. While we can try to find efficient HSP algorithms for their own sake, Regev showed that the case of the dihedral group is particularly interesting: it is related to some lattice problems whose difficulty is assumed in some cryptographic systems. This section, based on [Reg2003] and [MicReg2008], explains more precisely this relationship.
(lattice)
Let be an integer and a basis of (or equivalently a matrix ). We define the lattice generated by the basis as the set of all linear combinations of the basis vectors with integer-valued coefficients:
An example of a 2-dimensional lattice i.e. generated by a basis , of is given in figure 5.3 (notice that an alternative basis is also given). Lattices are involved in many problems assumed to be hard. The one that we will particularly be interested in is the following:
(f(n)-uniqueSVP)
The Shortest vector problem (SVP) is to find in the lattice a non zero vector of minimum length. In the -uniqueSVP (uniqueSVP) we have the promise that such a vector is necessarily shorter by a factor than all other non-parallel vectors.
As we have seen at the beginning, Shor's algorithms allow to break cryptosystems based on the hardness of factoring or discrete logarithm's computation. One kind of alternative cryptosystems proposed is based on lattices. In Appendix E, we summarize in one table the overview of [MicReg2008].
In order to establish a connection between one of the -uniqueSVP and DCP, we need to modify the black-box in a way that allows errorous output. So we introduce:
(DCP with failure parameter p)
Let be an integer and . The DCP over with failure parameter is the problem of finding a hidden slope given a black box that behaves almost always like a DCP black box. More precisely, this black box produces a DCP-state for some uniformly random with probability at least and an arbitrary otherwise.
We can now state the main theorem, due to Regev [Reg2003]:
Let an integer and define . If there is a solution to the DCP over with failure parameter then there is solution to the -uniqueSVP.
Regev said that if we have a solution to the exact DCP, then by taking large enough the black-box outputs only DCP-states. He concluded that a solution to DCP gives a solution to the -uniqueSVP. Let's state a slightly stronger version of its corollary:
If there is a solution to DCP over whose query complexity can be expressed as a polynomial of degree , then there is a solution to -uniqueSVP.
proof: the probability that the DCP with failure parameter produces only DCP-states after oracle calls is at least
When , the limit of the bracket term is 0 if , if and 1 otherwise. So the above value is bounded below by a constant iff . In that case, we can repeat the procedure about times to be sure that we solve DCP over with failure parameter and so the -uniqueSVP.
The corollary gives the optimal degree of the approximate polynomial for uniqueSVP we can get from Regev's algorithm, assuming that the DCP algorithm does not accept failure at all. By the result of [BacChiDam2005], a DCP algorithm can not work with sublinear query complexity, so the best we can do is -uniqueSVP. If we look to figure 12.1, this would be a rather minor result since it affects only Ajtai-Dwork cryptosystem improved by Goldreich/Goldwasser/Halev, which is not likely to be used in practice. Moreover it is important to note that an algorithm for uniqueSVP only invalidates the proof of security but, contrary for example to Shor's algorithm, does not necessarily give a way to break them.
However, solving DCP would give a HSP-related algorithm that invalidates the security proof of a cryptosystem and hence gives hope that more algorithms of this kind could be found. According to figure 12.1, an interesting direction would be to find algorithms for other problems such that SVP, SIVP or LWE. Considering specific version of lattices used in cryptosystems such that "ideal lattices" would maybe help finding efficient algorithms.
It is worth looking to the ideas of Regev's algorithm. First Regev introduces the "two points problem" which is essentially DCP where the scalars are replaced by two vectors in with constant difference. The two point problem reduces to DCP over by considering the mapping:
This is clearly one-to-one and so (modulo some additional wires) can be implemented as a unitary transform permuting the basis states. In general, it is not clear that it can be done efficiently but in Regev's case, is the power of 2, so this is just adding wires and permuting them. As announced above, we are considering DCP over . In particular, we only need a solution to DCP over a power of 2, which may be easier than the general . We also note another way to solve this step: we can directly find the difference if we have an algorithm for a DCP-like problem over in place of . This corresponds to a generalized DHSP over with hidden subgroup .
Then, Regev creates a polynomial number of instances for the two points problem. Among all these instances, there is at least one giving an output from which we can extract the shortest vector. So we only run the procedure many times and keep the shortest vector inside the lattice. The routine uses a funtion where maps elements of to lattice vectors and is very similar to coset sampling: we start by a superposition over , apply and measure the result image of . Regev gives two versions with different (one based on cube partition of the space and a more efficient based on sphere partition) but in any case it is chosen such that with high probability, we are going to have a superposition over two very close lattice points encoded in a state .
This similarity between the coset sampling procedure and Regev's algorithm is really important. While all the studies that have been made so far on DHSP were based on the DCP problem i.e. a standard coset sampling on , it is well possible that modifying our coset sampling procedure will give better results to solve DHSP. Hopefully, the modifications can be applied in a straightforward manner to Regev's procedure, and so our relation with uniqueSVP will still hold. The example 5.11 gives possible modifications we have experimented, but they have not lead to improvements.
(modified coset samplings)
One important variant is DCP over another hidden slope problem for the dihedral group, derived from the initial . For example in Kuperberg's algorithm, we use a coset sampling over to determine the parity of , over and so forth... Similarly for , we can get information on and move to a smaller subgroup. For example if we determine the parity of of the th coordinate of then we can work in (with a 2 at the th position) instead, which is isomorphic to another generalized dihedral group and by induction, we continue to move to dihedral groups of the form with smaller and smaller complexity. Of course, if we are only working on a specific class of group we have to ensure that we remain in this class at each induction step, contrary to the previous example.
In the case of , this reduction to a smaller group can be translated in a straightforward way to Regev's algorithm: we create the superposition over the new subgroup of rather than on the whole . For the dihedral group, we have to look carefully to what is happening with the mapping of formula 5.14. Determining the digit of in the increasing order of their significance is doing the same for each for an increasing (again, this works well because is a power of 2). Hence we can again create the superposition over subgroups of the corresponding . The mapping sends them to the decreasing sequence of groups described above for Kuperberg's algorithm. Finally, we have the following corollary:
(class-preserving recursive DCP algorithm is allowed)
The previous connections between DCP and uniqueSVP hold for class-preserving recursive DCP algorithms over some generalized dihedral groups. More precisely, we mean an algorithm based on coset sampling over a class of generalized dihedral group which includes and such that the recursive step moves to a subgroup of the same class. A recursive DCP algorithm is also allowed for group if the inductive step consists in determining the parity of and moving to .
As a final remark, Regev's procedure generates a superposition of two lattice points with constant difference. Maybe we could increase the number of points in the superposition and use another group with larger coset states (for example semi-direct product with abelian). Allowing more points in one partition could weaken the uniqueSVP promise.
For any , let denote the symmetric group i.e. the group of permutations on a set of elements. This group is of order , so and since for , we have . This means that can be used as a measure of efficiency since (more precisely, the Stirling formula gives so ).
(SHSP)
The symmetric HSP (SHSP) is the hidden subgroup problem for the symmetric group . An efficient algorithm for the symmetric HSP has a complexity .
By Cayley's theorem, every group is isomorphic to a subgroup of . Hence to find a subgroup of , one can apply a SHSP to the corresponding subgroup of . However, an efficient algorithm for would be while an efficient algorithm for needs to be .
A more exciting application is that an efficient algorithm for SHSP would give a solution to the graph isomorphism problem, which has remained unsolved for many decades. We recall:
(Graph isomorphism and automorphism problems)
Let and be two (undirected) graphs. They are said to be isomorphic iff there is a bijection such that for any two vertices we have iff . The graph isomorphism problem is to determine whether two such graphs are isomorphic, in time polynomial in the size of the input parameters (the number of vertices for example). The graph automorphism problem is to determine whether a graph has a non-trivial automorphism (i.e. there exists a which is a permutation of the vertices of the graph).
The figure 5.4 shows an example of three isomorphic graphs. Clearly, the automorphisms are given by the bijections fixing the vertex of degree 4.
Notice that the definition above is the decisional version of the graph isomorphism problem. It turns out that finding an explicit isomorphism or counting the number of isomorphism has the same complexity, so we can restrict ourselves to the decisional version. This version is clearly in the class NP, but it is known neither to be NP-complete nor to belong to the class P. Many problems are computationally equivalent to the graph isomorphism problem. For instance, it is the case of the graph automorphism problem, to the weaker version with connected graphs or to the stronger version with directed graphs. See, [Köb1993] for details.
Let's consider first the reduction of the graph automorphism problem to SHSP. Let be a graph and define to be the set of its automorphisms. Obviously, the identity is an automorphism, the inverse of an automorphism is an automorphism and the composition of two automorphisms is again an automorphism. Hence is a subgroup of the permutations of that can itself be viewed as for . We define the oracle to be the function that send to . As indicated in [Lom2004], can be computed efficiently. Suppose for instance that we have fixed an enumeration of the vertices and we represent the graph by an ordered list of pairs where and . Given , we can compute efficiently by replacing each by and then applying classical sorting algorithms on the whole structure.
Finally, we have a subgroup of and clearly . So an efficient algorithm for DHSP gives a algorithm for determining . Actually, we only need a weaker version of DHSP where we want to determine whether is non-trivial i.e. the graph has a non-trivial automorphism.
When the two graphs and are rigid i.e. do not have a non-trivial automorphism, there exists a reduction from the graph isomorphism problem to a somewhat simpler version of HSP. First, if the graphs do not have the same number of vertices, then they are clearly not isomorphic and we are done. So let be their common number of vertices. It is easy to check whether each graph is connected in time . Again, if one is connected and the other is not then we are done. If both are not connected, then their complement graphs are connected and using these complement graphs instead changes neither the answer to the graph automorphism nor the rigidity of the graphs. Hence we suppose that the two graphs are connected and rigid.
We now build a 2-component graph of vertices by taking the disjoint union of and . We suppose and . The permutations of can be viewed as the group . An isomorphism between the two initial graphs can be seen as an element of . If we introduce the the involution permuting and for all , can actually be seen as the automorphism of the disjoint union of the initial graphs.
As above the set of all automorphisms of the union graph is a subgroup of . Since we know that the union graph is made of two connected rigid components, we have either if the two initial graphs are not isomorphic or otherwise where is an involution of permuting the two components. Hence we have obtained a variant of DHSP where the graph is either trivial or a conjugate of and whose solution gives an efficient algorithm to determine whether two rigid graphs are isomorphic.
We can actually simplify the problem any further: is always included in the group generated by and the permutations of fixing each component (i.e. elements of ). We have and is of order so any element of can be written for some and . If is the transposition of then the law of is defined by:
This is called the wreath product of and and denoted by . Finally, we now have an instance of HSP over the group and we only have to distinguish the cases trivial (the two graphs are not isomorphic) or ( is the isomorphism between the two graphs).
We can notice that we have a reduction from the rigid graph isomorphism problem to the simple HSP group . If denotes the signature of permutation, we have . If is even, then we can directly work in . Otherwise, let , add to each initial rigid graph another connected component composed of only one single node, and combine them into a big graph of nodes. If we define the transposition , then the automorphism group of the big graph is a subgroup of and is similar to the previous case: either or where . The problem is now to determine whether the subgroup of is trivial or .
Attempts to solve SHSP, even the restricted versions have not reached any success so far. The first question is whether the classical Fourier Sampling method is helpful. Some negative results were proved for the weak Fourier Sampling [GriSchVaz2000] [HalRusTa-2000], extended to strong Fourier Sampling [MooRusSch2005] and finally to an arbitrary POVM over many entangled coset states [HalRoeSen2005]. More precisely, the last result shows that we need to perform measurement on at least entangled states at once.
One model for using such an entanglement is Kuperberg's algorithm for DHSP. It can be interpreted as a repetition of combine-and-measure operations on representation state (i.e. given representation states and , apply measurement on their tensor product to get a new representation state) until we reach a representation from which one can extract useful information on the hidden subgroup. [MooRusSni2006], proved however that such an algorithm can not succeed for the symmetric group unless it takes time. This does not give any meaningful improvement over the best known classical algorithms: for general graphs [BabLuk1983] or for strongly regular graph [Spi1996].
Despite intensive study, no quantum algorithm for SHSP are known. It is worth noting that the structure of the symmetric group is very complex ( contains all the groups of order as subgroups) and is likely to be much more difficult to solve. It is possible that a straightforward method (i.e. performing coset sampling over the or ) is not appropriate and we should rather distinguish many particular or reduced cases as in the classical algorithms mentioned above, which rely on classification of finite simple groups. Solving HSP for other groups will provide us more techniques and probably help us to find a general method. For example, O'Nan–Scott theorem gives the form of the maximal subgroups of and we could use the "maximal subgroup reduction" method given in the next section.