如何在Qristal SDK中定义电路运行的次数?

Nin*_*ina 5 quantum-computing qristal-sdk

我已经开始使用 Qristal SDK 创建量子应用程序。我已经让它在 Docker 镜像中运行,并通过使用qpp后端和一种 hello world 计数练习成功打印了结果(尝试查看它实际上运行了算法并返回了量子查询中预期的结果)。

我遇到的问题是如何让它大规模运行。我是否需要随着时间的推移不断运行应用程序(作为量子电路),或者我可以扩展所模拟的量子位以实现更大或更准确的结果吗?

这是我尝试过的电路。

my_sim.instring = '''
__qpu__ void QUANTUMPROGRAM(qreg q)
{
  OPENQASM 2.0;
  include "qelib1.inc";
  creg c[2];
  h q[0];
  cx q[0], q[1];
  measure q[1] -> c[1];
  measure q[0] -> c[0];
}
'''

Run Code Online (Sandbox Code Playgroud)

ddr*_*dri 5

这是一个好的开始。这里重要的概念是,即使是仿真的电路,也会面临与物理生成的量子位相同的相干性和噪声挑战。

此处忽略 Qristal 模拟器(它提供了更准确的噪声模型),核心 SDK 可以像您所显示的那样作为叠加状态来处理,但具有在该实例中运行多个镜头的优势。

这将在您的配置中使用镜头编号参数,如下所示:

my_sim.sn = 100
Run Code Online (Sandbox Code Playgroud)

您定义的发射次数将在您创建的电路上运行,并针对您定义的要模拟的量子位数量。更新后的入门指南提供了您正在运行的第一个程序类型的完整示例。

  • 谢谢。这让我深入了解镜头的作用和连贯时间。 (4认同)