A geometric approach to designing quantum algorithms

Marek Gluza

Nanyang Technological University

Singapore

4 stages of creating quantum algorithms

Guidelines for using quantum computing

Stage 1: Think. What is the goal?

Important problems that are difficult yet doable.

Encode what we know in \(\vec{v}_{input}\).

Decode information from \(\vec{v}_{output}\).

Find effective heuristics to reduce the runtime of rotations \(R_k\)

Find rotations such that

\(\vec{v}_{output} \approx R_1 R_2 \ldots R_n \vec{v}_{input}\)

Stage 2: Design. How to encode task in quantum mechanics?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

Stage 4: Run it.
What instructions to send?

Stage 3: Algorithm. How to find  \(\vec{v}_{output}\)?

Guidelines for extracting utility from quantum computing

Stage 1: Think. What is the goal?

  1. Bridge between needs of humans and technological feasibility.
  2. Exchange domain expertise with industry partners.
  3. This talk: General-purpose optimization solver in quantum computing based on non-Euclidean geometry.
  4. Numerics: Algorithms optimized for execution on leading prototypes.

Stage 4: Run it.
What instructions to send?

Stage 2: Design. How to encode task in quantum mechanics?

Stage 3: Algorithm. How to find  \(\vec{v}_{output}\)?

4 stages of creating quantum algorithms

2. Design choice:
How to go about it?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

4. Circuit compilation:
What gates to do?

1. Problem choice:
What challenge to take up?

3. Unitary synthesis:
How to do it?

4 stages of creating quantum algorithms

Quantum computing cannot be useful if

  • The problem can be solved quickly on classical computers
  • Solving the problem isn't important
  • Solving the problem is too hard for the quantum computer

Classical computation

Key question in current quantum computation:
Find an important problem which is difficult yet doable

Millenials doing quantum computing

What challenge to take up?

Quantum computing cannot be useful if

  • The problem can be solved quickly on classical computers
  • Solving the problem isn't important
  • Solving the problem is too hard for the quantum computer

What challenge to take up?

Materials science?

Why materials science? Imagine improving photovoltaics by 1%.

What needs to be done? Perform \(\bra\psi H\ket\psi\) optimization.

How? Quantum circuit synthesis.

E(\psi) = \langle \psi| H | \psi\rangle

Key question in current quantum computation:
Find an important problem which is difficult yet doable

4 stages of creating quantum algorithms

2. Design choice:
How to go about it?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

1. Problem choice:
What challenge to take up?

Double-bracket quantum algorithms:

Systematic framework for unitary synthesis

4 stages of creating quantum algorithms

E(\psi) = \langle \psi| H | \psi\rangle

4. Circuit compilation:
What gates to do?

3. Unitary synthesis:
How to do it?

4 stages of creating quantum algorithms

1. Design choice:
How to go about it?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

3. Circuit compilation:
What gates to do?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

0. Problem choice:
What challenge to take up?

2. Unitary synthesis:
How to do it?

4 stages of creating quantum algorithms

Imaginary-time evolution

\ket\psi\mapsto |\psi(\tau)\rangle
H = \sum_{k=1}^{D} \lambda_k \ket{\lambda_k}\bra{\lambda_k}
e^{-\tau H}|\psi\rangle = \langle\lambda_0|\psi\rangle \ket{\lambda_0} +\sum_{k=1}^{D} e^{-\tau\lambda_k} \langle\lambda_k|\psi\rangle \ket{\lambda_k}
|\psi\rangle = \langle\lambda_0|\psi\rangle \ket{\lambda_0} +\sum_{k=1}^{D} \langle\lambda_k|\psi\rangle \ket{\lambda_k}
\lim_{\tau\rightarrow \infty}\ket{\psi(\tau)} = \ket{\lambda_0}

4 stages of creating quantum algorithms

2. Design choice:
How to go about it?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

1. Problem choice:
What challenge to take up?

Double-bracket quantum algorithms:

