欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

量子计算机方面有新突破?silq详讲!

程序员文章站 2022-04-02 11:38:50
大约在四五个月前,我看在我所有计算机群里都在热传:“量子计算机领域有新突破!silq语言诞生!”。这个文章就让我带你走进量子计算机领域,一探silq的究竟!好了,那下面我言归正传。1.什么是量子计算机?简单点说一个内存仅有n位比特的简单计算机模型,它有2的n次方种状态,n=4时,即16种对于传统计算机,在任意一个时刻,它只能处于其中的1种状态对于量子计算机,4个量子比特都可处于叠加态,也就是能同时工作在上述16种状态中!即上述的1台量子计算机=16台传统计算机并行工作!(我抄了一小段,不知道对不对,...

大约在四五个月前,我看在我所有计算机群里都在热传:“量子计算机领域有新突破!silq语言诞生!”。这个文章就让我带你走进量子计算机领域,一探silq的究竟!

好了,那下面我言归正传。

1.什么是量子计算机?

简单点说一个内存仅有n位比特的简单计算机模型,它有2的n次方种状态,n=4时,即16种对于传统计算机,在任意一个时刻,它只能处于其中的1种状态对于量子计算机,4个量子比特都可处于叠加态,也就是能同时工作在上述16种状态中!即上述的1台量子计算机=16台传统计算机并行工作!

(我抄了一小段,不知道对不对,如果不对可以看图片后的链接。)

如果你还没有看懂,可以点击我去知乎看时羽大佬的讲解我这里也是摘抄他的一小段。

2.silq官网一探究竟

官网点击蓝色字体

官网分成几个部分,下面我们一一讲解

备:
官方同时给了一个GitHub链接,想学习silq的朋友点击我去下载。作者没有下载,不过看目录挺全面的,推荐下载

2.1.与Q#的比较

2.1.1.控制前翻转

大家来看Q#代码:

1 // Q# code snippet
2 X(qs[0]); X(qs[1]);
3 (Controlled X)(qs, a[0]);
4 X(qs[0]); X(qs[1]);

silq代码:

1 // Silq code snippet corresponding to the above Q# 
code snippet
2 if !qs[0] && !qs[1] {
3   a[0] := X(a[0]);
4 }

虽然代码数相同,但美观程度大于Q#!

2.1.2.初始化位

Q#代码:

1 // Q# code snippet (some parts omitted)
2 operation Set(des:Result,q:Qubit):(){
3  ... // omitted
4 }
5 operation Solve(qs:Qubit[]):(){ body{
6   for (i in 0..Length(qs)-1){
7     Set(Zero,qs[i]);
8   }
9   ... // omitted
10 }} 

silq代码:

1 // Silq code snippet corresponding to the above Q# 
code snippet
2 def solve(k:!ℕ){
3   qs:=0:int[k];
4   ... // omitted
5 }

代码数方面明显大过Q#,而且非常美观!

2.1.3.小结

从以上几个小例子可以看出:Q#无论从代码行数还是美观程度都不如silq。

2.2.示例

作者实在看不懂,所以就没写,可以点击我去官网访问。

2.3.文献资料

不用我多说,感兴趣的点击我去官网访问吧!

2.4.下载

2.4.1.Visual Studio代码

1.首先去Visual Studio官网下载一个Visual Studio(以下简
称VS)
2.打开VS
3.按ctrl + shift + X
4.搜索“vscode - silq”
5.安装“vscode - silq”

2.4.2.从GitHub安装

您还可以从GitHub源代码编译Silq,点我进入

以下说明适用于Ubuntu,但也适用于其他Linux发行版或Mac。

先决条件
通常,系统上已经安装了以下先决条件。如果没有,请运行(在Ubuntu上)

1 sudo apt-get install 
-y build-essential git wget unzip

按照以下说明安装Silq:

1 git clone https://github.com/eth-sri/silq.git 
# clone the repository
2 cd silq && ./dependencies.sh && ./build.sh 
# downloaddependencies and build project
3 # [ignore compilation warnings]

现在,您可以运行silq通过

查看详细内容点击我

3.小结

这次写这篇帖子,有不少地方写的不好,有缺点麻烦在评论区指出。走的时候不要忘了留下你的点赞与关注!谢谢!

4.下期预告

我在众多编程语言中再喜欢的是python,而且进行了系统性的学习,如今的我已经学习了不少知识,下期我和大家聊聊《我与python的不解之缘》,敬请期待吧!

5.个网站名字说明

知乎:诸葛上树
csdn:kenclimtree
简书:Ken_b1ac

本文地址:https://blog.csdn.net/kenclimtree/article/details/107433896