Weighted Alternating Paths in Graphs for Quantum Computing

By expanding matching sets in partially matched graphs and using a modified Bellman-Ford algorithm, the method efficiently detects and corrects errors in quantum computing systems, addressing the complexity of weighted alternating paths and improving error detection speed.

JP7604652B2Active Publication Date: 2024-12-23GOOGLE LLC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023534024
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-12-03
Filing Date
2021-11-29
Publication Date
2024-12-23
Estimated Expiration
2041-11-29

AI Technical Summary

Technical Problem

Existing quantum computing systems face challenges in efficiently detecting and correcting errors due to the complexity of weighted alternating paths in error graphs, which are not adequately addressed by conventional algorithms like the Blossom algorithm.

Method used

A method and system for expanding matching sets in partially matched graphs by alternating paths, inverting edge labels, and using a modified Bellman-Ford algorithm to determine minimum cost paths, enabling efficient error detection and correction in quantum computing systems.

Benefits of technology

This approach reduces the time required to evaluate error information in quantum computing systems, particularly for smaller graphs, ensuring rapid error detection and correction, which is crucial for meeting the precise timing requirements of quantum computing control systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007604652000001
    Figure 0007604652000001
  • Figure 0007604652000002
    Figure 0007604652000002
  • Figure 0007604652000003
    Figure 0007604652000003
Patent Text Reader

Abstract

A computer-implemented method for expanding a set of matched nodes in a partially matched graph may include, by a computing system, obtaining a partially matched graph having a matching set, the partially matched graph including one or more edges and a plurality of nodes, the one or more edges having matching labels. The method may include obtaining at least two unmatched nodes. The method may include determining an alternating path from a first unmatched node of the at least two unmatched nodes to a second unmatched node of the at least two unmatched nodes, the alternating path including at least one edge of the one or more edges. The method may include reversing the matching label of at least one edge of the alternating path such that the at least two unmatched nodes are included in the matching set of the partially matched graph.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] Claiming priority This application claims the benefit of priority to U.S. Provisional Patent Application No. 63 / 121,027, filed December 3, 2020, entitled “Algorithm for Computing Costs for Weighted Alternating Paths in Graphs for Quantum Computing,” which is incorporated herein by reference.

[0002] The present application relates generally to algorithms for computing the cost of weighted alternating paths in a graph, and more specifically to algorithms for computing the cost of weighted alternating paths in an error graph of a quantum computing system. [Background technology]

[0003] Quantum computing is a computational method that exploits quantum effects such as superposition and entanglement of basis states to perform certain calculations more efficiently than classical digital computers. In contrast to digital computers, which store and manipulate information in the form of bits, e.g., "1" or "0," quantum computing systems can manipulate information using quantum bits ("qubits"). A qubit may refer to a quantum device that allows for a superposition of multiple states, e.g., the superposition of data in both "0" and "1" states, and / or the superposition of data in multiple states itself. According to conventional terminology, the superposition of "0" and "1" states in a quantum system may be represented, for example, as a|0>+b|1>. The "0" and "1" states of a digital computer are analogous to the |0> and |1> basis states of a qubit, respectively. Summary of the Invention [Means for solving the problem]

[0004] Aspects and advantages of embodiments of the present disclosure will be set forth in part in the description that follows, or may be learned from the description, or may be learned through practice of the embodiments.

[0005] One exemplary aspect of the present disclosure is directed to a computer-implemented method for expanding a set of matched nodes in a partially matched graph. The method can include obtaining, by a computing system including one or more computing devices, a partially matched graph having a matching set, the partially matched graph including one or more edges and a plurality of nodes, the one or more edges having a matching label. The method can include obtaining, by the computing system, at least two unmatched nodes. The method can include determining, by the computing system, an alternating path from a first unmatched node of the at least two unmatched nodes to a second unmatched node of the at least two unmatched nodes, the alternating path including at least one edge of the one or more edges. The method can include reversing, by the computing system, a matching label of at least one edge of the alternating path such that the at least two unmatched nodes are included in the matching set of the partially matched graph.

[0006] In some implementations, at least one of the nodes may be a boundary node. A boundary node may have a boundary status that does not change, such that the boundary node is neither matched nor separated. A boundary node may be matched any suitable number of times, such as zero or more times. In some implementations, the algorithms described herein may be configured such that an alternate path from an unmatched node to a boundary node is found. For example, a boundary node may always act as an unmatched node for purposes of finding an alternate path, since it is always available to be matched, regardless of any existing matching.

[0007] Another exemplary aspect of the present disclosure is directed to a method for error detection in a quantum computing system. The method may include obtaining, by a computing system including one or more computing devices, a matched graph including one or more edges and a plurality of nodes, the plurality of nodes corresponding to a plurality of qubits of the quantum computing system, and the one or more edges having matching labels. The method may include obtaining, by the computing system, an error detection signal including a first endpoint and a second endpoint, the first endpoint and the second endpoint corresponding to a first qubit and a second qubit of the plurality of qubits. The method may include determining, by the computing system, an alternating path from the first endpoint to the second endpoint, the alternating path including at least one edge of the one or more edges. The method may include detecting, by the computing system, at least one error location in the quantum computing system based at least in part on the alternating path.

[0008] Another exemplary aspect of the disclosure is directed to a quantum computing system. The quantum computing system may include quantum hardware including a plurality of qubits. The quantum hardware may include one or more classical processors. The one or more classical processors are configured to perform operations. The operations may include obtaining a matched graph including one or more edges and a plurality of nodes, the plurality of nodes corresponding to the plurality of qubits, and the one or more edges having matching labels. The operations may include obtaining an error detection signal including a first endpoint and a second endpoint, the first endpoint and the second endpoint corresponding to a first qubit and a second qubit of the plurality of qubits. The operations may include determining an alternating path from the first endpoint to the second endpoint, the alternating path including at least one edge of the one or more edges. The operations may include detecting at least one error location in the quantum hardware based at least in part on the alternating path.

[0009] Other aspects of the present disclosure are directed to various systems, methods, apparatus, non-transitory computer-readable media, computer-readable instructions, and computing devices.

[0010] These and other features, aspects, and advantages of various embodiments of the present disclosure will become better understood with reference to the following description and appended claims. The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the present disclosure and, together with the description, explain the associated principles.

