我正在使用Cirq,需要对qubit执行某些单一操作。为此,我正在使用MatrixGate()Cirq中的函数。与Qiskit不同,我找不到像分解或转换之类的函数来简化对基本U3和CNOT门的统一运算。
例如,如果我要执行以下统一运算符,
一元运算符
为此,我在Qiskit中使用此代码。在Cirq中寻找等效项。
qc=QuantumCircuit(2) qc.unitary(U,[0,1]) qc=transpile(qc,basis_gates=['cx','u3']) qc.draw(output='mpl')
Gate门
在Qiskit中使用Transpile函数之后
转运Unit门
我什至尝试建立余弦-正弦分解算法,Qiskit用来分解这些these运算。如论文“ Isometries的量子电路”中所述,但它们并不能产生所需的分解。请通过以下两种方式提出帮助:
Cirq中的一些代码可以分解电路或一种将Qiksit电路导出到Cirq或分解单一运算的更简单算法。