Questions tagged «programming»

对于有关要在量子计算机上执行的编写代码的问题。对于使用特定编程语言或与特定编程语言有关的问题,请考虑也使用更特定的标记。

5
量子计算机可以使用哪些编程语言?
从这个问题中,我得出了主要的量子计算编程语言是Q#和QISKit。 还有哪些其他编程语言可用于量子计算机编程?选择特定的产品有某些好处吗? 编辑:我正在寻找编程语言,而不是模拟器。模拟器模拟事物。编程语言是一种编写指令的方法(用于实际对象或用于仿真器)。可能只有一种语言可用于多个仿真器,反之亦然。


3
如何为D-Wave设备编写简单的程序?
我想知道D-Wave设备的工作是如何用代码编写并提交到设备的。 在答案中,最好是针对一个简单的问题看一个具体的例子。我猜想D-Wave设备的“ Hello World” 就像找到一个简单的2D Ising模型的基态一样,因为这是硬件直接实现的问题。因此,也许这将是一个很好的例子。但是,如果那些有专业知识的人可以使用替代示例,那么我很乐意看到替代方案。


4
量子计算机是否只是50年代和60年代模拟计算机上的变体,而许多人从未见过或从未使用过?
在最近的问题“量子计算只是天空中的馅饼”中,关于量子能力的改进有很多回应,但是所有问题都集中在当前的“数字”计算世界观上。 老式的模拟计算机可以模拟和计算许多复杂的问题,这些问题适合其运行模式,这些运行模式多年来一直不适合数字计算(有些仍然很“困难”)。在战争之前(〜I和II),所有被认为是机械土耳其人大脑的“发条”。我们是否陷入了不断重复出现的“所有数字化”潮流陷阱(没有与“模拟”相关的标签)? 在将量子现象映射到模拟计算以及从该类比中学习方面做了哪些工作?还是所有人都不知道如何编程野兽的全部问题。

3
是否存在开放量子软件项目的完整列表?
答案 是否有任何来源可以将用于模拟物理系统的量子计算算法制成表格?提到了Quantum Algorithm Zoo(量子算法列表)。非物理专业的量子计算机编程的几个答案包括与各种开发套件的链接。同样,量子计算机可以使用哪些编程语言?收集了一些很好的尝试来列出这些。 当前的问题与以上有关,但以上资源并未回答。 是否存在开放量子软件项目的完整列表? 理想的答案是:如果存在,则指向所述列表的链接,如果不存在,则是(格式合理的)开放量子软件项目的详尽列表。 相关问题:是否有量子软件初创公司?

3
一个非常简单的量子程序将是什么样?
看完“ 第一个可编程量子光子芯片 ”。我想知道用于使用量子纠缠的计算机的软件是什么样的。 是否有用于特定量子编程的代码示例?喜欢伪代码还是高级语言?具体来说,什么是可用于创建贝尔状态最短的程序从初始化为一个状态开始| ψ0⟩=| 00⟩同时使用模拟和IBM的一个量子经验处理器,如ibmqx4?| ψ ⟩ = 12–√(| 00 ⟩ + | 11 ⟩)|ψ⟩=1个2(|00⟩+|11⟩)\left|\psi\right> = \frac{1}{\sqrt 2} \left(\left|00\right> + \left|11\right> \right)| ψ0⟩ = | 00 ⟩|ψ0⟩=|00⟩\left|\psi_0\right> = \left|00\right> 使概念从传统编程跃入纠缠并非易事。 我也找到了C的libquantum。

2
自动编译量子电路
这里有一个最近的问题,询问如何将4量子位门CCCZ(受控-受控-受控Z)编译为简单的1量子位和2量子位门,到目前为止给出的唯一答案需要63个门! 第一步是使用Nielsen&Chuang提供的C U构造:nn^n 在这意味着4个CCNOT门和3个简单门(1个CNOT和2个Hadamards足以对目标量子位和最后一个工作量子位进行最终CZ)。n=3n=3n=3 本文的定理1表示,一般而言,CCNOT需要9个1量子位和6个2量子位门(总共15个): 这表示: (4个CCNOT)x(每个CCNOT 15个门)+(1个CNOT)+(2个Hadamards)= 63个门。 在评论中,已经建议可以使用“自动程序”进一步编译63个门,例如根据自动组的理论。 如何进行这种“自动编译”?在这种情况下,它将减少多少个1量子位和2量子位门?