[0011] A detailed discussion of embodiments directed to those skilled in the art is provided herein with reference to the accompanying figures. [Brief description of the drawings]

[0012] [Figure 1]FIG. 1 illustrates an exemplary quantum computing system in accordance with an exemplary embodiment of the present disclosure. [Diagram 2] FIG. 2 illustrates an exemplary qubit grid according to an exemplary embodiment of the present disclosure. [Diagram 3] FIG. 1 illustrates an exemplary graph according to an exemplary embodiment of the present disclosure. [Figure 4A] 1 is an exemplary graph including error information according to an exemplary embodiment of the present disclosure. [Figure 4B] 1 is an exemplary graph including error information according to an exemplary embodiment of the present disclosure. [Diagram 5] FIG. 2 is a flowchart diagram of an example method for expanding a set of matched nodes in a partially matched graph, according to an example embodiment of the present disclosure. [Figure 6] FIG. 1 is a flowchart diagram of an exemplary method for error detection in a quantum computing system, in accordance with an exemplary embodiment of the present disclosure. [Figure 7] FIG. 1 illustrates an exemplary computing system in accordance with an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0013] Exemplary aspects of the present disclosure are directed to systems and methods for expanding matching of a partially matched graph (e.g., a matching set of matched and / or separated nodes and / or edges) and / or for calculating the cost of weighted alternating paths in a graph. In particular, the systems and methods described herein may be useful in error detection of a quantum computing system including one or more qubits. A graph may include one or more nodes and / or one or more edges. Each edge may be shared by two nodes. For example, each edge may connect from a first node to a second node. A graph (e.g., one or more edges) may have a matching set (e.g., a set of nodes and / or edges) such that each edge is one of "matched" or "unmatched". In addition, a matching set may include nodes that are one of matched or separated. Two nodes are considered matched if they share a matched edge. A node may share a matched edge with at most one other node. For example, a node may be linked to at most one matched edge, subject to the constraints of the graph. As another example, a set of matched edges may be a set of edges that have no nodes or vertices in common between two edges. A node that does not have a matched edge is a disjoint node. In some implementations, the edges may be weighted edges. For example, each edge may have an associated weight.

[0014] It should be understood that example aspects of the present disclosure are discussed with reference to matching labels on nodes (e.g., matched nodes vs. separated nodes) and edges (e.g., matched edges vs. unmatched edges). In some implementations, matching may be represented using only matching labels, and matched nodes may traditionally refer to nodes that share a matched edge. Thus, a pair of matched nodes may refer to both nodes of a matched edge. Additionally and / or alternatively, node labels may be applied to nodes that indicate whether the nodes are matched, separated, and / or unmatched.

[0015] According to exemplary aspects of the present disclosure, one or more unmatched nodes may be introduced into a graph and / or may otherwise exist in the graph. The matching of a graph may be expanded to include unmatched nodes. As used herein, an "unmatched node" refers to a node that is neither matched nor isolated, i.e., a node that is not currently included in the matching set of the graph. For example, a partially matched graph may include one or more unmatched nodes that are neither matched nor isolated when the graph is partially matched. Unmatched nodes may only be connected to unmatched edges, but may be matched or isolated in the solution of the partially matched graph. For example, the set of matched nodes and / or edges in a partially matched graph may be expanded to include unmatched nodes, such as by changing the matching labels of edges in the graph to include some or all of the unmatched nodes. The set of nodes and / or edges that have matchings may be expanded while satisfying one or more constraints of the matching. As an example, the constraint may be that a node is part of a matched pair with exactly one other node or is isolated. As another example, the constraint may be that each node can touch at most one matched edge.

[0016] Additionally and alternatively, graph matching may be extended with respect to a cost function, such as to optimize (e.g., minimize and / or maximize) the cost function. For example, in some implementations, the cost function may be based at least in part on the edge weights of the matched edges. For example, the cost function may seek to minimize the sum of the edge weights of the set of matched edges. The cost function may reward lower edge weights and / or penalize higher edge weights if the edge is included in the matched set. As another example, the cost function may be selected to minimize the cost of alternating paths from a first unmatched node to a second unmatched node.

[0017] Exemplary aspects of the present disclosure may include algorithms for computing matching label reassignments (e.g., matching label assignments that cover a subset of nodes and / or edges in the graph) given a graph that extends the partial matching or a partial matching of the graph. The algorithm may extend the partial matching to a complete matching over one or more iterations of the algorithm. For example, the algorithm may be repeated over several iterations until each node and / or edge in the graph has a matched and / or separated assignment to provide a complete matching of the graph.

[0018] In particular, the algorithm may include finding an alternating path, such as a minimum-cost alternating path, and / or a cost of an alternating path from one unmatched node to another node, such as a second unmatched node. As used herein, an alternating path is a sequence of edges and / or nodes that alternate between edges labeled as unmatched and matched. In particular, if the matching labels of edges along an alternating path that terminates at an unmatched node are reversed, the match remains valid and includes the addition of the unmatched node in addition to each existing matched node. If an alternating path spans between two unmatched nodes, both unmatched nodes are included in the new match when the matching labels are reversed. In addition, the total cost of the matched edges is changed by the cost of the alternating path. In some implementations, the cost of the alternating path may be the sum of the weights of all unmatched edges in the path minus the sum of the weights of all matched edges in the path. Thus, by increasing the minimum-cost path, the unmatched nodes are included in the match with the lowest increase in overall cost. This may be applied iteratively until finding an overall optimally weighted match. In some implementations, the path cost may be determined by constructing a tree rooted at the unmatched node. Then, for every node reachable through the graph, the minimum cost alternating path to the node and the route to reach it (the tree) may be established. This may prevent the formation of cycles, which may be beneficial for quantum computing applications. In some implementations, the tree may be generated by a Bellman-Ford algorithm modified to avoid loops when generating the tree. For example, the algorithm may be modified so that nodes that are ancestors of the current node are not visited as candidates for the next node in the tree.

