欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】
更多相关文章请点击【量子计算通识】
以下内容参照微软研究院主题演讲《Quantum Computing for Computer Scientists(计算机科学家量子计算导读)》的结构进行整理和扩充的。
本篇是第一部分。
经典位的矢量表示
经典(Classic)计算机是基于0和1进行计算的。
0和1也可以叫做真假(True/False)、开关(On/Off)、正反、阴阳...总之是两个相对的值,我们称之为布尔值(Boolean)。
0和1都是一维空间的标量,就是只有一条横坐标上的两个点。
0和1都是一维空间的标量我们强行把这个一维坐标变为二维平面,那么0和1就有了新的表示法。
二维空间中0和1的分布在上图中,我们以竖向作为值,那么(0,1)对应值为1,(1,0)对应值为0。
如果我们只考虑绝对高度,那么(-1,0)对应值0,(0,-1)对应值1。
用小括号的写法太复杂,我们可以简写为:
即 |0> 等同(1,0)表示值1,|1>等同(0,1)表示值0。
另外一种记忆方法是,|0>表示二元数的第0位是1(第1位就是0了),即(1,0);而|1>表示二元数的第1位是1(第0位就是0了),即(0,1)。
总之这里的右尖符号>表示这是个二维向量数。
矩阵乘法公式
对于第二个乘数只有一列的情况下,矩阵相乘其结果的第n项,等于第一个乘数的第n行的每个数字,乘以第二个乘数对应的数字,然后结果相加。如下:
记忆方法,可以只看每一行,第一个矩阵每行用加号相连,如变为,然后再把第二个矩阵的每一项插到每个加数上,变为。
如果第二个矩阵不止一列,就稍微麻烦些,公式如下:
注意每行的规律,从变为,再变为。
单位矩阵
完全由0和1组成的矩阵,并且从左上角到右下角这条斜线上的数字都是1,比如下面三个都是单位矩阵:
为什么叫单位矩阵?对于标量来说,单位1乘以任何数都仍然是任何数。单位矩阵也具有这个性质,比如:
第0行(1,0,0)其实就是只要(7,2,8)的第0项即7,在结果中02和08就是把2和8去掉。同样第1行(0,1,0)就是只要(7,2,8)中的第1项即2,去掉7和8;第2行(0,0,1)就是只要第2项的8。
语言表述就是,把第0项留下做第0项,第1项留下做第1项,第2项留下做第2项....所以等于没变。
这种情况对于多列矩阵同样有效:
翻转矩阵
如果我们把最后一项留下做第0项,把倒数第二项留下做第1项,...以此类推,就能够把整个矩阵上下颠倒过来。
窍门就是不使用左上到右下都是1的单位矩阵,而是使用右上到左下都是1的新矩阵:
我们还可以利用特殊的01矩阵来实现局部翻转(下例只翻转最后两个):
对矩阵完全翻转的操作我们可以使用符号﹁表示:
向量化(矩阵化)的布尔比特是量子计算的基础,后续文章我们将逐渐进入量子计算的实现方法和算法原理。
下一篇:【科普】量子计算通识-2
欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】
更多相关文章请点击【量子计算通识】
每个人的智能新时代
如果您发现文章错误,请不吝留言指正;
如果您觉得有用,请点喜欢;
如果您觉得很有用,欢迎转载~
END
网友评论