2
复杂系数的哈密顿模拟
作为变分算法的一部分,我想构造一个量子电路(最好是使用pyQuil),该电路模拟以下形式的哈密顿量: H=0.3⋅Z3Z4+0.12⋅Z1Z3+[...]+−11.03⋅Z3−10.92⋅Z4+0.12i⋅Z1Y5X4H=0.3⋅ž3ž4+0.12⋅ž1个ž3+[。。。]+-11.03⋅ž3-10.92⋅ž4+0.12一世⋅ž1个ÿ5X4H = 0.3 \cdot Z_3Z_4 + 0.12\cdot Z_1Z_3 + [...] + - 11.03 \cdot Z_3 - 10.92 \cdot Z_4 + \mathbf{0.12i \cdot Z_1 Y_5 X_4} 说到最后一项,问题是pyQuil引发以下错误: TypeError: PauliTerm coefficient must be real 我开始研究文学,这似乎是一个不平凡的问题。我遇到了有关通用量子哈密顿量的本文,其中讨论了复数到实数编码以及局部编码。但是,我仍然不清楚如何实际实现这样的功能。谁能给我一些解决该问题的实用建议?

2
是否存在从“纯粹的CS背景”开始并朝着“制作新的量子编程语言”发展的学习指南?
我来自计算机科学领域,我发现很难决定学习量子计算时应该关注的资源,因为有很多东西可以阅读/观看。我的最终目标是要使一种编程语言充当量子计算机和1972年C制成的人之间的接口。作为一个现实的中间阶段,我想说一下在IBM QISKit上编写程序的意义。 为此,我需要一个示意性的学习指南,以便获得物理学的必要背景以及深入量子计算领域所需的相关领域。这是否已经存在:一份必不可少的概念和掌握能力的有序清单,如果可能的话,还列出了获得它们的足够材料? 假设具有高中物理知识。提供学习指南,即从初学者到专家的一种指南。尝试按时间顺序列出视频/书籍资源,以便成为量子计算领域的专家,达到我可以编写自己的量子计算语言的水平(假设已经具备其他CS技能来编写该语言) 。

3
有量子软件创业公司吗?
我知道量子硬件初创公司Rigetti,并且想知道是否有任何量子初创公司在当前的量子计算机硬件之上构建用于商业应用的软件? 相关问题:是否存在开放量子软件项目的完整列表?

2
在QISKit中的单个量子程序中组成多个量子电路
我想知道是否有一种方法可以组成一个具有多个量子电路的程序,而不必为每个电路将寄存器重新初始化为。000 具体来说,我想在运行第一个量子电路之后再运行第二个量子电路,如下例所示: qp = QuantumProgram() qr = qp.create_quantum_register('qr',2) cr = qp.create_classical_register('cr',2) qc1 = qp.create_circuit('B1',[qr],[cr]) qc1.x(qr) qc1.measure(qr[0], cr[0]) qc1.measure(qr[1], cr[1]) qc2 = qp.create_circuit('B2', [qr], [cr]) qc2.x(qr) qc2.measure(qr[0], cr[0]) qc2.measure(qr[1], cr[1]) #qp.add_circuit('B1', qc1) #qp.add_circuit('B2', qc2) pprint(qp.get_qasms()) result = qp.execute() print(result.get_counts('B1')) print(result.get_counts('B2')) 不幸的是,我得到的是两次运行的结果相同(即11,B1和B2而不是11和00第二次的计数,就好像B2是在00after之后初始化的全新状态下运行一样B1。

3
一种示例量子算法,可用于演示语言
我正在寻找一种量子算法,可以用来演示不同量子语言的语法。我的问题与此类似,但是对我来说,“好”的意思是: 它的作用可以在1-2段中描述,并且应该易于理解。 应该使用“量子编程世界”中的更多元素(我的意思是,算法应尽可能多地使用一些经典常量,度量,条件,q寄存器,运算符等)。 该算法应该很小(最多15-25个伪代码行)。 有用的算法通常太长/太难了,但是Deutsch的算法并没有使用那么多元素。有人可以推荐我一个适合演示的算法吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.