Systematic framework for unitary synthesis

4 stages of creating quantum algorithms

E(\psi) = \langle \psi| H | \psi\rangle

4. Circuit compilation:
What gates to do?

3. Unitary synthesis:
How to do it?

Mathematically, states of the quantum computer are like arrows pointing from the center of the sphere to its surface.

Observation leading to double-bracket quantum algorithms: Earth is not flat. I.e., when we walk along of the equator, we think we are going straight but eventually we will wrap around it.

Fixing a direction and rotating the arrow, corresponds to a type of of quantum computing operation.

Stage 3: Algorithm. How to find  \(\vec{v}_{output}\)?

Riemannian geometry underlies quantum algorithms

On a flat surface DOWN-LEFT-UP-RIGHT will return to point of origin.

Stage 3: Algorithm. How to find  \(\vec{v}_{output}\)?

Riemannian geometry underlying quantum algorithms

On a flat surface DOWN-LEFT-UP-RIGHT will return to point of origin.

On a curved surface SOUTH-WEST-NORTH-EAST will spiral way.

South
West
East
North

Stage 3: Algorithm. How to find  \(\vec{v}_{output}\)?

Riemannian geometry underlying quantum algorithms

South
West
East
North

My work on double-bracket quantum algorithms shows how to use this spiraling effect to implement non-Euclidean gradient descent in quantum computing.

Regular machine learning fails for quantum computing but our generalization works. The 'failed' machine learning is still key for us - as a warm-start!

