Base Class¶
-
class
arline_quantum.qubit_connectivity.qubit_connectivity.All2All(num_qubits)¶ Bases:
arline_quantum.qubit_connectivity.qubit_connectivity.QubitConnectivityFully-Connected Qubit Connectivity
Description:
Fully-Connected Qubit ConnectivityParameters: num_qubits (int) – number of qubits -
add_connection(node_1, node_2)¶ Add connection between two nodes
Parameters:
-
add_node()¶ Add node
-
check_connection(connections)¶ Check connection between qubits
Parameters: connnections (tuple) – nodes numbers Returns: True: if qubit is connected to otherFalse: if it is not connectedReturn type: bool
-
check_fully_connected()¶ Check fully connection qubits or not
Returns: True: if it is fully connectedFalse: if it is not fully connectedReturn type: bool
-
connectivity¶ Return connectivity
-
delete_connection(node_1, node_2)¶ Delete connection between two nodes
Parameters:
-
find_all_paths(start, end, path=[])¶ Find all paths between two nodes
Parameters: Returns: list of paths
Return type:
-
find_path(start, end, path=[])¶ Find path between two nodes
Parameters: Returns: list of nodes
Return type:
-
find_shortest_path(start, end, path=[])¶ Find the shortest path between two nodes
Parameters: Returns: list of nodes
Return type:
-
static
from_config(hardware_cfg)¶
-
get_coupling_map()¶ Convert adj_matrix to coupling map (list of [i,j])
-
get_least_connected_nodes()¶ Get list of the least connected nodes
Returns: list of the least connected nodes Return type: list
-
get_most_connected_nodes()¶ Get list of the most connected nodes
Returns: list of the most connected nodes Return type: list
-
get_num_nodes_with_given_num_connections(num_connections)¶ Get number of nodes with given number of connections
num_connections (int): number of connections
Returns: number of nodes with given number of connections Return type: int
-
get_total_num_nets()¶ Get total number of nets
Returns: number of nets False: if it is not fully connectedReturn type: int or bool
-
name¶ Return name
-
num_qubits¶ Return number of qubits
-
print_connectivity()¶ Print connectivity
-
-
class
arline_quantum.qubit_connectivity.qubit_connectivity.QubitConnectivity(name, num_qubits, connections_list=None, adj_matrix=None)¶ Bases:
objectQubit Connectivity
Description:
An abstract qubit connectivity classParameters: -
add_connection(node_1, node_2)¶ Add connection between two nodes
Parameters:
-
add_node()¶ Add node
-
check_connection(connections)¶ Check connection between qubits
Parameters: connnections (tuple) – nodes numbers Returns: True: if qubit is connected to otherFalse: if it is not connectedReturn type: bool
-
check_fully_connected()¶ Check fully connection qubits or not
Returns: True: if it is fully connectedFalse: if it is not fully connectedReturn type: bool
-
connectivity¶ Return connectivity
-
delete_connection(node_1, node_2)¶ Delete connection between two nodes
Parameters:
-
find_all_paths(start, end, path=[])¶ Find all paths between two nodes
Parameters: Returns: list of paths
Return type:
-
find_path(start, end, path=[])¶ Find path between two nodes
Parameters: Returns: list of nodes
Return type:
-
find_shortest_path(start, end, path=[])¶ Find the shortest path between two nodes
Parameters: Returns: list of nodes
Return type:
-
static
from_config(hardware_cfg)¶
-
get_coupling_map()¶ Convert adj_matrix to coupling map (list of [i,j])
-
get_least_connected_nodes()¶ Get list of the least connected nodes
Returns: list of the least connected nodes Return type: list
-
get_most_connected_nodes()¶ Get list of the most connected nodes
Returns: list of the most connected nodes Return type: list
-
get_num_nodes_with_given_num_connections(num_connections)¶ Get number of nodes with given number of connections
num_connections (int): number of connections
Returns: number of nodes with given number of connections Return type: int
-
get_total_num_nets()¶ Get total number of nets
Returns: number of nets False: if it is not fully connectedReturn type: int or bool
-
name¶ Return name
-
num_qubits¶ Return number of qubits
-
print_connectivity()¶ Print connectivity
-
IBM Connectivity¶