[0019] According to an exemplary aspect of the present disclosure, the algorithm may be applied for error detection in a quantum computing system. For example, the algorithm may be implemented by an error detection and / or error correction system to identify errors in quantum computation. For example, in some implementations, the nodes of the matched graph may correspond to the positions of one or more qubits in the quantum computing system. The existing matched graph may be a matched graph from a previous time point. As an example, the one or more qubits may be arranged in a grid or array of qubits. For example, the nodes in the graph may correspond to the coordinates of a qubit in an array of qubits. The weights of the edges in the graph may correspond to the likelihood of an error at a time point in the quantum computing system. These weights may be learned from past usage data of the quantum computing system, estimated from simulation or design, or established by any other suitable method. For example, higher weights may be assigned to points with a lower likelihood of error, such that the path with the least cost is also the path where an error is most likely to occur. The weights may pre-exist when the quantum computer is operational.

[0020] In some implementations, the qubit grid can include one or more computational qubits and one or more auxiliary qubits. For example, in some implementations, the qubit grid can be an interlaced grid of auxiliary qubits and computational qubits. The computational qubits can perform computations for evaluation of one or more quantum algorithms. Additionally and / or alternatively, the auxiliary qubits can be configured to monitor the parity of a quantum computing system (e.g., computational qubits) to detect errors in the quantum computing system.

[0021] For example, in some implementations, a computing system may receive error information including coordinates describing endpoints of mismatched parities. For example, the coordinates may correspond to a position of an ancillary qubit in a qubit grid where mismatched parity was detected. In some cases, the error information may be received in real time, such as in time slices and / or continuously. For example, each time slice may correspond to a set of quantum gate operations on each of the multiple qubits. The error information may be received with microsecond level precision (e.g., 0.5 microseconds). For example, in some embodiments, a computing system may receive error information in real time, including pairs of endpoints of mismatched parities.

[0022] Systems and methods according to exemplary aspects of the present disclosure can provide for resolving a minimum-cost alternating path between a pair of endpoints. The minimum-cost alternating path can indicate the most likely source of an error resulting in mismatched parity at the endpoints. Thus, the minimum-cost alternating path can indicate the location of a computational qubit where an error occurred. For example, the minimum-cost alternating path may include an unstable qubit. In some cases, these errors may propagate through the quantum computation, so rapid detection and / or correction may be beneficial.

[0023] Exemplary aspects of the present disclosure are described herein with respect to quantum computing applications and error detection for illustrative purposes. Exemplary aspects of the present disclosure may be useful for evaluating errors in quantum computing systems. In addition, the general problem of weighted matching in graphs may be useful in other applications, including many engineering fields. Exemplary aspects of the present disclosure may be applied to such other applications in accordance with the present disclosure.

[0024] The system and method according to the exemplary aspects of the present disclosure can provide several technical effects and benefits, including, but not limited to, improvements to computing technology (e.g., quantum computing technology). For example, the exemplary aspects of the present disclosure can provide a reduction in the evaluation time of error information, especially for smaller graphs, such as graphs that include nodes of an order of magnitude comparable to the order of magnitude of qubits in an exemplary quantum computing system. This is particularly beneficial in quantum computing applications that may need to solve small graph problems quickly. For example, it may be desirable to solve the two-endpoint error information problem as quickly as possible to meet the precise timing requirements of a quantum computing control system, such as being fast enough so that errors can be accounted for and / or corrected. In particular in these cases, the system and method according to the exemplary aspects of the present disclosure can reduce the evaluation time, for example, compared to some existing methods, such as the Blossom algorithm.

[0025] Exemplary embodiments of the present disclosure will now be discussed in further detail with reference to the figures. As used herein, use of the term "about" in conjunction with a value refers to within 20% of the value.

[0026] 1 illustrates an exemplary quantum computing system 100. The exemplary system 100 is one example of a system on one or more classical computers or quantum computing devices in one or more locations in which the systems, components, and techniques described below may be implemented. Those skilled in the art using the disclosure provided herein will understand that other quantum computing structures or systems may be used without departing from the scope of the present disclosure.

[0027] System 100 includes quantum hardware 102 in data communication with one or more classical processors 104. Quantum hardware 102 includes components for performing quantum computations. For example, quantum hardware 102 includes a quantum system 110, a control device 112, and a readout device 114 (e.g., a readout resonator). Quantum system 110 can include one or more multilevel quantum subsystems, such as a register of qubits. In some implementations, the multilevel quantum subsystem can include superconducting qubits, such as flux qubits, charge qubits, transmon qubits, gmon qubits, etc.

[0028] The type of multilevel quantum subsystem that system 100 utilizes may vary. For example, in some cases it may be convenient to include one or more readout devices 114 attached to one or more superconducting qubits, e.g., transmon, flux, gmon, xmon, or other qubits. In other cases, ion traps, photonic devices, or superconducting cavities (e.g., where states may be prepared without the need for qubits) may be used. Further examples of implementations of multilevel quantum subsystems include fluxmon qubits, silicon quantum dots, or phosphorus impurity qubits.

[0029] A quantum circuit may be constructed or applied to a register of qubits contained within the quantum system 110 via multiple control lines coupled to one or more control devices 112. An exemplary control device 112 operating on a register of qubits may be used to implement a quantum circuit having a quantum gate or multiple quantum gates, e.g., Pauli gates, Hadamard gates, controlled NOT (CNOT) gates, controlled phase gates, T-gates, multi-qubit quantum gates, coupler quantum gates, etc. The one or more control devices 112 may be configured to operate on the quantum system 110 via one or more respective control parameters (e.g., one or more physical control parameters). For example, in some implementations, the multi-level quantum subsystem may be a superconducting qubit, and the control device 112 may be configured to provide control pulses to the control lines to generate magnetic fields to tune the frequencies of the qubits.

[0030] The quantum hardware 102 may further include a readout device 114 (e.g., a readout resonator). Measurement results 108 obtained via the measurement device may be provided to the classical processor 104 for processing and analysis. In some implementations, the quantum hardware 102 may include a quantum circuit and a control device 112, where the readout device 114 may implement one or more quantum logic gates that operate on the quantum system 102 via physical control parameters (e.g., microwave pulses) transmitted via wires contained within the quantum hardware 102. Further examples of control devices include arbitrary waveform generators in which a DAC (digital-to-analog converter) generates a signal.

[0031] The readout device 114 may be configured to perform a quantum measurement on the quantum system 110 and transmit the measurement result 108 to the classical processor 104. In addition, the quantum hardware 102 may be configured to receive data specifying the physical control qubit parameter values ​​106 from the classical processor 104. The quantum hardware 102 may use the received physical control qubit parameter values ​​106 to update the operation of the control device 112 and the readout device 114 on the quantum system 110. For example, the quantum hardware 102 may receive data specifying new values ​​representing voltage strengths of one or more DACs included within the control device 112 and may update the operation of the DACs on the quantum system 110 accordingly. The classical processor 104 may be configured to initialize the quantum system 110 in an initial quantum state, for example, by transmitting data specifying an initial set of parameters 106 to the quantum hardware 102.