(Physical Review Letters '26)

Stage 3: Algorithm. How to find  \(\vec{v}_{output}\)?

Riemannian geometry underlying quantum algorithms

Riemannian geometry is essential for quantum computation 

  • The unitary group \(U(d)\) is a Riemannian manifold
  • It is an embedded manifold \(U(d) = \{M\in \mathbb C^{d\times d}:~M^{-1}=M^\dagger\}\)
  • The tangent space is \(\{W\in \mathbb C^{d\times d}:~W^{\dagger}= -W\} \simeq\{iH \mathrm{~where~} H=H^\dagger\in \mathbb C^{d\times d}\} \)
  • The geodesics are matrix exponentials \( \{e^{sW}\}_{s\in\mathbb R} \subset U(d)\) or \( \{e^{isH}\}_{s\in\mathbb R} \subset U(d)\)
  • Computing a "gradient" must output an element of the tangent space
\mathbb C^{d\times d}
U(d)
g
W
iH
g^\dagger = -g
e^{s g}
g
g^\dagger = -g

\(\partial_{i,j}\) points to the interior, not tangential

Keep this in mind for later: Unlike in flat space, these 4 steps spiral away from the point of origin

Riemannian geometry is essential for quantum computation 

  • The unitary group \(U(d)\) is a Riemannian manifold
  • The tangent space is \(\{H\in \mathbb C^{d\times d}:~H^{\dagger}= H\} \)
  • The geodesics are matrix exponentials \( \{e^{isH}\}_{s\in\mathbb R} \subset U(d)\)
  • \(U(d)\) is a curved manifold
e^{is A}e^{is B}e^{-is A}e^{-is B} \neq 1
e^{is A}
e^{isB}
e^{-isB}
e^{-is A}

Operating a quantum computer is all about the group of unitary matrices

\forall A=A^\dagger, B=B^\dagger: ~~M = e^{ [A,B]}\in U(d)

Think of rotations on a sphere

The Lie bracket of two 'velocities' is again a velocity:

Check: \([A,B]^\dagger = (AB- BA)^\dagger = B^\dagger A^\dagger -A^\dagger B^\dagger = -[A,B]\)

M^\dagger = (e^{ [A,B]})^\dagger = e^{ [A,B]^\dagger}=e^{ -[A,B]}=M^{-1}
U(d)
e^{ [A,B]}

\([A,B]^\dagger = -[A,B]\)

Check: \([A,B]^\dagger = -[A,B]\)

U(d) = \{ M\in \mathbb C^{d\times d}: M^{-1} = M^\dagger\}

Operating a quantum computer is all about the group of unitary matrices

\forall A=A^\dagger, B=B^\dagger: ~~M = e^{ [A,B]}\in U(d)

Think of rotations on a sphere

Fact 3: The Lie bracket of two 'velocities' is again a velocity 

U(d) = \{ M\in \mathbb C^{d\times d}: M^{-1} = M^\dagger\}
e^{isA}e^{isB}e^{-isA}e^{-isB} = e^{-s^2[A,B]}+O(s^3)
e^{is A}
e^{isB}
e^{-isB}
e^{-is A}

Operating a quantum computer is all about the group of unitary matrices

U(d) = \{ M\in \mathbb C^{d\times d}: M^{-1} = M^\dagger\}

Think of rotations on a sphere

Fact 3: The Lie bracket of two 'velocities' is again a velocity 

My quantum algorithms use such unitary matrices - they are implementing Riemannian gradient descent

e^{isA}e^{isB}e^{-isA}e^{-isB} = e^{-s^2[A,B]}+O(s^3)
\forall A=A^\dagger, B=B^\dagger: ~~M = e^{ [A,B]}\in U(d)

The main tool of double-bracket quantum algorithms

e^{is A}
e^{isB}
e^{-isB}
e^{-is A}
E(\psi) = \langle \psi| H | \psi\rangle
| \psi\rangle \mapsto \ket{\psi'}= e^{is A}|\psi\rangle

Note that choosing \(A=H\) doesn't change the energy

E(\psi') = \langle \psi| e^{-is H} He^{isH} | \psi\rangle = E(\psi)

Let's find which directions \(A\) are more useful!

\(\partial_{i,j}\) points to the interior, not tangential so which direction is best?

g
W
iH
iA

Text

We need to find a tangential direction which lowers the energy of \(\ket\psi\)

Riemannian gradient: Unique vector \(g\) in the tangent space
such that the directional derivative is a projection onto \(g\)

\nabla_W f(x) = \text{lim}_{s\rightarrow 0}\frac{ f(x+s W) - f(x)}{s} = \langle g, W\rangle

\(\partial_{i,j}\) points to the interior, not tangential so which direction is best?

g
W
iH
iA
Tr(ABC) = Tr(CAB)
\langle g, W\rangle_{\rm{HS}} = \mathrm{Tr}\left(g^\dagger W\right)
(|\psi\rangle\langle \psi|)^\dagger = |\psi\rangle\langle \psi|, H^\dagger = H

We will use very simple ingredients to find \(g\) for \(E(\psi) =  \langle \psi|  H | \psi\rangle\):

Hilbert-Schmidt scalar product:

Cyclicity of trace:

Tangent space:

E(\psi) = \langle \psi| H | \psi\rangle
| \psi\rangle \mapsto \ket{\psi'}= e^{is A}|\psi\rangle

Let's see how a direction \(A=A^\dagger\) changes the energy of \(\ket\psi\)

Tr(ABC) = Tr(CAB)\\ \Downarrow \\ Tr(|\psi\rangle\langle \psi| [H,A] ) = Tr([|\psi\rangle\langle \psi|,H]A)
\partial_s \langle \psi| e^{-isA}He^{isA}| \psi\rangle_{|s=0} = -i\langle \psi| [A,H]| \psi\rangle
=- iTr\left[|\psi\rangle\langle\psi| [A,H]\right]

This bracket is called the Riemannian gradient

g
W
iH
iA
g \equiv -i[|\psi\rangle\langle \psi|,H]
|\psi'\rangle = e^{s[|\psi\rangle\langle \psi|,H]} |\psi\rangle
|\psi\rangle \mapsto e^{isg} |\psi\rangle
|\psi''\rangle = e^{s[|\psi'\rangle\langle \psi'|,H]} |\psi'\rangle

Double-bracket quantum algorithms:

Systematic framework for implementing  exponentials of commutators on quantum computers. This uncovered new unitary synthesis formulas.

e^{is A}
e^{isB}
e^{-isB}
e^{-is A}

Double-bracket flows

\partial_t O(t)= i[H,O(t)]
\partial_t \rho(t)= i[H,\rho(t)]
\partial_t A(t)= [A(t),[A(t),B]]
H \sim -i[A(t),B]

Heisenberg equation
Linear, variable: observable


 

Schroedinger equation
Linear, variable: density matrix


 

Double-bracket flow

 
Non-linear, variable: density matrix or observable



The solution is a unitary rotation because


 

Why double a bracket?

\partial_t \hat A(t) = i [ \hat H(t), \hat A(t)]
\partial_t \hat A(t) = [ \hat H(t), [\hat H(t), \hat A(t)]]
=

2 qubit unitary

Canonical

\partial_t \hat A(t) = [ \hat A(t), [\hat A(t), \hat B]]

Double-bracket quantum algorithms

are inspired by double-bracket flows

and allow to perform optimization through short quantum computations

4 stages of creating quantum algorithms

2. Design choice:
How to go about it?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

3. Circuit compilation:
What gates to do?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

0. Problem choice:
What challenge to take up?

3. Unitary synthesis:
How to do it?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|} = e^{\tau[|\psi\rangle\langle\psi|,H]}|\psi\rangle +O(\tau^2)

4 stages of creating quantum algorithms

4 stages of creating quantum algorithms

2. Design choice:
How to go about it?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

1. Problem choice:
What challenge to take up?

Double-bracket quantum algorithms:

Systematic framework for unitary synthesis

4 stages of creating quantum algorithms

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}
E(\psi) = \langle \psi| H | \psi\rangle
e^{s[|\psi\rangle\langle \psi|,H]} |\psi\rangle

4. Circuit compilation:
What gates to do?

3. Unitary synthesis:
How to do it?

4 stages of creating quantum algorithms

\frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|} = e^{\tau[|\psi\rangle\langle\psi|,H]}|\psi\rangle +O(\tau^2)

Product formula approximation:

\(e^{\tau[|\psi\rangle\langle\psi|,H]} =  e^{i\sqrt{\tau}H}e^{i\sqrt{\tau}|\psi\rangle\langle\psi|}e^{-i\sqrt{\tau}H}e^{-i\sqrt{\tau}|\psi\rangle\langle\psi|} + O(\tau^{3/2})\)

4 stages of creating quantum algorithms

2. Unitary synthesis:
How to do it?

1. Design choice:
How to go about it?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

3. Circuit compilation:
What gates to do?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

0. Problem choice:
What challenge to take up?

= e^{i\sqrt{\tau}H}e^{i\sqrt{\tau}|\psi\rangle\langle\psi|}e^{-i\sqrt{\tau}H}|\psi\rangle + O(\tau^{3/2})

3. Circuit compilation:
What gates to do?

Product formula approximation:

\(e^{\tau[|\psi\rangle\langle\psi|,H]} =  e^{i\sqrt{\tau}H}e^{i\sqrt{\tau}|\psi\rangle\langle\psi|}e^{-i\sqrt{\tau}H}e^{-i\sqrt{\tau}|\psi\rangle\langle\psi|} + O(\tau^{3/2})\)

Quantum algorithm DB-QITE - iterate recursively:

  1. Define \(|{\psi_k}\rangle = U_k |0\rangle\)
  2. Use \(e^{is |\psi_k\rangle\langle\psi_k|} = U_ke^{is |0\rangle\langle0|}U_k^\dagger \)
  3. Recursively iterate \( U_{k+1} = e^{is H} U_k e^{is |0\rangle\langle 0|} U_k^\dagger e^{-is H} U_k\)

3 stages of creating quantum algorithms

1. Design choice:
How to go about it?

3. Circuit compilation:
What gates to do?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

0. Problem choice:
What challenge to take up?

e^{itH}\\ e^{it|\psi\rangle\langle\psi|}

4 stages of creating quantum algorithms

2. Unitary synthesis:
How to do it?

PRL '26

3. Circuit compilation:
What gates to do?

Product formula approximation:

\(e^{\tau[|\psi\rangle\langle\psi|,H]} =  e^{i\sqrt{\tau}H}e^{i\sqrt{\tau}|\psi\rangle\langle\psi|}e^{-i\sqrt{\tau}H}e^{-i\sqrt{\tau}|\psi\rangle\langle\psi|} + O(\tau^{3/2})\)

Quantum algorithm DB-QITE - iterate recursively:

  1. Define \(|{\psi_k}\rangle = U_k |0\rangle\)
  2. Use \(e^{is |\psi_k\rangle\langle\psi_k|} = U_ke^{is |0\rangle\langle0|}U_k^\dagger \)
  3. Recursively iterate \( U_{k+1} = e^{is H} U_k e^{is |0\rangle\langle 0|} U_k^\dagger e^{-is H} U_k\)

3 stages of creating quantum algorithms

1. Design choice:
How to go about it?

3. Circuit compilation:
What gates to do?

|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}

