# Is it possible to express u1(λ) through the gates rx, ry, rz while maintaining the phase? In Qiskit for example

Is it possible to express gate u1(λ) through the gates rx, ry, rz while maintaining the phase? Both in principle and in practice (in Qiskit for example)? The single gate rz(λ) is not suitable, because loses phase. And the function transpile (Qiskit) throws an error: "Cannot unroll the circuit to the given basis, ['rx', 'ry', 'rz']. No rule to expand instruction u1" ...

• As a side-note: In Qiskit right now, the RZ gate is equal to U1 because the global phase is ignored. So if you do circuit = QuantumCircuit(1); circuit.rz(lambda) that would implement a u1($\lambda$). – Cryoris Jun 18 '20 at 16:05
• It throws this error because u1 is already the "most basic" gate and cannot be further decomposed. – Cryoris Jun 18 '20 at 16:06
• Yes, in some cases the global phase is ignored in Qiskit: somewhere for the reason that the global phase is undetectable (| ψ⟩: = exp(iδ) | ψ⟩), and somewhere because of implementation errors, but there are also many places in Qiskit, where the global phase is not ignored. My original question is about the latter. – Aleksey Zhuravlev Jun 18 '20 at 16:25