上一篇文章我们讲了量子计算机的一些概念,文章不短,但是信息量很少。这里继续深入量子机来揭开qubit的神秘面纱。

这篇文章会有一些数学概念,不过很简单

量子叠加

量子叠加非常重要,因为qubit就是利用的这个机制。

我们先给自旋建立一个数学模型,这个模型也简单得令人发指,在里面我们也会学习一些简单的数学符号!

我们说粒子自旋是在叠加态,就是说它是自旋向上和向下的线性叠加。下面是使用狄拉克符号表示的式子:



其中的系数\(\alpha\)称为对应状态的振幅。上旋和下旋都是向量,系数是复数。结果也是向量,用狄拉克符号$|\psi\rangle $表示振幅向量:



上旋和下旋都使用二维向量,它们是一对正交基:



对偶形式就是(注意右矢变左矢了)

所以都是简单的矩阵乘法和线性代数,只是使用狄拉克符号简写了。熟悉了以后就能写出很多短小的形式,比如二维正交基向量的内积是 1 × 2 和 2 × 1两个矩阵的乘积,表示为\(\langle 0|1\rangle\);由于正交,结果总是0。任何叠加态自己的内积都是1,因为总的概率是1。



下面是一些其他叠加态的狄拉克表示,看看就行,能记就记:

你可以通过《量子计算中的数学》了解更多一点狄拉克记号。

假设一个粒子的叠加态是\(\frac{1}{\sqrt{2}}|0\rangle+\frac{1}{\sqrt{2}}|1\rangle\),当你测量时,坍缩到某个状态的概率就是对应振幅的平方:这个数学模型和实验结果匹配的非常好。这个例子里每个状态的坍缩概率都是\(\frac{1}{2}\)。

我们可以使用一个称为布洛赫球的单位球直观的“观察”叠加态。球的北极和南极分别代表上旋和下旋,所以球上的红点就是一个叠加态,当测量时它会回落到南极或北极(概率上讲,北极概率大一些)。



实际上叠加态的振幅都可以是复数,比如\(\frac{1-i}{2\sqrt{2}}|0\rangle+\frac{1+i}{2\sqrt{2}}|1\rangle\),你算一下振幅平方和是不是1(振幅是系数的范数,所以虚数振幅的平方是它们跟自己的共轭虚数的积,也就是\(3+4i\)需要和\(3-4i\)相乘)。

下面是球面上6个关键点的叠加态值:

我们回忆一下,复合物理系统的状态空间通过张量积来计算。比如下面是三个qubit对的例子:

\[\frac{1}{\sqrt{2}}(|0\rangle+|1\rangle)\otimes |1\rangle\otimes|1\rangle\equiv \frac{1}{\sqrt{2}}(|011\rangle+|111\rangle)\equiv\frac{1}{\sqrt{2}}(|3\rangle+|7\rangle)
\]

下面是一个2qubit组合的粒子:

\[|\Psi_0\rangle=\alpha_0|0\rangle+\alpha_1|1\rangle,|\Psi_1\rangle=\beta_0|0\rangle+\beta_|1\rangle
\]
\[|\Psi_0\rangle|\Psi_1\rangle=\alpha_0\beta_0|00\rangle+\alpha_0\beta_1|01\rangle+\alpha_1\beta_0|10\rangle+\alpha_1\beta_1|11\rangle
\]

所以,对于2qubit的系统会有4个状态基向量,系数都是复数:

\[|\Psi\rangle=\alpha_{00}|00\rangle+\alpha_{01}|01\rangle+\alpha_{10}|10\rangle+\alpha_{11}|11\rangle
\]

对于3qubit系统就会有8个:

\[|\psi_2\rangle=a_0|000\rangle+a_1|001\rangle+a_2|010\rangle+a_3|011\rangle+a_4|100\rangle+a_5|101\rangle+a_6|110\rangle+a_7|111\rangle
\]

这样一来,64个qubit的系统状态向量基就是20位数的18,446,744,073,709,551,616!所以64位的量子机(相对于传统计算机只能存储一个长整型)能存储的数据量将是极大的。而我国目前的高端量子实验用的都是上百位的qubit。

未完...

量子位能存储特大量数据,但是要使用就需要测量,一测量它的数据就极少了。

量子机没有加减乘除这些东西,该怎么运算呢?我们继续...

