qbraid.transpiler.ConversionGraph
- class ConversionGraph(conversions=None)[source]
Class for coordinating conversions between different quantum software programs
Initialize a ConversionGraph instance.
- Parameters:
conversions (optional, List[Conversion]) – List of conversion edges. If None, default conversion edges are created.
- __init__(conversions=None)[source]
Initialize a ConversionGraph instance.
- Parameters:
conversions (optional, List[Conversion]) – List of conversion edges. If None, default conversion edges are created.
Methods
__init__
([conversions])Initialize a ConversionGraph instance.
add_conversion
(edge[, overwrite])Add a new conversion function as an edge in the graph.
add_edge
(u_of_edge, v_of_edge, **attr)Add an edge between u and v.
add_edges_from
(ebunch_to_add, **attr)Add all the edges in ebunch_to_add.
add_node
(node_for_adding, **attr)Add a single node node_for_adding and update node attributes.
add_nodes_from
(nodes_for_adding, **attr)Add multiple nodes.
add_weighted_edges_from
(ebunch_to_add[, weight])Add weighted edges in ebunch_to_add with specified weight attr
adjacency
()Returns an iterator over (node, adjacency dict) tuples for all nodes.
clear
()Remove all nodes and edges from the graph.
clear_edges
()Remove all edges from the graph without altering nodes.
conversions
()Get the list of conversion edges.
copy
([as_view])Returns a copy of the graph.
create_conversion_graph
()Create a directed graph from a list of conversion functions.
edge_subgraph
(edges)Returns the subgraph induced by the specified edges.
find_shortest_conversion_path
(source, target)Find the shortest conversion path between two nodes in a graph.
find_top_shortest_conversion_paths
(source, ...)Find the top shortest conversion paths between two nodes in a graph.
get_edge_data
(u, v[, default])Returns the attribute dictionary associated with edge (u, v).
has_edge
(u, v)Returns True if the edge (u, v) is in the graph.
has_node
(n)Returns True if the graph contains the node n.
has_path
(source, target)Check if a conversion between two languages is supported.
has_predecessor
(u, v)Returns True if node u has predecessor v.
has_successor
(u, v)Returns True if node u has successor v.
is_directed
()Returns True if graph is directed, False otherwise.
is_multigraph
()Returns True if graph is a multigraph, False otherwise.
load_default_conversions
()Create a list of default conversion nodes using predefined conversion functions.
nbunch_iter
([nbunch])Returns an iterator over nodes contained in nbunch that are also in the graph.
neighbors
(n)Returns an iterator over successor nodes of n.
number_of_edges
([u, v])Returns the number of edges between two nodes.
number_of_nodes
()Returns the number of nodes in the graph.
order
()Returns the number of nodes in the graph.
plot
(**kwargs)Plot the conversion graph.
predecessors
(n)Returns an iterator over predecessor nodes of n.
remove_edge
(u, v)Remove the edge between u and v.
remove_edges_from
(ebunch)Remove all edges specified in ebunch.
remove_node
(n)Remove node n.
remove_nodes_from
(nodes)Remove multiple nodes.
reset
([conversions])Reset the graph to its default state.
reverse
([copy])Returns the reverse of the graph.
size
([weight])Returns the number of edges or total of all edge weights.
subgraph
(nodes)Returns a SubGraph view of the subgraph induced on nodes.
successors
(n)Returns an iterator over successor nodes of n.
to_directed
([as_view])Returns a directed representation of the graph.
to_directed_class
()Returns the class to use for empty directed copies.
to_undirected
([reciprocal, as_view])Returns an undirected representation of the digraph.
to_undirected_class
()Returns the class to use for empty undirected copies.
update
([edges, nodes])Update the graph using nodes/edges/graphs as input.
Attributes
adj
Graph adjacency object holding the neighbors of each node.
degree
A DegreeView for the Graph as G.degree or G.degree().
edges
An OutEdgeView of the DiGraph as G.edges or G.edges().
in_degree
An InDegreeView for (node, in_degree) or in_degree for single node.
in_edges
A view of the in edges of the graph as G.in_edges or G.in_edges().
name
String identifier of the graph.
nodes
A NodeView of the Graph as G.nodes or G.nodes().
out_degree
An OutDegreeView for (node, out_degree)
out_edges
An OutEdgeView of the DiGraph as G.edges or G.edges().
pred
Graph adjacency object holding the predecessors of each node.
succ
Graph adjacency object holding the successors of each node.