Sequential Quantum Gate Decomposer
v1.9.3
Powerful decomposition of general unitarias into one- and two-qubit gates gates
|
Functions | |
def | generate_circuit_ansatz (layers, inner_blocks, qbit_num) |
def | generate_hamiltonian (n) |
def | generate_hamiltonian_tmp (n) |
Variables | |
dictionary | config |
eigval = np.real(eigvals[0]) | |
eigvec = eigvecs[:,0] | |
entropy = VQE_Heisenberg.get_Second_Renyi_Entropy( parameters=parameters, qubit_list=qubit_list ) | |
entropy_exact_gs = VQE_Heisenberg.get_Second_Renyi_Entropy( parameters=np.array([]), qubit_list=[0,1], input_state=eigvec ) | |
flush | |
def | Hamiltonian = generate_hamiltonian_tmp( qbit_num ) |
initial_state = np.zeros( (1 << qbit_num), dtype=np.complex128 ) | |
int | inner_blocks = 1 |
k | |
int | layers = 1000 |
linewidth | |
int | normalized_entropy = entropy/page_entropy |
int | normalized_entropy_exact_gs = entropy_exact_gs/page_entropy |
overlap = state_to_transform.transpose().conjugate() @ eigvecs | |
overlap_norm = np.real(overlap * overlap.conjugate()) | |
int | page_entropy = 2 * np.log(2.0) - 1.0/( pow(2, qbit_num-2*2+1) ) |
param_num = VQE_Heisenberg.get_Parameter_Num() | |
parameters = np.load( 'COSINE_1000x1_layers_Heisenberg_16_3point_zero_init_3overlap0.8602661822824491.npy' ) | |
int | qbit_num = 16 |
list | qubit_list = [0,1] |
def | squander_circuit = generate_circuit_ansatz( layers, inner_blocks, qbit_num) |
state_to_transform = initial_state.copy() | |
list | topology = [] |
VQE_energy = VQE_Heisenberg.Optimization_Problem( parameters ) | |
VQE_Heisenberg = Variational_Quantum_Eigensolver(Hamiltonian, qbit_num, config) | |
which | |
def 16_qubit_trained_circuit_VQE.generate_circuit_ansatz | ( | layers, | |
inner_blocks, | |||
qbit_num | |||
) |
Definition at line 49 of file 16_qubit_trained_circuit_VQE.py.
def 16_qubit_trained_circuit_VQE.generate_hamiltonian | ( | n | ) |
Definition at line 35 of file 16_qubit_trained_circuit_VQE.py.
def 16_qubit_trained_circuit_VQE.generate_hamiltonian_tmp | ( | n | ) |
Definition at line 20 of file 16_qubit_trained_circuit_VQE.py.
dictionary 16_qubit_trained_circuit_VQE.config |
Definition at line 158 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.eigval = np.real(eigvals[0]) |
Definition at line 151 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.eigvec = eigvecs[:,0] |
Definition at line 152 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.entropy = VQE_Heisenberg.get_Second_Renyi_Entropy( parameters=parameters, qubit_list=qubit_list ) |
Definition at line 199 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.entropy_exact_gs = VQE_Heisenberg.get_Second_Renyi_Entropy( parameters=np.array([]), qubit_list=[0,1], input_state=eigvec ) |
Definition at line 184 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.flush |
Definition at line 189 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.Hamiltonian = generate_hamiltonian_tmp( qbit_num ) |
Definition at line 143 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.initial_state = np.zeros( (1 << qbit_num), dtype=np.complex128 ) |
Definition at line 206 of file 16_qubit_trained_circuit_VQE.py.
int 16_qubit_trained_circuit_VQE.inner_blocks = 1 |
Definition at line 135 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.k |
Definition at line 150 of file 16_qubit_trained_circuit_VQE.py.
int 16_qubit_trained_circuit_VQE.layers = 1000 |
Definition at line 132 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.linewidth |
Definition at line 12 of file 16_qubit_trained_circuit_VQE.py.
int 16_qubit_trained_circuit_VQE.normalized_entropy = entropy/page_entropy |
Definition at line 200 of file 16_qubit_trained_circuit_VQE.py.
int 16_qubit_trained_circuit_VQE.normalized_entropy_exact_gs = entropy_exact_gs/page_entropy |
Definition at line 185 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.overlap = state_to_transform.transpose().conjugate() @ eigvecs |
Definition at line 215 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.overlap_norm = np.real(overlap * overlap.conjugate()) |
Definition at line 216 of file 16_qubit_trained_circuit_VQE.py.
float 16_qubit_trained_circuit_VQE.page_entropy = 2 * np.log(2.0) - 1.0/( pow(2, qbit_num-2*2+1) ) |
Definition at line 183 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.param_num = VQE_Heisenberg.get_Parameter_Num() |
Definition at line 172 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.parameters = np.load( 'COSINE_1000x1_layers_Heisenberg_16_3point_zero_init_3overlap0.8602661822824491.npy' ) |
Definition at line 175 of file 16_qubit_trained_circuit_VQE.py.
int 16_qubit_trained_circuit_VQE.qbit_num = 16 |
Definition at line 138 of file 16_qubit_trained_circuit_VQE.py.
list 16_qubit_trained_circuit_VQE.qubit_list = [0,1] |
Definition at line 196 of file 16_qubit_trained_circuit_VQE.py.
def 16_qubit_trained_circuit_VQE.squander_circuit = generate_circuit_ansatz( layers, inner_blocks, qbit_num) |
Definition at line 147 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.state_to_transform = initial_state.copy() |
Definition at line 210 of file 16_qubit_trained_circuit_VQE.py.
list 16_qubit_trained_circuit_VQE.topology = [] |
Definition at line 18 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.VQE_energy = VQE_Heisenberg.Optimization_Problem( parameters ) |
Definition at line 193 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.VQE_Heisenberg = Variational_Quantum_Eigensolver(Hamiltonian, qbit_num, config) |
Definition at line 163 of file 16_qubit_trained_circuit_VQE.py.
16_qubit_trained_circuit_VQE.which |
Definition at line 150 of file 16_qubit_trained_circuit_VQE.py.