量子位(qubit)发微的更多相关文章

  1. 社区活动分享PPT:使用微软开源技术开发微服务

    上周六在成都中生代技术社区线下活动进行了一个名为"微软爱开源-使用微软开源技术开发微服务"的技术分享. 也算是给很多不熟悉微软开源技术的朋友普及一下微软最近几年在开源方面所做的努力 ...

  2. 5000量子位支持量子编程,D-Wave推出下一代量子计算平台计划

    5000量子位支持量子编程,D-Wave推出下一代量子计算平台计划 近日,全球量子商用化重要参与者 D-Wave 公司又有大动作:推出其5000量子比特量子计算的发展蓝图.D-Wave 下一代量子计算 ...

  3. 使用.NET Core+Docker 开发微服务

    .NET Core发布很久了,因为近几年主要使用java,所以还没使用过.NET Core,今天正好有一个c#写的demo,需要做成服务,不想再转成java来实现,考虑使用.NET CORE来尝下鲜, ...

  4. .net 与 java 开发微服务对比

    java+spring boot+maven对比.net 优势: 1. spring 自身带的ioc 比.net 更简单易用. 2. spring actuator的健康检测等运行时状态查看功能很赞. ...

  5. Spring boot 零配置开发微服务

    2018年12月29日星期六 体验Spring boot 零配置开发微服务 1.为什么要用Spring  boot? 1.1 简单方便.配置少.整合了大多数框架 1.2 适用于微服务搭建,搭建的微服务 ...

  6. 使用Ingress来负载分发微服务

    目录 使用Ingress来负载分发微服务  Demo规划  准备Demo并完成部署  创建部署(Deployment)资源  创建服务(Service)资源  创建Ingress资源并配置转发规则  ...

  7. 通AI启示录,从一篇数学物理基础论文说起 原创: 关注前沿科技 量子位 今天 允中 发自 凹非寺

    通AI启示录,从一篇数学物理基础论文说起 原创: 关注前沿科技 量子位 今天 允中 发自 凹非寺

  8. [学习笔记]尝试go-micro开发微服务<第一波>

    平时项目都是基于c++,lua,node, 现在打算开始自学开发微服务;   也顺带磨砺下go和docker 前期准备 1. 有golang编程基础 本系列文章是基于有golang编程基础,有过实际开 ...

  9. 低代码平台--基于surging开发微服务编排流程引擎构思

    前言 微服务对于各位并不陌生,在互联网浪潮下不是在学习微服务的路上,就是在使用改造的路上,每个人对于微服务都有自己理解,有用k8s 就说自己是微服务,有用一些第三方框架spring cloud, du ...

  10. Dubbo 入门系列之基于 Dubbo API 开发微服务应用

    目标 从零上手开发基于 Dubbo 的微服务 难度 低 环境要求 系统:Windows.Linux.MacOS JDK 8 及以上(推荐使用 JDK17) Git IntelliJ IDEA(可选) ...

随机推荐

  1. juc之ConcurrentHashMap在我工作中的实践

    Map是我工作中应用比较多的数据结构之一,主要用来存储一些kv的映射信息,如果是单线程环境下我会优先使用HashMap,但是如果在多线程环境下继续使用HashMap我不确定会不会被我老大打死,为了生命 ...

  2. nim 5. 读写文件

    读文件 假设nim程序相同的文件夹下,有个people.txt文件,内容如下: Alice A. Bob B. Carol C. 读取这个文件的代码 import strutils let conte ...

  3. get pull报错 Please commit your changes or stash them before you merge

    当本地分支和远程修改了同一个文件代码,pull远程分支的代码的时候会出现文件冲突 出现这个错误 Please commit your changes or stash them before you ...

  4. ASP.NET Core的全局拦截器(在页面回发时,如果判断当前请求不合法,不执行OnPost处理器)

    ASP.NET Core RazorPages中,我们可以在页面模型基类中重载OnPageHandlerExecuting方法. 下面的例子中,BaseModel继承自 PageModel,是所有页面 ...

  5. Python:当函数做为参数时的技巧

    我们之前在<Python技法3: 匿名函数.回调函数.高阶函数>中提到,可以通过lambda表达式来为函数设置默认参数,从而修改函数的参数个数: import math def dista ...

  6. 推荐一款模拟浏览器自动化操作神器!Mechanize

    大家好,我是狂师! 今天给大家推荐一款用于模拟浏览器行为以进行网页自动化操作Python库:Mechanize. 1.介绍 Mechanize是Python中的一个库,它被设计用来自动化网页浏览和数据 ...

  7. 开源项目 cloud-platform 的本地部署

    F7 单步调试,进入函数内部 F8 单步调试,不进入函数内部 F9 继续执行,进入下一个断点或执行完程序 Shift+F7 选择要进入的函数 Shift+F8 跳出函数 Ctrl+F8 设置/取消当前 ...

  8. 莫烦tensorflow学习记录 (2)激励函数Activation Function

    https://mofanpy.com/tutorials/machine-learning/tensorflow/intro-activation-function/ 这里的 AF 就是指的激励函数 ...

  9. ETL工具-nifi干货系列 第八讲 处理器PutDatabaseRecord 写数据库(详细)

    1.本节通过一个小例子来讲解下处理器PutDatabaseRecord,该处理器的作用是将数据写入数据库. 如下流程通过处理器GenerateFlowFile 生成数据,然后通过处理器JoltTran ...

  10. 流程控制之for循环结构

    1.for循环使用场景 1. 需要反复.重复执行的任务 2. 如创建100个用户,打印一百遍 chaoge666.插入数据库一万条数据等. 2.for语法 for 变量名 in 取值列表 do 每次循 ...