Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 哈斯克尔适合量子计算吗?_Haskell_Quantum Computing - Fatal编程技术网

Haskell 哈斯克尔适合量子计算吗?

Haskell 哈斯克尔适合量子计算吗?,haskell,quantum-computing,Haskell,Quantum Computing,我刚刚读了一篇关于量子物理学的文章。一件有趣的事情是,在Haskell程序员看来,这两个领域之间有一些相似之处 首先,量子世界中的测量似乎类似于哈斯克尔的懒惰评估:如果你不测量,你就不知道猫是活的还是死的。如果不计算,则不知道该值是已定义的还是未定义的 第二,在量子力学中,我们可以用速度高于光速的相互作用来解释,或者等效地说,时间机器。在Haskell中,正如我们在中所看到的,我们可以通过递归do访问来自未来的值 最后,在量子力学中,我们必须区分熵从不减少的可观测世界和时间在两个方向上相等的“纯

我刚刚读了一篇关于量子物理学的文章。一件有趣的事情是,在Haskell程序员看来,这两个领域之间有一些相似之处

首先,量子世界中的测量似乎类似于哈斯克尔的懒惰评估:如果你不测量,你就不知道猫是活的还是死的。如果不计算,则不知道该值是已定义的还是未定义的

第二,在量子力学中,我们可以用速度高于光速的相互作用来解释,或者等效地说,时间机器。在Haskell中,正如我们在中所看到的,我们可以通过递归
do
访问来自未来的值

最后,在量子力学中,我们必须区分熵从不减少的可观测世界和时间在两个方向上相等的“纯”量子世界。在Haskell中,我们有一个描述程序实际功能的
IO()
世界,一个没有副作用的纯函数世界,值也不依赖于计算顺序


因此,我想上述事实表明,这两个领域之间存在一些相互联系。这能产生更有趣的结果吗?例如,虽然我已经谈到了EPR悖论,但我不知道如何创建一个Haskell程序来模拟这一点:一个函数创建两个值,随后对其中一个值的求值将影响另一个值(我认为这些值必须具有
IO()
类型,但我不知道如何将它们组合在一起).

Haskell作为量子编程语言已经使用了一段时间

主要的参考点是Haskell中的Quipper DSL


更有趣的是-

计算机语言不仅仅是一个理论概念。即使两个概念(或看起来)相似,也不一定与其中一个是否适用于另一个有任何关系。使用短语“时间机器”表明你还没有完全理解EPR悖论。要得到一个非常清楚的解释,请参阅Mermin的文章:。所有这些类比都是。。。好吧,启发性的,老实说大部分都是错的。“但这仍然是一个好问题。”多米尼克斯泰尼茨不,“时间机器”的解释是由我读过的一本书提出的。作者认为,测量的效果实际上可以追溯到两篇相关文章分开的时间。如果不使用量子物理,“比光还快的相互作用”对一些观察者来说意味着“结果发生在其原因之前”,意味着“时间机器”。因此,如果“比光速更快的相互作用”可以解释“时间机器”也可以解释的话。另请参见阿姆·萨布里(Amr Sabry)在哈斯凯尔(Haskell)中的量子计算建模——以及杰尔齐·卡尔扎克(Jerzy Karczmarczuk)的量子力学结构和解释。这两个都出现在2003年的Haskell研讨会上。谢谢,你能解释一下你最后参考链接中出现的简单的
传送
程序吗?看起来很有趣。