同步操作将从 王未/mindquantum 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
QubitOperator
and FermionOperator
The following example will be demonstrated with
QubitOperator
QubitOperator
>>> from mindquantum.core.operators import QubitOperator
>>> ops = QubitOperator('X0 Y1', 1) + QubitOperator('Z2 X3', {'a': 3})
>>> for idx, o in enumerate(ops):
>>> print(f'Term {idx}: {o}')
You will get each term of this operator,
Term 0: 1 [X0 Y1]
Term 1: 3*a [Z2 X3]
QubitOperator
>>> ops = QubitOperator('X0 Y1', 2)
>>> for idx, o in enumerate(ops.singlet()):
>>> print(f'Word {idx}: {o}')
You will get each word of this operator with coefficient set to identity,
Word 0: 1 [X0]
Word 1: 1 [Y1]
For origin circuit,
>>> from mindquantum.core.circuit import Circuit
>>> circuit = Circuit().z(0).rx('a', 1, 0).y(1)
q0: ──Z──────●─────────
│
q1: ───────RX(a)────Y──
shift
operator will shift the qubit index.from mindquantum.core.circuit import shift
>>> shift(circuit, 2)
q2: ──Z──────●─────────
│
q3: ───────RX(a)────Y──
>>> circuit.reverse_qubits()
q0: ───────RX(a)────Y──
│
q1: ──Z──────●─────────
MaxCutAnsatz
: get_partition
MaxCutAnsatz
: get_cut_value
Circuit
: is_measure_end
The quantum circuit build by mindquantum now can be showd by SVG in jupyter notebook, just call svg()
of any Circuit
.
>>> from mindquantum import *
>>> circuit = (qft(range(3)) + BarrierGate(True)).measure_all()
>>> circuit.svg()
In This version, we can simulate a quantum circuit in noise simulator just by adding different noise channels. The following are supported channels:
Thanks goes to these wonderful people:
yufan, wengwenkang, xuxusheng, wangzidong, yangkang, lujiale, fanyi, zhangwengang, wangkaisheng, zhoufeng, wangsiyuan, gongxiaoqing, chengxianbin, sunxiyin, wenwenkang, lvdingshun, cuijiangyu, chendiqing, zhangkai, Damien Ngyuen, Zotov Yuriy, liqin, zengjinglin, cuixiaopeng.
Contributions of any kind are welcome!
We unified the abbreviations of some nouns in MindQuantum.
isparameter
property of gate changes to parameterized
0.3.1 | 0.5.0 |
>>> from mindquantum import RX
>>> gate = RX('a').on(0)
>>> gate.isparameter
True
|
>>> from mindquantum import RX
>>> gate = RX('a').on(0)
>>> gate.parameterized
True
|
para_name
of a quantum circuit changes to params_name
0.3.1 | 0.5.0 |
>>> from mindquantum import Circuit
>>> circ = Circuit().rx('a', 0)
>>> circ.para_name
['a']
|
>>> from mindquantum import Circuit
>>> circ = Circuit().rx('a', 0)
>>> circ.params_name
['a']
|
The quantum neural network API was redesigned in this version. From now on, we can easily build a hybrid quantum neural network with the help of Simulator
in PYNATIVE_MODE
.
The following API was removed.
generate_pqc_operator
PQC
MindQuantumLayer
generate_evolution_operator
Evolution
MindQuantumAnsatzOnlyLayer
MindQuantumAnsatzOnlyOperator
The new API was shown as below.
MQOps
MQN2Ops
MQAnsatzOnlyOps
MQN2AnsatzOnlyOps
MQEncoderOnlyOps
MQN2EncoderOnlyOps
MQLayer
MQN2Layer
MQAnsatzOnlyLayer
MQN2AnsatzOnlyLayer
The above modules are placed in mindquantum.framework
.
Due to the duplication of functions, we deleted some APIs.
mindquantum.circuit.StateEvolution
The following APIs have been remoted.
mindquantum.core.operators.Hamiltonian.mindspore_data
mindquantum.core.operators.Projector.mindspore_data
mindquantum.core.circuit.Circuit.mindspore_data
mindquantum.core.parameterresolver.ParameterResolver.mindspore_data
New gates are shown as below.
mindquantum.core.gates.SGate
mindquantum.core.gates.TGate
Measurement on certain qubits are now supported. The related APIs are shown as below.
mindquantum.core.gates.Measure
mindquantum.core.gates.MeasureResult
QASM is now supported.
mindquantum.io.OpenQASM
mindquantum.io.random_hiqasm
mindquantum.io.HiQASM
Simulator is now separated from MindSpore backend. Now you can easily to use a simulator.
mindquantum.simulator.Simulator
For improving MindQuantum's package structure, we did some refactoring on MindQuantum.
old | new |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Thanks goes to these wonderful people:
yufan, wengwenkang, xuxusheng, Damien Ngyuen, zhouxu, wangzidong, yangkang, lujiale, zhangzhenghai, fanyi, zhangwengang, wangkaisheng, zhoufeng, wangsiyuan, gongxiaoqing, chengxianbin, sunxiyin, wenwenkang, lvdingshun, cuijiangyu, chendiqing, zhangkai, Zotov Yuriy, liqin, zengjinglin, cuixiaopeng.
Contributions of any kind are welcome!
Thanks goes to these wonderful people:
yufan, wengwenkang, xuxusheng, wangzidong, yangkang, lujiale, fanyi, zhangwengang, wangkaisheng, zhoufeng, wangsiyuan, gongxiaoqing, chengxianbin, sunxiyin, wenwenkang, lvdingshun, cuijiangyu, chendiqing, zhangkai, Damien Ngyuen, Zotov Yuriy, liqin, zengjinglin, cuixiaopeng.
Contributions of any kind are welcome!
Thanks goes to these wonderful people:
yufan, wengwenkang, xuxusheng, wangzidong, yangkang, lujiale, fanyi, zhangwengang, wangkaisheng, zhoufeng, wangsiyuan, gongxiaoqing, chengxianbin, sunxiyin, wenwenkang, lvdingshun, cuijiangyu, chendiqing, zhangkai, Damien Ngyuen, Zotov Yuriy, liqin, zengjinglin, cuixiaopeng.
Contributions of any kind are welcome!
Initial release of MindQuantum.
Thanks goes to these wonderful people:
yufan, wengwenkang, xuxusheng, wangzidong, yangkang, lujiale, wangkaisheng, zhoufeng, wangsiyuan, gongxiaoqing, chengxianbin, sunxiyin, wenwenkang, lvdingshun, cuijiangyu, chendiqing, zhangkai, Damien Ngyuen, Zotov Yuriy, liqin, zengjinglin, cuixiaopeng.
Contributions of any kind are welcome!
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。