[0032] The readout device 114 can exploit the difference in impedance for the |0> and |1> states of an element of a quantum system, such as a qubit, to measure the state of the element (e.g., the qubit). For example, the resonant frequency of the readout resonator may be different when the qubit is in state |0> or state |1> due to the nonlinearity of the qubit. Thus, microwave pulses reflected from the readout device 114 convey amplitude and phase shifts that depend on the quantum state. In some implementations, a Purcell filter may be used in combination with the readout device 114 to impede microwave propagation at the qubit frequency.

[0033] FIG. 2 illustrates an exemplary qubit grid 200 according to an exemplary embodiment of the present disclosure. As illustrated in FIG. 2, the qubit grid 200 may be an interlaced qubit grid of one or more ancillary qubits 202 (depicted by solid circles) and / or one or more computation qubits 204 (depicted by open circles). The ancillary qubits 202 may be configured to measure errors (e.g., parity) in the outputs of the computation qubits 204. For example, some of all of the computation qubits 204 may have a time series of quantum gate operations that define a quantum algorithm across some or all of the computation qubits 204. Errors in the execution of these quantum gate operations may propagate through the qubit grid 200 and are eventually detected by a parity check at the ancillary qubits 202. Error information, including an endpoint corresponding to the coordinates of the ancillary qubit 202 responsible for error detection, is then generated and / or communicated to a control system for error detection and / or correction.

[0034] FIG. 3 illustrates an example graph 300 according to an example embodiment of the present disclosure. The graph 300 includes nodes 302 and edges 304. According to an example aspect of the present disclosure, the nodes 302 may correspond to ancillary qubits of a quantum computing system. As shown in FIG. 3, the nodes 302 may be connected by edges 304. Some or all of the edges 304 may be associated with computational qubits 305. For example, if error information is received that includes two nodes 302 as endpoints, the computational qubit 305 responsible for the error may be associated (e.g., matched) with an edge 304 of a minimum-cost alternating path between the two nodes according to an example aspect of the present disclosure.

[0035] 4A and 4B show example graphs 400, 450 including error information according to an example embodiment of the present disclosure. For example, FIG. 4A shows an example graph including error endpoints 402, 404, 406, and 408. The graph 400 can include nodes 410 and edges 420. The nodes can correspond to ancillary qubits. Additionally and / or alternatively, some or all of the edges 420 can represent computation qubits. For example, in some implementations, each edge 420 can represent a single computation qubit. Additionally and / or alternatively, in some implementations, an edge can represent an error affecting two or more qubits, such as ancillary qubits and computation qubits. As shown, each node 410 can be connected to one or more other nodes 410 by edges 420. In some implementations, each edge 420 can have an associated weight. Endpoints 402, 404, 406, and 408 may correspond to ancillary qubits that detect errors, such as ancillary qubits that have failed a parity check.

[0036] FIG. 4B illustrates an example graph 450 that includes a larger number of endpoints 452 than graph 400. For example, graph 450 illustrates how resolving error locations can become more complex as the number of endpoints 452 increases. For example, as can be seen from a comparison of FIG. 4A and FIG. 4B, it can be easier to resolve (e.g., assign matching edges) graph 400 that includes fewer endpoints than graph 450 that includes a larger number of endpoints 452. For example, it can be easily deduced (ignoring weights) that edge 422 may match endpoints 402 and 404, and edge 424 is most likely to match endpoints 406 and 408. However, as seen in FIG. 4B, assigning matchings to graph 450 can be computationally more complex.

[0037] Exemplary aspects of the present disclosure may provide for determining matching of graphs 400 and / or 450. For example, systems and methods according to exemplary aspects of the present disclosure may assign a matching label of "matched" or "unmatched" (or other similar binary quality) to edge 420 such that each endpoint (e.g., 402-408) is included in the match. For example, systems and methods according to exemplary aspects of the present disclosure may find a minimum-cost alternating path from a first unmatched node (e.g., first endpoint) to a second unmatched node (e.g., second endpoint). For example, the minimum-cost alternating path may include an edge corresponding to a qubit that is most likely to have caused the error endpoint. Matching labels along the alternating paths may be flipped, resulting in a new optimal (e.g., lowest-cost) matching that includes the unmatched node. This may be repeated until an overall optimal (e.g., most likely) solution is achieved. In this manner, while the quantum computing system is operating, error propagation and / or multiple errors through the system may be continually accounted for.

[0038] 5 illustrates a flowchart diagram of an example method 500 for expanding a set of matched nodes in a partially matched graph, according to an example embodiment of the present disclosure. Although FIG. 5 illustrates steps performed in a particular order for purposes of illustration and discussion, the method of the present disclosure is not limited to the particular illustrated order or arrangement. Various steps of method 500 may be omitted, rearranged, combined, and / or adapted in various ways without departing from the scope of the present disclosure.

[0039] The method 500 may include, at 502, obtaining (e.g., by a computing system including one or more computing devices) a partially matched graph including one or more edges and a plurality of nodes. One or more edges may have a match. For example, a matching label may be assigned to one or more edges indicating whether the edge is matched or unmatched. For example, in some implementations, the match may be or include, for each edge, a matching label indicating one of a matched edge with a matched condition or an unmatched edge with an unmatched condition. The graph may define matched nodes and / or edges according to certain constraints. For example, in some implementations, the graph is matched such that each of a plurality of nodes touches at most one matched edge.

[0040] In some implementations, each of the one or more edges may include a weight. For example, in some implementations, each edge may be weighted based on the likelihood of an error in that edge, such as in implementations where the graph corresponds to multiple qubits. For example, in some implementations, edge weights may be established based at least in part on prior analysis and / or simulations of the quantum computing system. In some implementations, the weights may be inversely related to the likelihood of an error. For example, edges with a low likelihood of error may have a high weight.

