Hidden shift problem

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In quantum computing, the hidden shift problem is a type of oracle-based problem. Various versions of this problem have quantum algorithms which can run much more quickly than known non-quantum methods for the same problem. In its general form, it is equivalent to the hidden subgroup problem for the dihedral group.[1] It is a major open problem to understand how well quantum algorithms can perform for this task, as it can be applied to break lattice-based cryptography.[2][3]

Problem statement

[edit | edit source]

The hidden shift problem states: Given an oracle O that encodes two functions f and g, there is an n-bit string s for which g(x)=f(x+s) for all x. Find s.[4]

Functions such as the Legendre symbol and bent functions satisfy these constraints.[5]

Algorithms

[edit | edit source]

With a quantum algorithm that is defined as |s=HnOfHnOg^Hn|0n, where H is the Hadamard gate and g^ is the Fourier transform of g, certain instantiations of this problem can be solved in a polynomial number of queries to O while taking exponential queries with a classical algorithm.

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).