This question was inspired by the following reference:
We use the usual notation. $N = 2^n$ , the number of all possible n-bit strings . The oracle $U_\omega$ can be put in the form
$U_\omega=I - 2 (\vert\omega\rangle\langle\omega \vert )$
$U_\omega$ is a reflection of any vector on the hyperplane orthogonal to $\vert\omega\rangle$
The vector $\vert s \rangle $ and operator $U_s$ are introduced.
$\vert s \rangle = H^{\otimes n} \vert 0 \rangle^{\otimes n}$ , where $H^{\otimes n}$ is the n-qubit Hadamard transform.
Operator $U_s$ reflects any vector with respect to $\vert s \rangle$
$U_s = 2\vert s \rangle \langle s \vert - I$
The Grover iteration is $U_{Grover} = U_s U_\omega$
$U_{Grover}$ rotates (at every iteration) the initial vector $\vert s \rangle$ towards the desired vector $\vert\omega\rangle$ by the angle $2\theta$, where $sin\theta = \frac{1}{\sqrt{N}}$
We note that a reflection is expressed by a unitary matrix. That means that the operator defined below is represented by a unitary matrix, therefore a quantum circuit can be designed in order to implement this operator (Edit. This statement was proven false by the answer to this question).
We define the operator:
$U(\vert x \rangle , \vert y \rangle ) = ( \vert x \rangle , U_x \vert y \rangle) $ , where $U_x \vert y \rangle$ represents the reflection of $\vert y \rangle$ with respect to $\vert x \rangle$
In the following relations the vectors $\vert \xi_i \rangle$ are implicitly defined based on the action of the operator U.
We consider the following sequence of transformations (based on the definition of the operator U):
$U(\vert s \rangle , U_\omega\vert s \rangle ) = (\vert s \rangle , U_sU_\omega \vert s \rangle) = (\vert s \rangle , \vert \xi_1 \rangle )$
$U(\vert \xi_1 \rangle , U_\omega\vert s \rangle ) = (\vert \xi_1 \rangle , U_{\xi_1}U_\omega \vert s \rangle) = (\vert \xi_1 \rangle , \vert \xi_2 \rangle )$
$U(\vert \xi_2 \rangle , U_\omega\vert s \rangle ) = (\vert \xi_2 \rangle , U_{\xi_2}U_\omega \vert s \rangle) = (\vert \xi_2 \rangle , \vert \xi_3 \rangle )$
.......................and so on..........................
$U(\vert \xi_{n-1} \rangle , U_\omega\vert s \rangle ) = (\vert \xi_{n-1} \rangle , U_{\xi_{n-1}}U_\omega \vert s \rangle) = (\vert \xi_{n-1} \rangle , \vert \xi_n \rangle )$
In other words, the vector to be reflected is fixed but the reflection axis is variable (in the original Grover algorithm it's the other way around ).
At every step K of the algorithm above the initial vector $\vert s \rangle$ is rotated towards the desired vector $\vert\omega\rangle$ by an angle which is at about $2^K\theta$ (as order of magnitude ), where $sin\theta = \frac{1}{\sqrt{N}}$. That means that this algorithm will only need about $log_2 N$ (as order of magnitude ) steps to reach the target.
Question 1. Can a quantum circuit be designed, that implements this algorithm, in principle ?
Question 2. Does this algorithm present an exponential speedup, when compared to Grover's algorithm?
Edit. Unfortunately nothing from what I tried seems to work. You need a quantum circuit that takes as input the vector to be reflected and the vector that represents the reflection axis. The output of the quantum circuit must contain the reflected vector. That does not seem possible, as far as I understand. This reflection implementation problem, if ever solved, would lead to an exponential speedup of Grover's algorithm.