[0041] Method 500 may include, at 504, obtaining (e.g., by a computing system) at least two unmatched nodes. For example, the at least two unmatched nodes may be new nodes, such as nodes that were not present in the graph prior to obtaining the at least two unmatched nodes. Additionally and / or in the alternative, the at least two unmatched nodes may be existing nodes with an updated state, such as nodes that have been toggled as unmatched from a previous match (e.g., matched and / or unmatched). In some implementations, the at least two unmatched nodes may be or include endpoints (e.g., a first endpoint and / or a second endpoint) included in error information from the quantum computing system.

[0042] The method 500 may include, at 506, determining, by the computing system, an alternating path from a first unmatched node of the at least two unmatched nodes to a second unmatched node of the at least two unmatched nodes. The alternating path may include at least one edge of the one or more edges. For example, the alternating path may alternate between matched edges and unmatched edges. As an example, the sequential ordering of edges from the first unmatched node to the second unmatched node may alternate between matched edges and unmatched edges. In some implementations, for an alternating path having only one edge, the edge may be matched or unmatched.

[0043] In some implementations, the alternating paths may be the least cost alternating paths. For example, in some implementations, the cost of an alternating path may be the sum of the unmatched weights of the unmatched edges in the alternating path minus the sum of the matched weights of the matched edges in the alternating path. Thus, for example, in a quantum computing error detection implementation, an alternating path according to this cost function may correspond to the most likely error path.

[0044] In some implementations, determining an alternating path from a first unmatched node of the at least two unmatched nodes to a second unmatched node of the at least two unmatched nodes includes determining, by a computing system, a tree having a plurality of alternating paths from the first unmatched node to each of the plurality of nodes, and selecting an alternating path from the tree. For example, a tree of alternating paths from the selected unmatched node to each node in the graph may be determined. Additionally and / or alternatively, the alternating paths may be minimum-cost alternating paths. Thus, the alternating path resulting in the second unmatched node may be selected. The tree of alternating paths may be beneficial for avoiding cycles, and may be particularly beneficial in quantum computing applications. For example, in some implementations, none of the multiple alternating paths may include a cycle. A cycle may exist in a path that uses a single edge in more than one instance. As another example, a cycle may exist more than once in a path that includes a single node. The tree of alternating paths may be determined by any suitable algorithm. For example, in some implementations, the step of determining a tree that includes multiple alternating paths is performed by applying the Bellman-Ford algorithm. The Bellman-Ford algorithm may be modified to avoid the formation of cycles, such as by selecting only paths that do not include cycles. For example, the algorithm may be prevented from visiting nodes that are ancestors of the current node.

[0045] The method 500 may include, at 508, reversing a matching label of at least one edge of the alternating path. For example, once the alternating paths are identified, the matching label of each edge along the alternating path may be reversed. For example, matched edges along the alternating paths may be reversed to unmatched edges and / or unmatched edges along the alternating paths may be reversed to matched edges. In accordance with an exemplary aspect of the present disclosure, reversing the matching labels along the alternating paths from a first unmatched node to a second unmatched node may expand the matching set of the graph to include the unmatched nodes while remaining valid for the existing nodes. Furthermore, if the minimum cost alternating path is reversed, the new matching may be a globally optimal matching (e.g., as defined by a cost function).

[0046] 6 illustrates a flow chart diagram of an exemplary method 600 for error detection in a quantum computing system, in accordance with an exemplary embodiment of the present disclosure. Although FIG. 6 illustrates steps performed in a particular order for purposes of illustration and discussion, the method of the present disclosure is not limited to the particular illustrated order or arrangement. Various steps of method 600 may be omitted, rearranged, combined, and / or adapted in various ways without departing from the scope of the present disclosure.

[0047] The method 600 may include, at 602, obtaining (e.g., by a computing system including one or more computing devices) a matched graph including one or more edges and a plurality of nodes. One or more edges may have a match. For example, a matching label may be assigned to one or more edges indicating whether the edge is matched or unmatched. For example, in some implementations, the match may be or include, for each edge, a matching label indicating one of a matched edge with a matched condition or an unmatched edge with an unmatched condition. The graph may define matched nodes and / or edges according to certain constraints. For example, in some implementations, the graph is matched such that each of a plurality of nodes touches at most one matched edge.

[0048] The multiple nodes can correspond to multiple qubits of a quantum computing system. For example, in some implementations, the multiple qubits can correspond to an interlaced grid of qubits. The interlaced grid can include multiple computational qubits interlaced with multiple ancillary qubits. For example, each of the nodes can correspond to an ancillary qubit. Additionally and / or alternatively, each of the one or more edges can correspond to a computational qubit. An example qubit grid is shown in FIG. 2. Any suitable qubit grid and / or other multiple qubits may be used in accordance with example aspects of the present disclosure.

[0049] In some implementations, each of the one or more edges may include a weight. For example, in some implementations, each edge may be weighted based on the likelihood of an error at that edge and / or the edge's node (e.g., qubit). For example, in some implementations, edge weights may be established based at least in part on prior analysis and / or simulations of the quantum computing system. In some implementations, the weights may be inversely related to the likelihood of an error. For example, an edge with a low likelihood of error may have a high weight.

[0050] The method 600 may include, at 604, obtaining (e.g., by a computing system) an error detection signal describing the first endpoint and the second endpoint. For example, in some implementations, the first endpoint and / or the second endpoint may be an unmatched node in a matched graph. The first endpoint and the second endpoint may correspond to a first qubit and a second qubit of the plurality of qubits. For example, in some implementations, the first endpoint and the second endpoint each correspond to an ancillary qubit. The computing system may receive error information including coordinates describing the endpoint of the mismatched parity. For example, the endpoint may correspond to a position of an ancillary qubit in a qubit grid at which the mismatched parity was detected. In some cases, the error information including the endpoint may be received in real time, such as in time slices and / or continuously. For example, each time slice may correspond to a set of quantum gate operations on each of the plurality of qubits. The error information may be received with microsecond level precision. For example, in some embodiments, a computing system may receive error information in real time that includes a pair of endpoints of mismatched parity.

[0051] The method 600 may include, at 606, determining (e.g., by a computing device) an alternating path from a first endpoint to a second endpoint. The alternating path may include at least one edge of the one or more edges. For example, the alternating path may alternate between matched and unmatched edges. As an example, a sequential ordering of edges from the first endpoint to the second endpoint may alternate between matched and unmatched edges. In some implementations, for an alternating path having only one edge, the edge may be matched or unmatched.