-
class
arline_quantum.qubit_connectivity.ibm_connectivity.Rueschlikon¶ Bases:
arline_quantum.qubit_connectivity.qubit_connectivity.QubitConnectivityRueschlikon Qubit Connectivity
Description:
Rueschlikon Qubit Connectivity-
add_connection(node_1, node_2)¶ Add connection between two nodes
Parameters:
-
add_node()¶ Add node
-
check_connection(connections)¶ Check connection between qubits
Parameters: connnections (tuple) – nodes numbers Returns: True: if qubit is connected to otherFalse: if it is not connectedReturn type: bool
-
check_fully_connected()¶ Check fully connection qubits or not
Returns: True: if it is fully connectedFalse: if it is not fully connectedReturn type: bool
-
connectivity¶ Return connectivity
-
delete_connection(node_1, node_2)¶ Delete connection between two nodes
Parameters:
-
find_all_paths(start, end, path=[])¶ Find all paths between two nodes
Parameters: Returns: list of paths
Return type:
-
find_path(start, end, path=[])¶ Find path between two nodes
Parameters: Returns: list of nodes
Return type:
-
find_shortest_path(start, end, path=[])¶ Find the shortest path between two nodes
Parameters: Returns: list of nodes
Return type:
-
static
from_config(hardware_cfg)¶
-
get_coupling_map()¶ Convert adj_matrix to coupling map (list of [i,j])
-
get_least_connected_nodes()¶ Get list of the least connected nodes
Returns: list of the least connected nodes Return type: list
-
get_most_connected_nodes()¶ Get list of the most connected nodes
Returns: list of the most connected nodes Return type: list
-
get_num_nodes_with_given_num_connections(num_connections)¶ Get number of nodes with given number of connections
num_connections (int): number of connections
Returns: number of nodes with given number of connections Return type: int
-
get_total_num_nets()¶ Get total number of nets
Returns: number of nets False: if it is not fully connectedReturn type: int or bool
-
name¶ Return name
-
num_qubits¶ Return number of qubits
-
print_connectivity()¶ Print connectivity
-
-
class
arline_quantum.qubit_connectivity.ibm_connectivity.RueschlikonSymmetrical¶ Bases:
arline_quantum.qubit_connectivity.qubit_connectivity.QubitConnectivityRueschlikon Symmetrical Qubit Connectivity
Description:
Rueschlikon Symmetrical Qubit Connectivity-
add_connection(node_1, node_2)¶ Add connection between two nodes
Parameters:
-
add_node()¶ Add node
-
check_connection(connections)¶ Check connection between qubits
Parameters: connnections (tuple) – nodes numbers Returns: True: if qubit is connected to otherFalse: if it is not connectedReturn type: bool
-
check_fully_connected()¶ Check fully connection qubits or not
Returns: True: if it is fully connectedFalse: if it is not fully connectedReturn type: bool
-
connectivity¶ Return connectivity
-
delete_connection(node_1, node_2)¶ Delete connection between two nodes
Parameters:
-
find_all_paths(start, end, path=[])¶ Find all paths between two nodes
Parameters: Returns: list of paths
Return type:
-
find_path(start, end, path=[])¶ Find path between two nodes
Parameters: Returns: list of nodes
Return type:
-
find_shortest_path(start, end, path=[])¶ Find the shortest path between two nodes
Parameters: Returns: list of nodes
Return type:
-
static
from_config(hardware_cfg)¶
-
get_coupling_map()¶ Convert adj_matrix to coupling map (list of [i,j])
-
get_least_connected_nodes()¶ Get list of the least connected nodes
Returns: list of the least connected nodes Return type: list
-
get_most_connected_nodes()¶ Get list of the most connected nodes
Returns: list of the most connected nodes Return type: list
-
get_num_nodes_with_given_num_connections(num_connections)¶ Get number of nodes with given number of connections
num_connections (int): number of connections
Returns: number of nodes with given number of connections Return type: int
-
get_total_num_nets()¶ Get total number of nets
Returns: number of nets False: if it is not fully connectedReturn type: int or bool
-
name¶ Return name
-
num_qubits¶ Return number of qubits
-
print_connectivity()¶ Print connectivity
-
Rigetti Connectivity¶

