- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在研究 Cirq,需要对量子位执行某些酉运算。为此,我在 Cirq 中使用了 MatrixGate()
函数。与 Qiskit 不同,我找不到任何像分解或转译这样的函数来将幺正运算简化为基本的 U3 和 CNOT 门。
例如,如果我想执行以下幺正运算符,
为此,我在 Qiskit 中使用了这段代码。在 Cirq 中寻找等效的东西。
qc=QuantumCircuit(2)
qc.unitary(U,[0,1])
qc=transpile(qc,basis_gates=['cx','u3'])
qc.draw(output='mpl')
使用Qiskit中的Transpile功能后
我什至尝试研究 Qiskit 用来分解这些酉运算的余弦-正弦分解算法。如论文中所述,Quantum Circuits for Isometries ,但它们不会轻易产生所需的分解。请通过以下建议提供帮助:
最佳答案
这种方法的一个例子是 cirq.two_qubit_matrix_to_operations
。它使用 kak 分解(cartan 分解)来确定如何使用最少的 CZ 门将酉矩阵转换为一系列操作。
import cirq
desired_matrix = cirq.testing.random_unitary(dim=4)
synthesized_operations = cirq.two_qubit_matrix_to_operations(
cirq.LineQubit(0),
cirq.LineQubit(1),
desired_matrix,
allow_partial_czs=False,
)
circuit = cirq.Circuit(synthesized_operations)
synthesized_matrix = cirq.unitary(circuit)
cirq.testing.assert_allclose_up_to_global_phase(
desired_matrix,
synthesized_matrix,
atol=1e-4
)
print(desired_matrix.round(3))
print(circuit)
打印(例如):
[[ 0.234-0.169j -0.81 +0.038j -0.327+0.138j -0.364-0.029j]
[-0.503-0.407j 0.221-0.206j 0.063+0.144j -0.629-0.264j]
[ 0.271+0.338j 0.337-0.128j -0.343+0.731j -0.165+0.052j]
[ 0.504+0.236j 0.222+0.269j 0.244-0.371j -0.608-0.043j]]
0: ───PhX(-0.283)^0.631───@───PhX(0.673)^0.5────@───PhX(-0.375)^0.5───@───PhX(0.827)^0.147───Z^-0.269───
│ │ │
1: ───PhX(0.508)^0.338────@───PhX(0.65)^(5/6)───@───PhX(0.65)^0.995───@───PhX(0.302)^0.512───Z^-0.516───
关于linear-algebra - 在 Cirq 中分解量子电路,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61835652/
有谁知道如何获得像“ÁlgeBra”这样的 NSString 到“Algebra”,没有重音,并且只大写第一个字母? 谢谢 RL 最佳答案 dreamlax has already mentioned
显然,Alexander Stepanov在interview中声明了以下内容: “I find OOP [object-oriented programming] technically unsou
当我学习 Scala/Haskell 时,我看到了 Algebraic data type 的概念。我已经阅读了维基百科的解释,但我仍然有一个问题: 为什么它的名字中使用“代数”这个词?它与“代数”有
我正在尝试像 this page 中那样编写 F 代数.不同之处在于,不是用元组组合,而是像这样: type FAlgebra[F[_], A] = F[A] => A def algebraZip[
我一直在寻找这个问题,但我无法理解这个问题的含义。 问题: Write a program in any language to determine how your computer handles
我正在 Inside Microsoft SQL Server 2008: T-SQL Querying by Itzik Ben-Gan, Lubor Kollar, Dejan Sarka, an
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 10年前关闭。 Improve this
对于大型稀疏迭代(共轭梯度、MINRES、GMRES 等)线性代数系统求解,有哪些更好的库?我经常编写自己的程序,但我很想知道人们更喜欢哪种“现成的”软件包。我听说过 PETSc、TAUCS、IML+
换句话说,是否真的:r1 ⋈ (r2 - r3) = r1 ⋈ r2 - r1 ⋈ r3 其中 r1 r2 和 r3 是关系 如果不是,示例是什么? 最佳答案 是的。 取一个元组 t,具有 JOIN
我不知道如何解决关系代数问题。 Deposit (Branch, Acc-No, Cust-Name, Balance) Loan (Branch, Loan-No, Cust-Name, Balan
密集线性代数在现实世界中的常见应用是什么? 使用线性代数作为人机之间的通用语言,可以轻松描述和高效计算许多问题。尽管这些系统通常需要稀疏矩阵的解,而不是稠密矩阵。违反此规则的常见应用有哪些? 我很好奇
我如何找到 广义特征值、向量 使用 Eigen3 图书馆? 在 Octave ,matlab,特征值函数的形式是:[V, lambda] = eig (A, B) . 我只能找到 this 类(cla
考虑一个关系 Human(name, age, height, weight) .更新属性,例如整个关系的年龄,我可以写Human <- π name,age*2,height,weight (Hum
我在 n 个变量中有 k 个线性不等式 (0 < k < n)。我并不特别关心解决方案集是什么,我只想测试它是否为空 - 即对我的 n 个变量的任何赋值是否满足系统。有人知道解决这个问题的方法吗? 谢
SQL中有一个DISTINCT运算符。但是,我有一个作业,需要从表中获取一些不同的值,并且我只能使用关系代数。有办法吗? 最佳答案 关系运算符总是返回不同的元组,因此永远不需要 DISTINCT。 R
我是关系代数的初学者,我无法完全理解笛卡尔积的工作原理。 我想知道当我的两个表具有共同属性时笛卡尔积会发生什么。当两个表没有任何共同属性时,我可以毫无疑问地理解。 例如,我试图理解我自己制作的示例。
在求两个平面相交的直线时,需要计算两个平面法线的叉积。这个叉积只是取矩阵的行列式: i j k x1 y1 z1 x2 y2 z2 其中(x,y,z)是每个平面的法向量。结果是平行于交线的向量。从
似乎有许多有用的矩阵数学应用程序,其中给定矩阵中的并非所有条目都共享相同的单位。我想研究可以跟踪这些单位的类型系统,并确保我们不会犯错误(类似于已经对标量算术进行维检查的许多库和语言)。我将举一个我正
当 A 是对称半正定时,我正在研究共轭梯度来求解 Ax=b。 当 A 是对称半正定矩阵时,(A+λ I) 是否总是正定矩阵?既然(A+λ I) 是对称正定的,那么我们可以用(A+λ I) 代替CG 中
有人可以向我解释这里发生了什么以及如何解决这个问题吗? 假设关系 R(A,B) 有元组: A B1 23 45 6 并且关系 S(B,C,D) 有元组: B C D2 4 64 6 84 7 9 计算
我是一名优秀的程序员,十分优秀!