[0052] In some implementations, the alternating paths may be the least cost alternating paths. For example, in some implementations, the cost of an alternating path may be the sum of the unmatched weights of the unmatched edges in the alternating path minus the sum of the matched weights of the matched edges in the alternating path. Thus, for example, in a quantum computing error detection implementation, an alternating path according to this cost function may correspond to the most likely error path.

[0053] In some implementations, determining an alternating path from a first of the at least two endpoints to a second of the at least two endpoints includes, by a computing system, determining a tree having a plurality of alternating paths from the first endpoint to each of the plurality of nodes, and selecting an alternating path from the tree. For example, a tree of alternating paths from the selected unmatched node to each node in the graph may be determined. Additionally and / or alternatively, the alternating paths may be minimum cost alternating paths. Thus, the alternating path resulting in the second endpoint may be selected. The tree of alternating paths may be beneficial to avoid cycles, and may be particularly beneficial in quantum computing applications. For example, in some implementations, none of the plurality of alternating paths may include a cycle. The tree of alternating paths may be determined by any suitable algorithm. For example, in some implementations, determining a tree including a plurality of alternating paths is performed by applying a Bellman-Ford algorithm. The Bellman-Ford algorithm may be modified to avoid the formation of cycles, such as by selecting only paths that do not include cycles.

[0054] Method 600 may include detecting (e.g., by the computing system) at 608 at least one error location in the quantum computing system based at least in part on the alternating paths. For example, the alternating paths may be compared to a plurality of qubits to identify a location of an error in the quantum computation. As an example, a matched edge may indicate an unstable qubit. Thus, the location of the error may correspond to, for example, a qubit index, coordinate, and / or other identifier.

[0055] In some implementations, the method 600 may further include, at 610, correcting, by the computing system, the quantum measurements from at least the error location in the quantum computing system. For example, in some implementations, the quantum algorithm in which the error was present may be re-run to correct the error. As another example, in some implementations, the measurements from the error location may be corrected and the quantum algorithm may continue evaluation using the corrected values.

[0056] 7 shows a block diagram of an example computing system 1000 that may be used to implement systems and methods according to example embodiments of the disclosure, such as the system discussed with reference to FIG 1. System 1000 includes a control system 1010 and a quantum computing system 1030 communicatively coupled via a network 1050. One or more aspects of any of the methods described herein may be implemented on control system 1010 and / or quantum computing system 1030.

[0057] The control system 1010 may include any type of computing device (e.g., a classical computing device). The control system 1010 includes one or more processors 1012 and a memory 1014. The one or more processors 1012 may include any suitable processing device (e.g., a processor core, a microprocessor, an ASIC, an FPGA, a controller, a microcontroller, etc.) and may be one processor or multiple processors operably connected. The memory 1014 may include one or more non-transitory computer-readable storage media, such as RAM, ROM, EEPROM, EPROM, flash memory devices, magnetic disks, etc., and combinations thereof. The memory 1014 may store data 1016 (e.g., qubit parameters, measurements, etc.) and instructions 1018 that are executed by the processor 1012 to cause the control system 1010 to perform operations, such as one or more aspects of any of the methods disclosed herein. The control system 1010 may be configured to process error information 1020 obtained by measuring the output of a quantum system (e.g., quantum system 1040) to identify errors in a quantum computation, according to an exemplary embodiment of the present disclosure.

[0058] The quantum computing system 1030 includes one or more processors 1032 and a memory 1034. The one or more processors 1032 may include any suitable processing device (e.g., a processor core, a microprocessor, an ASIC, an FPGA, a controller, a microcontroller, etc.) and may be one processor or multiple processors operably connected. The memory 1034 may include one or more non-transitory computer-readable storage media, such as RAM, ROM, EEPROM, EPROM, flash memory devices, magnetic disks, etc., and combinations thereof. The memory 1034 may store data 1036 and instructions 1038 that are executed by the processor 1032 to cause the quantum computing system 1030 to perform operations, such as implementing a quantum circuit having one or more quantum gates on a quantum system 1040 having multiple qubits and obtaining associated measurements (e.g., error information 1020). The quantum computing system 1030 may be similar to the quantum computing system discussed and described with reference to FIG. 1. Other suitable quantum computing systems may be used without departing from the scope of this disclosure.

[0059] The network 1050 may be any type of communications network, such as a role area network (e.g., an intranet), a wide area network (e.g., the Internet), or some combination thereof, and may include any number of wired or wireless links. In general, communications over the network 1050 may be conveyed over any type of wired and / or wireless connection using a wide variety of communications protocols (e.g., TCP / IP, HTTP, SMTP, FTP), encodings or formats (e.g., HTML, XML), and / or protection schemes (e.g., VPN, Secure HTTP, SSL). In some implementations, the network 1050 may be omitted such that the control system 1010 is in direct signal communication with the quantum computing system 1030.

[0060] The implementation of the digital, classical, and / or quantum subject matter, and digital function operations and quantum operations described herein may be implemented in digital electronic circuitry, suitable quantum circuitry, or more generally in a quantum computing system, in tangibly implemented digital and / or quantum computer software or firmware, in digital and / or quantum computer hardware including the structures disclosed herein and their structural equivalents, or in one or more combinations thereof. The term "quantum computing system" may include, but is not limited to, a quantum computer / computing system, a quantum information processing system, a quantum cryptography system, or a quantum simulator.

[0061] Implementations of the digital and / or quantum subject matter described herein may be implemented as one or more digital and / or quantum computer programs, i.e., one or more modules of digital and / or quantum computer program instructions encoded on a tangible, non-transitory storage medium for execution by or to control the operation of a data processing device. The digital and / or quantum computer storage medium may be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, one or more qubits / qubit structures, or a combination of one or more of them. Alternatively, or in addition, the program instructions may be encoded on an artificially generated propagating signal capable of encoding digital and / or quantum information (e.g., a machine-generated electrical, optical, or electromagnetic signal) that is generated to encode the digital and / or quantum information for transmission to a suitable receiver device for execution by the data processing device.