0. Problem choice:
What challenge to take up?

e^{itH}\\ e^{it|\psi\rangle\langle\psi|}

4 stages of creating quantum algorithms

2. Unitary synthesis:
How to do it?

PRL '26

Numerical results for DB-QITE:

DB-QITE:

  1. Define \(|{\psi_k}\rangle = U_k |0\rangle\)
  2. Recursively iterate \( U_{k+1} = e^{is H} U_k e^{is |0\rangle\langle 0|} U_k^\dagger e^{-is H} U_k\)

Then:







Quantinuum

PRL '26

Double-bracket quantum algorithms

Click these links at slides.com/marekgluza

Diagonalization https://arxiv.org/abs/2206.11772
Imaginary-time evolution https://arxiv.org/abs/2412.04554
Quantum signal processing https://arxiv.org/abs/2504.01077
Grover's search https://arxiv.org/abs/2507.15065 Approximates ITE
U^\dagger H U = \begin{pmatrix} \lambda_0&&\\ &\lambda_1&\\ &&\ddots \end{pmatrix}
|\psi(\tau)\rangle = \frac{e^{-\tau H}|\psi\rangle}{\| e^{-\tau H}|\psi\rangle\|}
\frac{ \prod_{k=1}^K(H-z_k I)|\psi\rangle}{\| \prod_{k=1}^K(H-z_k I)|\psi\rangle\|}
\prod_{k=1}^Ke^{i\theta_k|\psi_k\rangle\langle\psi_k|} e^{s_k[|\psi_k\rangle\langle\psi_k|,H]}|\psi\rangle
H' = e^{-s[D,H]}H e^{s[D,H]}
e^{s[|\psi\rangle\langle\psi|,H]}|\psi\rangle +O(\tau^2)
(1-2|\psi\rangle\langle\psi|)\times e^{i t H_f}
e^{s[|\psi\rangle\langle\psi|,H]}|\psi\rangle

Solve the unitary synthesis problem in all these cases through Riemannian gradients!

Double-bracket quantum algorithms

  • Coherently implement Riemannian gradient steps
  • Give rigorous unitary synthesis for
    • imaginary-time evolution
    • quantum signal processing
    • diagonalization unitaries
    • Grover's as an approximation to imaginary-time evolution
  • Training quantum circuits from data doesn't work well, unlike in classical machine learning applications. However those variational learning methods are great  for warm-starting double-bracket quantum algorithms!

Tell me when not fast enough? Get stuck? Something else?

Your input is needed to improve them!

N. Ng

Z. Holmes

R. Zander

R. Seidel

Y. Suzuki

B. Tiang

J. Son

S. Carrazza

Stay in touch on LinkedIn:

Text

Text

Text