量子计算机是什么?为什么说它可以改变世界?
你还认为你的支付过程绝对安全吗?随着世界上第一台量子计算机的问世,传统计算机在保密过程中的安全性正面临着严峻挑战。什么是量子计算机?你对它的了解又有多少呢?一提到量子,你可能首先想到的就是量子力学中的各种理论,薛定谔的猫、量子纠缠等等,而正是得益于这些理论,量子计算机才具有了可能颠覆传统计算机的强大能力。让我们从比特开始,一步步来揭开量子量子计算机的神秘面纱。比特是信息量最小的单位,其含义是一个二进制数即0或1,它在香农所写的信息论中被第一次正式使用。在经典计算机中,我们通常使用电路上的高低电平来表示1、0这两个数,如果把它比作一个开关,那就只有开和关两种状态,而在同一时刻,它也只能表示开或关的其中一种状态。而量子计算机中的比特,我们称之为量子比特,它是一个最简单的量子系统,一个量子比特也可以用0和1来表示,但与经典比特的不同点在于,它可以处于,0和1的叠加状态,那我们该如何理解这种叠加状态呢?
著名物理学家薛定谔曾提出过一个思想实验,薛定谔的猫,在一个盒子里放一只猫和一个毒气瓶,它有百分之五十的概率会被放射性物质衰变所释放的有毒物质杀死,还有百分之五十的概率因为放射性物质不会衰变而存活下来。根据尝试,即使我们不去观察猫的状态,它也一定会处于生或死的某种单一状态中,而在量子的世界中,只有观察者打开盒子,猫才会以确定的状态出现,否则它将一直处于既生又死这种无法想象的状态中。让我们回到量子技术算中来,量子比特也满足这样的量子不确定性原理,它可以处在既是0又是1的状态,只有当我们去观测它时,才会变成一个确定的状态,就是由于量子叠加的原理,才为量子并行计算提供了基础,同时也提供了加速经典算法的潜能,这里我们举个简单的例子来说明量子并行计算的基本思想。
对于某个运算f(x),我们要计算得到f(0)和f(1),在经典计算机中,我们需要运行两次,而在量子计算机中,我们只需要把叠加态作为输入,就可以通过一次运算得到f(0)和f(1)。虽然量子并行计算在理论上还面临着许多困难,但仍有一些量子算法巧妙地利用了这种思想,并成功地对经典算法进行了加速,比如Shor算法和Grover算法等等。其中输入算法具有非常重要的意义,它能够实现对整数分解问题的加速,要知道此问题在经典计算机上是一项非常耗时的任务,而目前在计算机上被广泛使用的公钥加密算法RSA,就是基于这类问题的复杂性提出的,在量子计算机上运行的Shor算法,具有快速求解这类问题的能力,比起传统已知最快的因数分解算法,实现了指数加速。
虽然由于硬件条件的限制,目前的量子计算机还只能分解很小的整数,但RSA不再安全或许也只是时间问题,而量子计算机所具备的强大能力,未来可能会在更多领域中得到应用,过去的几十年中,量子计算领域发展极为迅猛,在量子计算的加持下,人类科学还能发展成什么样,让未来告诉我们。