[0062] The terms quantum information and quantum data refer to information or data carried by, held or stored in a quantum system, with the smallest important system being a qubit, i.e., a system that defines a unit of quantum information. The term "qubit" is understood to encompass all quantum systems that can be appropriately approximated as a two-level system in the corresponding context. Such quantum systems may include, for example, multi-level systems having two or more levels. By way of example, such systems may include atoms, electrons, photons, ions, or superconducting qubits. In many implementations, the computational basis states are identified using the ground state and the first excited state, but it is understood that other configurations are possible in which the computational states are identified using higher level excited states (e.g., qubits).

[0063] The term "data processing apparatus" refers to digital and / or quantum data processing hardware and encompasses all kinds of apparatus, devices, and machines for processing digital and / or quantum data, including, by way of example, a programmable digital processor, a programmable quantum processor, a digital computer, a quantum computer, or multiple digital and quantum processors or computers, and combinations thereof. The apparatus may also or further include special-purpose logic circuits, e.g., a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC), or a quantum simulator, i.e., a quantum data processing apparatus designed to simulate or generate information about a particular quantum system. In particular, a quantum simulator is a special-purpose quantum computer that does not have the ability to perform general quantum computations. In addition to hardware, the apparatus may optionally include code that creates an execution environment for digital and / or quantum computer programs, e.g., code constituting a processor firmware, a protocol stack, a database management system, an operating system, or one or more combinations thereof.

[0064] A digital or classical computer program, which may also be referred to or written as a program, software, software application, module, software module, script, or code, may be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a digital computing environment. A quantum computer program, which may also be referred to or written as a program, software, software application, module, software module, script, or code, may be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and may be translated into a suitable quantum computing language, or may be written in a quantum programming language, e.g., QCL, Quipper, or Cirq.

[0065] A digital and / or quantum computer program may, but need not necessarily, correspond to a file in a file system. A program may be stored as part of a file holding other programs or data, e.g., in one or more scripts stored in a markup language document, in a single file dedicated to the program in question, or in multiple coordinated files, e.g., files storing one or more modules, subprograms, or portions of code. A digital and / or quantum computer program may be deployed to run on one digital or one quantum computer, or on multiple digital and / or quantum computers located at one site or distributed across multiple sites and interconnected by a digital and / or quantum data communication network. A quantum data communication network is understood to be a network that may transmit quantum data using quantum systems, e.g., qubits. In general, a digital data communication network cannot transmit quantum data, but a quantum data communication network may transmit both quantum data and digital data.

[0066] The processes and logic flows described herein may be performed, as appropriate, by one or more programmable digital and / or quantum computers operating with one or more digital and / or quantum processors and executing one or more digital and / or quantum computer programs to perform functions by operating on input digital and quantum data and generating outputs. The processes and logic flows may also be performed by, and an apparatus may be implemented as, special purpose logic circuitry, e.g., an FPGA or ASIC, or a quantum simulator, or a combination of special purpose logic circuitry or a quantum simulator and one or more programmed digital and / or quantum computers.

[0067] With respect to one or more digital and / or quantum computer systems or processors, being "configured" or "operable" to perform a particular operation or action means that the system has installed thereon software, firmware, hardware, or a combination thereof that, during operation, causes the system to perform the operation or action. With respect to one or more digital and / or quantum computer programs, being configured to perform a particular operation or action means that the one or more programs contain instructions that, when executed by a digital and / or quantum data processing device, cause the device to perform the operation or action. A quantum computer may receive instructions from a digital computer that, when executed by a quantum computing device, cause the device to perform an operation or action.

[0068] A digital and / or quantum computer suitable for executing a digital and / or quantum computer program can be based on a general purpose or dedicated digital and / or quantum microprocessor, or on both, or on any other kind of central digital and / or quantum processing unit. In general, the central digital and / or quantum processing unit receives instructions and digital and / or quantum data from a read-only memory, a random access memory, or a quantum system suitable for transmitting quantum data, e.g. photons, or a combination thereof.

[0069] Some exemplary elements of a digital and / or quantum computer are a central processing unit for carrying out or executing instructions, and one or more memory devices for storing instructions and digital and / or quantum data. The central processing unit and memory may be supplemented by or incorporated into dedicated logic circuits or quantum simulators. In general, a digital and / or quantum computer also includes one or more mass storage devices for storing digital and / or quantum data, such as magnetic disks, magneto-optical disks, optical disks, or quantum systems suitable for storing quantum information, or is operatively coupled to receive digital and / or quantum data from them, or transmit digital and / or quantum data to them, or both. However, a digital and / or quantum computer need not have such devices.

[0070] Digital and / or quantum computer readable media suitable for storing digital and / or quantum computer program instructions and digital and / or quantum data include, by way of example, all forms of non-volatile digital and / or quantum memories, media, and memory devices, including semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices, magnetic disks, e.g., internal hard disks or removable disks, magneto-optical disks, CD-ROMs and DVD-ROMs, and quantum systems, e.g., trapped atoms or electrons. Quantum memories are devices capable of storing quantum data with high fidelity and efficiency for long periods of time, e.g., light-matter interfaces where light is used for transmission and matter is used to store and preserve the quantum characteristics of the quantum data, such as superposition or quantum coherence.

[0071] Control of the various systems described herein, or portions thereof, may be implemented in a digital and / or quantum computer program product stored on one or more tangible, non-transitory, machine-readable storage media and including instructions executable on one or more digital and / or quantum processing devices. The systems described herein, or portions thereof, may each be implemented as an apparatus, method, or electronic system that may include one or more digital and / or quantum processing devices and a memory that stores executable instructions to perform the operations described herein.

[0072] Although this specification includes many specific implementation details, these should not be interpreted as limitations on the scope of what may be claimed, but rather as descriptions of features that may be specific to a particular implementation. Certain features described in this specification in the context of separate implementations may also be implemented in combination in a single implementation. Conversely, various features described in the context of a single implementation may also be implemented in multiple implementations separately or in any suitable subcombination. Furthermore, although features may be described above as functioning in a particular combination, and may even be initially claimed as such, one or more features from the claimed combination may in some cases be deleted from the combination, and the claimed combination may be directed to a subcombination or a variation of the subcombination.

[0073] Similarly, although operations are depicted in the figures in a particular order, this should not be understood as requiring such operations to be performed in the particular order or sequential order depicted, or that all of the depicted operations be performed, to achieve desired results. In certain situations, multitasking and parallel processing may be advantageous. Furthermore, the separation of various system modules and components in the implementations described above should not be understood as requiring such separation in all implementations, and it should be understood that the program components and systems described may generally be integrated in a single software product or packaged in multiple software products.

