pyqpanda.Algorithm.fragments

Module Contents

Functions

parity_check_circuit(qubit_list)

CNOT all qubits (except last) with the last qubit

two_qubit_oracle(function, qubits)

Two qubit oracle.

two_qubit_database(data_pos, addr, data)

Mapping the data in the "addr" qubits to "data" qubit

diffusion_operator(qubits)

Diffusion operator.

set_zero(qubit, cbit)

Measure a qubit and set to zero

pyqpanda.Algorithm.fragments.parity_check_circuit(qubit_list)[源代码]

CNOT all qubits (except last) with the last qubit

pyqpanda.Algorithm.fragments.two_qubit_oracle(function, qubits)[源代码]

Two qubit oracle.

Support functions:

f(x)=0 f(x)=1 f(x)=x f(x)=x XOR 1 / f(x)=x+1

pyqpanda.Algorithm.fragments.two_qubit_database(data_pos, addr, data)[源代码]

Mapping the data in the "addr" qubits to "data" qubit

data=database[addr]

data=1 iff addr==data_pos

data_pos ranges from 0~3

pyqpanda.Algorithm.fragments.diffusion_operator(qubits)[源代码]

Diffusion operator.

2|s><s|-I

pyqpanda.Algorithm.fragments.set_zero(qubit, cbit)[源代码]

Measure a qubit and set to zero