# Can I combine controlled unitaries in IPE?

Suppose I have two controlled unitary ($$U_3$$) gates which implement controlled $$e^{-iHt_1}$$ and controlled $$e^{-iHt_2}$$ (they share the same control qubits), where $$H$$ is the same Hamiltonian. My question is would that be equivalent to controlled $$e^{-iH(t_1+t_2)}$$?

My intuition is yes, but when I tried to work on the iterative phase estimation (on a 2-state system), I didn't get the result expected. Here's the circuit whose controlled unitaries are not combined (the result makes sense to me, there are two eigenvalues): However, as the unitaries are combined (times added up), the circuit becomes and the result gets messy (I was expecting that to be the same as the result above): I wonder why the two circuits are not doing the same thing. When the iteration gets large in IPE, the circuit depth will grow exponentially if I do not combine the controlled unitaries.

Thanks for the help!!

Your intuition is correct. The issue is in the implementation.

I'm not sure how did you calculate the angles in the equivalent gate, but you can check that it is not actually equivalent by calculating the circuit unitary as follows:

from qiskit.quantum_info.operators import Operator
from qiskit.visualization import array_to_latex

circ = QuantumCircuit(2)
for m in range(8):
circ.cu(1.7, 2.05, -0.509, 0, 0, 1)

array_to_latex(Operator(circ))


And for your proposed equivalent circuit:

circ = QuantumCircuit(2)
circ.cu(4.96, 0.782, -1.78, 0, 0, 1)

array_to_latex(Operator(circ))


An easy way to get a gate equivalent to a repeated gate is by using Gate.power() method as follows:

from qiskit.circuit.library import CUGate

cu_pow_8 = CUGate(1.7, 2.05, -0.509, 0).power(8)
circ.append(cu_pow_8, [0, 1])

array_to_latex(Operator(circ))

• Thanks!! That's super helpful :)
– IGY
Commented Mar 11, 2022 at 3:30