[0074] Particular implementations of the subject matter have been described. Other implementations are within the scope of the following claims. For example, the actions recited in the claims may be performed in a different order and still achieve desirable results. As an example, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some cases, multitasking and parallel processing may be advantageous. [Explanation of symbols]

[0075] 100 Quantum Computing System, System 102 Quantum Hardware 104 Classical Processors 106 Physical Control Qubit Parameter Values, Parameters 108 Measurement results 110 Quantum Systems 112 Control Device 114 Readout Device 200 Cubit Grid 202 Auxiliary Qubits 204 Computational Qubits 300 Graphs 302 Node 304 Edge 305 Computational Qubits 400 graphs 402 Error Endpoint, Endpoint 404 Error Endpoint, Endpoint 406 Error Endpoint, Endpoint 408 Error Endpoint, Endpoint 410 nodes 420 Edge 422 Edge 424 Edge 450 graphs 452 endpoint 1000 Computing Systems 1010 Control System 1012 processor 1014 Memory 1016 Data 1018 Instructions 1020 Error Information 1030 Quantum Computing System 1032 processor 1034 Memory 1036 Data 1038 command 1040 Quantum Systems 1050 Network

Claims

1. 1. A computer-implemented method for expanding a set of matched nodes in a partially matched graph, the method comprising: obtaining, by a computing system including one or more computing devices, a partially matched graph having a matching set, the partially matched graph including one or more edges and a plurality of nodes, the one or more edges having matching labels; obtaining, by the computing system, at least two unmatched nodes; determining, by the computing system, an alternating path from a first unmatched node of the at least two unmatched nodes to a second unmatched node of the at least two unmatched nodes, the alternating path including at least one edge of the one or more edges, and a cost of the alternating path being a sum of unmatched weights of unmatched edges in the alternating path minus a sum of matched weights of matched edges in the alternating path; inverting, by the computing system, the matching label of the at least one edge of the alternating path such that the at least two unmatched nodes are included in the matching set of the partially matched graph; Including, Computer-implemented method.

2. determining the alternating path from the first unmatched node of the at least two unmatched nodes to the second unmatched node of the at least two unmatched nodes, determining, by the computing system, a tree comprising a plurality of alternating paths from the first unmatched node to each of the plurality of nodes; selecting said alternate paths from said tree; Including, The method of claim 1.

3. The method of claim 2 , wherein the step of determining, by the computing system, the tree containing the plurality of alternating paths is performed by applying a Bellman-Ford algorithm to the partially matched graph.

4. The method of claim 2 or 3, wherein none of the plurality of alternating passes includes a cycle.

5. The method of claim 1 , wherein each of the one or more edges comprises a weight.

6. The method of claim 1 , wherein the alternating paths include a least cost alternating path.

7. 7. The method of claim 1, wherein the matching labels indicate one of matched edges having matched conditions or unmatched edges having unmatched conditions, and the alternating passes alternate between matched and unmatched edges.

8. 8. The method of claim 1, wherein the graphs are matched such that each of the plurality of nodes touches at most one matched edge.

9. 1. A method for error detection in a quantum computing system, the method comprising: obtaining, by a computing system including one or more computing devices, a matched graph including one or more edges and a plurality of nodes, the plurality of nodes corresponding to a plurality of qubits of a quantum computing system, and the one or more edges having matching labels; obtaining, by the computing system, an error detection signal including a first endpoint and a second endpoint, the first endpoint and the second endpoint corresponding to a first qubit and a second qubit of the plurality of qubits; determining, by the computing system, an alternating path from the first endpoint to the second endpoint, the alternating path comprising at least one edge of the one or more edges; detecting, by the computing system, at least one error location in the quantum computing system based at least in part on the alternating paths; Including, method.

10. 10. The method of claim 9, further comprising correcting, by the computing system, quantum measurements from at least the error location in the quantum computing system.

11. 11. The method of claim 9 or 10, wherein the plurality of qubits comprises an interlaced grid of qubits, the interlaced grid comprising a plurality of computation qubits interlaced with a plurality of ancillary qubits.

12. 12. The method of claim 9, wherein the first endpoint and the second endpoint each correspond to an ancillary qubit.

13. 13. The method of claim 9, wherein each of the one or more edges corresponds to a computation qubit.

14. determining, by the computing system, the alternate path from the first endpoint to the second endpoint, determining, by the computing system, a tree comprising a plurality of alternating paths from the first endpoint to each of the plurality of nodes; selecting from the tree the alternate path that terminates at the second endpoint; Including, 14. The method according to any one of claims 9 to 13.

15. 15. The method of claim 9, wherein each of the one or more edges includes a weight, the weight being based at least in part on a likelihood of an error.

16. 16. The method of claim 9, wherein the alternating paths include a least cost alternating path.

17. 17. The method of claim 9, wherein the matching labels indicate one of matched edges having matched conditions or unmatched edges having unmatched conditions, and the alternating passes alternate between matched and unmatched edges.

18. 18. The method of claim 9, wherein the cost of the alternating paths is the sum of unmatched weights of the unmatched edges in the alternating paths minus the sum of matched weights of the matched edges in the alternating paths.

19. Quantum hardware having a plurality of qubits; One or more classical processors A quantum computing system comprising: The one or more classical processors are configured to perform operations, the operations including: operations of obtaining a matched graph including one or more edges and a plurality of nodes, the plurality of nodes corresponding to the plurality of qubits, and the one or more edges having matching labels; an operation of obtaining an error detection signal including a first endpoint and a second endpoint, the first endpoint and the second endpoint corresponding to a first qubit and a second qubit of the plurality of qubits; an operation of determining an alternate path from the first endpoint to the second endpoint, the alternate path including at least one edge of the one or more edges; detecting at least one error location in the quantum hardware based at least in part on the alternating paths; Including, Quantum computing systems.

20. 9. The method of claim 1, wherein at least one of the at least two unmatched nodes comprises a boundary node.

21. 19. The method of claim 9, wherein at least one of the first endpoint or the second endpoint comprises a boundary node.

22. 20. The quantum computing system of claim 19, wherein at least one of the first endpoint or the second endpoint comprises a boundary node.

Citation Information

Patent Citations

  • Method and apparatus for assigning signal routes via an interconnect-multiplexer in a PLD

    US6199192B1