-
class
arline_quantum.qubit_connectivity.rigetti_connectivity.Agave¶ Bases:
arline_quantum.qubit_connectivity.qubit_connectivity.QubitConnectivityAgave Qubit Connectivity
Description:
Agave Qubit Connectivity-
add_connection(node_1, node_2)¶ Add connection between two nodes
Parameters:
-
add_node()¶ Add node
-
check_connection(connections)¶ Check connection between qubits
Parameters: connnections (tuple) – nodes numbers Returns: True: if qubit is connected to otherFalse: if it is not connectedReturn type: bool
-
check_fully_connected()¶ Check fully connection qubits or not
Returns: True: if it is fully connectedFalse: if it is not fully connectedReturn type: bool
-
connectivity¶ Return connectivity
-
delete_connection(node_1, node_2)¶ Delete connection between two nodes
Parameters:
-
find_all_paths(start, end, path=[])¶ Find all paths between two nodes
Parameters: Returns: list of paths
Return type:
-
find_path(start, end, path=[])¶ Find path between two nodes
Parameters: Returns: list of nodes
Return type:
-
find_shortest_path(start, end, path=[])¶ Find the shortest path between two nodes
Parameters: Returns: list of nodes
Return type:
-
static
from_config(hardware_cfg)¶
-
get_coupling_map()¶ Convert adj_matrix to coupling map (list of [i,j])
-
get_least_connected_nodes()¶ Get list of the least connected nodes
Returns: list of the least connected nodes Return type: list
-
get_most_connected_nodes()¶ Get list of the most connected nodes
Returns: list of the most connected nodes Return type: list
-
get_num_nodes_with_given_num_connections(num_connections)¶ Get number of nodes with given number of connections
num_connections (int): number of connections
Returns: number of nodes with given number of connections Return type: int
-
get_total_num_nets()¶ Get total number of nets
Returns: number of nets False: if it is not fully connectedReturn type: int or bool
-
name¶ Return name
-
num_qubits¶ Return number of qubits
-
print_connectivity()¶ Print connectivity
-
-
class
arline_quantum.qubit_connectivity.rigetti_connectivity.AgaveSymmetrical¶ Bases:
arline_quantum.qubit_connectivity.qubit_connectivity.QubitConnectivityAgave Symmetrical Qubit Connectivity
Description:
Agave Symmetrical Qubit Connectivity-
add_connection(node_1, node_2)¶ Add connection between two nodes
Parameters:
-
add_node()¶ Add node
-
check_connection(connections)¶ Check connection between qubits
Parameters: connnections (tuple) – nodes numbers Returns: True: if qubit is connected to otherFalse: if it is not connectedReturn type: bool
-
check_fully_connected()¶ Check fully connection qubits or not
Returns: True: if it is fully connectedFalse: if it is not fully connectedReturn type: bool
-
connectivity¶ Return connectivity
-
delete_connection(node_1, node_2)¶ Delete connection between two nodes
Parameters:
-
find_all_paths(start, end, path=[])¶ Find all paths between two nodes
Parameters: Returns: list of paths
Return type:
-
find_path(start, end, path=[])¶ Find path between two nodes
Parameters: Returns: list of nodes
Return type:
-
find_shortest_path(start, end, path=[])¶ Find the shortest path between two nodes
Parameters: Returns: list of nodes
Return type:
-
static
from_config(hardware_cfg)¶
-
get_coupling_map()¶ Convert adj_matrix to coupling map (list of [i,j])
-
get_least_connected_nodes()¶ Get list of the least connected nodes
Returns: list of the least connected nodes Return type: list
-
get_most_connected_nodes()¶ Get list of the most connected nodes
Returns: list of the most connected nodes Return type: list
-
get_num_nodes_with_given_num_connections(num_connections)¶ Get number of nodes with given number of connections
num_connections (int): number of connections
Returns: number of nodes with given number of connections Return type: int
-
get_total_num_nets()¶ Get total number of nets
Returns: number of nets False: if it is not fully connectedReturn type: int or bool
-
name¶ Return name
-
num_qubits¶ Return number of qubits
-
print_connectivity()¶ Print connectivity
-
-
class
arline_quantum.qubit_connectivity.rigetti_connectivity.Aspen¶ Bases:
arline_quantum.qubit_connectivity.qubit_connectivity.QubitConnectivityAspen Qubit Connectivity
Description:
Aspen Qubit Connectivity-
add_connection(node_1, node_2)¶ Add connection between two nodes
Parameters:
-
add_node()¶ Add node
-
check_connection(connections)¶ Check connection between qubits
Parameters: connnections (tuple) – nodes numbers Returns: True: if qubit is connected to otherFalse: if it is not connectedReturn type: bool
-
check_fully_connected()¶ Check fully connection qubits or not
Returns: True: if it is fully connectedFalse: if it is not fully connectedReturn type: bool
-
connectivity¶ Return connectivity
-
delete_connection(node_1, node_2)¶ Delete connection between two nodes
Parameters:
-
find_all_paths(start, end, path=[])¶ Find all paths between two nodes
Parameters: Returns: list of paths
Return type:
-
find_path(start, end, path=[])¶ Find path between two nodes
Parameters: Returns: list of nodes
Return type:
-
find_shortest_path(start, end, path=[])¶ Find the shortest path between two nodes
Parameters: Returns: list of nodes
Return type:
-
static
from_config(hardware_cfg)¶
-
get_coupling_map()¶ Convert adj_matrix to coupling map (list of [i,j])
-
get_least_connected_nodes()¶ Get list of the least connected nodes
Returns: list of the least connected nodes Return type: list
-
get_most_connected_nodes()¶ Get list of the most connected nodes
Returns: list of the most connected nodes Return type: list
-
get_num_nodes_with_given_num_connections(num_connections)¶ Get number of nodes with given number of connections
num_connections (int): number of connections
Returns: number of nodes with given number of connections Return type: int
-
get_total_num_nets()¶ Get total number of nets
Returns: number of nets False: if it is not fully connectedReturn type: int or bool
-
name¶ Return name
-
num_qubits¶ Return number of qubits
-
print_connectivity()¶ Print connectivity
-
-
class
arline_quantum.qubit_connectivity.rigetti_connectivity.AspenSymmetrical¶ Bases:
arline_quantum.qubit_connectivity.qubit_connectivity.QubitConnectivityAspen Symmetrical Qubit Connectivity
Description:
Aspen Symmetrical Qubit Connectivity-
add_connection(node_1, node_2)¶ Add connection between two nodes
Parameters:
-
add_node()¶ Add node
-
check_connection(connections)¶ Check connection between qubits
Parameters: connnections (tuple) – nodes numbers Returns: True: if qubit is connected to otherFalse: if it is not connectedReturn type: bool
-
check_fully_connected()¶ Check fully connection qubits or not
Returns: True: if it is fully connectedFalse: if it is not fully connectedReturn type: bool
-
connectivity¶ Return connectivity
-
delete_connection(node_1, node_2)¶ Delete connection between two nodes
Parameters:
-
find_all_paths(start, end, path=[])¶ Find all paths between two nodes
Parameters: Returns: list of paths
Return type:
-
find_path(start, end, path=[])¶ Find path between two nodes
Parameters: Returns: list of nodes
Return type:
-
find_shortest_path(start, end, path=[])¶ Find the shortest path between two nodes
Parameters: Returns: list of nodes
Return type:
-
static
from_config(hardware_cfg)¶
-
get_coupling_map()¶ Convert adj_matrix to coupling map (list of [i,j])
-
get_least_connected_nodes()¶ Get list of the least connected nodes
Returns: list of the least connected nodes Return type: list
-
get_most_connected_nodes()¶ Get list of the most connected nodes
Returns: list of the most connected nodes Return type: list
-
get_num_nodes_with_given_num_connections(num_connections)¶ Get number of nodes with given number of connections
num_connections (int): number of connections
Returns: number of nodes with given number of connections Return type: int
-
get_total_num_nets()¶ Get total number of nets
Returns: number of nets False: if it is not fully connectedReturn type: int or bool
-
name¶ Return name
-
num_qubits¶ Return number of qubits
-
print_connectivity()¶ Print connectivity
-