Edge-disjoint paths for long distance multi-qubit operations in quantum circuits
By defining an edge-disjoint path graph in quantum circuits and performing segmented operations, the efficiency problem of parallel long-distance multi-qubit operations in quantum circuits is solved, achieving efficient multi-qubit operations, reducing measurement steps, and making it suitable for quantum computing systems.
Patent Information
- Application Number
- CN202180076681.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-11-12
- Filing Date
- 2021-06-30
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2041-06-30
AI Technical Summary
Existing quantum circuits struggle to effectively perform parallel long-distance multi-qubit operations when executing advanced algorithms. Traditional methods require numerous measurement steps and are limited to the interaction between nearest-neighbor qubits, leading to increased operation time.
By defining an edge-disjoint path graph, the set of qubits for parallel multi-qubit operations is identified, and the path is segmented into multi-level operations to avoid path intersections. The set of edge-disjoint paths is used to achieve qubit entanglement and reduce the number of measurement operations.
This invention enables efficient parallel execution of long-distance multi-qubit operations in a surface code architecture, reducing measurement steps and improving operational efficiency. It is suitable for the implementation of complex multi-qubit operations in quantum computing systems.
Smart Images

Figure CN116457799B_ABST
Abstract
Description
Background Technology
[0001] Numerous quantum error-correcting codes (QECCs) have been developed to protect quantum states from noise during measurement. In any QECC, logical qubits are encoded using several physical qubits to enable fault-tolerant quantum computing. Logical qubits can be understood as having redundant data distributed across many data qubits to provide better measurement accuracy.
[0002] Surface codes are a promising form of QECC that provides the encoding of logical qubits in the form of an entangled 2D lattice (e.g., a square grid) comprising many qubits. The lattice is divided into many element-level cells, and the state of the lattice is maintained by repeatedly measuring a set of stable subsets. For example, a stabilizer is measured by entanglement of qubits on individual element-level cells in the grid and the resulting state. This entanglement forces the qubits into eigenstates of a stabilizer operator (e.g., an X-stabilizer or a Z-stabilizer), thus allowing the stabilizer to be measured without perturbing the system. When the stabilizer measurement results change within the surface code, this corresponds to an error in one or more qubits in the quantum state projected by the measurement.
[0003] One constraint of surface codes is that error correction of logical qubits depends on the interaction between nearest-neighbor qubits. Therefore, quantum circuits utilizing surface codes are typically designed to provide error correction for tightly localized groups of qubits. Furthermore, advanced quantum algorithms may request operations incompatible with those used in circuits employing surface codes. Thus, the task for algorithm designers is to solve a problem known as quantum circuit synthesis, such as how to approximate the operations of a quantum algorithm using operations compatible with a given quantum circuit layout.
[0004] Traditional quantum circuits implementing surface codes limit the set of available quantum operations for implementing advanced algorithms. Typically, these circuits restrict the set of available multi-qubit operations to operations performed on physically very close qubits (e.g., nearest-neighbor qubits). In some circuits implementing surface codes, measurements between non-adjacent qubits can be performed by physically transferring quantum states between qubits using a "SWAP" operation. However, these solutions often require a large number of measurement steps, which increases the time required to implement a given solution. Summary of the Invention
[0005] According to one implementation, a method for performing parallel long-distance multi-qubit operations in a quantum circuit requires defining a graph of nodes mapped to qubits, the nodes of which are connected by edges. The method also provides a set of nodes on the graph that identify the sets of qubits targeted by the multi-qubit operations in the quantum algorithm, and a set of disjoint paths connecting the qubits of each set. Disjoint paths are defined such that no two paths in the set share an edge. The method also provides a set of operations for performing to entangle the qubits corresponding to the identified set of nodes included in each of the defined disjoint paths, and a set of multi-qubit operations for performing on the entangled set of qubits. Attached Figure Description
[0006] Figure 1 An example quantum computing system is shown that utilizes edge-disjoint paths to perform long-distance multi-qubit operations.
[0007] Figure 2 Examples of paths on a quantum circuit that are considered and not considered edge-disjoint paths are shown.
[0008] Figure 3 An example operation is shown for using edge-disjoint paths to implement parallel long-distance multi-qubit operations in quantum circuits implementing surface code architectures.
[0009] Figure 4A An exemplary operation of segmenting disjoint paths is shown, based on a method that maximizes the number of long-distance multi-qubit operations that can be performed in parallel in a quantum circuit.
[0010] Figure 4B It shows that Figure 4A The non-intersecting path segments are exemplary segments of the first-level path segments and the second-level path segments.
[0011] Figure 4C The diagram shows the entanglement and Figure 4B The circuit for the qubit corresponding to the first-level path segment shown.
[0012] Figure 4D The diagram shows the entanglement and Figure 4B The circuit corresponding to the qubit in the second-level path segment shown.
[0013] Figure 5 An example operation is shown for implementing parallel, long-distance multi-qubit operations in a quantum circuit that uses a surface code architecture for error correction.
[0014] Figure 6 An exemplary computing environment suitable for implementing various aspects of the disclosed techniques is shown. Detailed Implementation
[0015] The techniques disclosed herein facilitate efficient long-distance multi-qubit operations within quantum circuits suitable for implementing surface codes. Instead of utilizing SWAP operations, the disclosed method provides parallel long-distance teleportation (e.g., strings of entangled nearest-neighbor qubits) in a manner that maximizes the possible number of simultaneous long-distance multi-qubit joint operations. This approach reduces the total number of measurement operations required to implement complex multi-qubit operations on quantum circuits executing surface codes.
[0016] According to one implementation, the disclosed method provides an identification set of edge-disjoint paths on a surface code graph defined by nodes and edges, where nodes represent qubits on a quantum circuit and edges represent connections between nearest-neighbor qubits. The identified edge-disjoint paths are used to entangle strings of qubits in a manner that facilitates long-distance multi-qubit operations. As used herein, two or more paths are referred to as “edge-disjoint paths” when there are no shared “edges” between them. Notably, if two or more paths intersect the same node but do not share an edge, they can still be considered “edge-disjoint paths.” These paths are referred to herein as shared-node edge-disjoint paths.
[0017] The method proposed in this paper provides special consideration and processing for edge-disjoint paths that share nodes with each other (e.g., intersecting paths). The disclosed method provides segmentation for paths that share nodes with another edge-disjoint path. After the path is segmented into different segments, an entanglement operation is performed to entangle the qubits of each segment. Entanglement operations on different segments of the same edge-disjoint path are not concurrent (performed at different times). This method can be more fully understood through the following figures.
[0018] Figure 1 An example quantum computing system 100 is illustrated, including a controller 102, which can be understood to include classical software and / or hardware elements. The controller 102 includes a classical compiler 104 that performs compilation operations to prepare instructions implementable on a quantum computer 110 to implement the operations of a quantum algorithm 120. The illustrated classical compiler 104 includes two submodules: an edge-disjoint path identifier 116 and a path segmenter 118. The edge-disjoint path identifier 116 and the path segmenter 118 perform actions to map the quantum operations of the quantum algorithm 120 to quantum operations that are physically available for implementation on a quantum circuit 108, which implements a surface code architecture for error correction.
[0019] exist Figure 1In the diagram, quantum circuit 108 is depicted as a square grid (e.g., a qubit register) included within quantum computer 110. Although quantum circuit 108 is shown as a 2D grid, some implementations may include a 3D grid configuration. Each square shown within quantum circuit 108 (e.g., square 112) can be understood as representing a logical qubit, which itself includes a plurality of data qubits storing the data of that logical qubit. The data qubits within each logical qubit implement surface codes for detection and error correction.
[0020] When quantum algorithm 120 is provided, classical compiler 104 performs operations to map high-level quantum operations (target units) to physical qubit operations that can be executed on quantum circuit 108. Due to the surface code architecture embedded within each logical qubit, the set of operations that can be implemented by quantum circuit 108 can exclude one or more operations specified by quantum algorithm 120. Specifically, quantum circuits implementing surface codes typically restrict joint operations (e.g., 2-qubit or 3-qubit measurements) to joint operations for a set of qubits that happen to be connected by a line of nearest qubits. Although Figure 1 The square grid appears to provide connections between any two qubits on the grid via such lines, but complications arise when quantum algorithms request multiple parallel (simultaneous) long-distance multi-qubit operations.
[0021] As used in this paper, "long distance" refers to operations between two qubits that are not nearest neighbors. In quantum circuit 108, two logical qubits are called "nearest neighbors" when they are directly adjacent and share a boundary (e.g., directly adjacent vertical qubits or directly adjacent horizontal qubits).
[0022] To address the aforementioned challenges associated with parallel (simultaneous) multi-qubit operations, an edge-disjoint path identifier 116 identifies a set of edge-disjoint paths within the quantum circuit 108, which provides connectivity between all qubit sets targeted by the parallel multi-qubit operations. As described below, these identified edge-disjoint paths are used to establish entanglement between each qubit set targeted by one of the multi-qubit operations.
[0023] By way of example and not limitation, extended view 128 illustrates a portion of a quantum circuit 108 containing qubits targeted by a set of parallel multi-qubit operations specified by quantum algorithm 120. In the example shown, quantum algorithm 120 provides three simultaneous CNOT operations: a first CNOT acts on qubits E3 and G6; a second CNOT acts on qubits F4 and H4; and a third CNOT acts on qubits E5 and E6. To map the specified operations to operations that can be physically implemented on quantum circuit 108, edge-disjoint path identifier 116 identifies a set of edge-disjoint paths, each providing connectivity between qubits for one of the requested parallel multi-qubit operations. The identified edge-disjoint paths (shown on a grid in view 128) correspond to lines of qubits to be used to implement the requested parallel multi-qubit measurement.
[0024] As mentioned earlier, two paths are called edge-disjoint paths if they do not share edges (e.g., they cross a common boundary between nodes). In the example shown, the path connecting E3→G6 intersects the path connecting H4→F4. This intersection occurs at node (G4). Therefore, these two paths share a node but do not share edges. Thus, these two paths, along with the path connecting EF→E6, constitute a set of edge-disjoint paths. For further context regarding the meaning of "edge-disjoint path," Figure 2 Further examples of node sharing (allowed) and edge sharing (not allowed) are shown.
[0025] It is worth noting that, Figure 1 The three exemplary edge-disjoint paths shown each correspond to a different 2-qubit measurement for the qubit corresponding to the endpoint of the path. However, a similar approach can be used to identify edge-disjoint paths between sets of three or more qubits. For example, three qubits can be connected by a tree structure with three endpoints (a "T"-shaped path or any other continuous path with three endpoints). However, regardless of the implementation, the paths associated with the requested set of parallel multi-qubit operations are a set of edge-disjoint paths chosen such that independent paths within the set do not share edges.
[0026] Referring again to the example shown, two qubits can be entangled with each other through the interaction of nearest-neighbor qubits, thereby enabling joint measurements to be performed on any two qubits in quantum circuit 108. For example, a joint measurement of F4 and H4 can be performed by entangled target qubits F4 and H4 with a line of qubits extending between them; specifically, this can be achieved by entangled F4, G4, and H4, and then by performing a joint measurement on F4 and H4.
[0027] Traditionally, challenges arise when there are intersections (e.g., one or more shared nodes) between edge-disjoint paths used to implement parallel multi-qubit operations. For example, if entanglement operations are performed simultaneously on paths E3→G6 and H4→F4, all four endpoints (E3, G6, H4, and F4) eventually become entangled, prohibiting independent measurements of [E3, G6] and [H4, F4]. To avoid this pitfall, path segmenter 118 identifies and implements breakpoints within a set of identified edge-disjoint path operations to eliminate path intersections by segmenting one or two paths into distinct parts. This path segmentation defines the path segments used in different “stages” of the entanglement operation. For example, each distinct stage of the entanglement operation is implemented at separate time points to ensure that target qubits interacting over long distances (e.g., E3, E6) do not ultimately become entangled with target qubits interacting over long distances in parallel (e.g., E4, H4).
[0028] For example, in Figure 1 In view 128, path segmenter 118 identifies all intersections occurring within a set of non-intersecting paths. In this example, there is only one intersection (at G4), where the two paths share a node. Path segmenter 118 resolves the path initially extending from E3 to G6 into two separate segments, forming a first segment extending from E3 to G3 and a second segment extending from G3 to G6. Path segmenter 118 assigns the first segment (E3→G3) to a first operation level 132, which also includes the other two paths H4→F4 and E5→E6. Notably, there are no path-shared nodes within the first operation level 132. The remaining segment (G3→G6) is assigned to a second operation level 134. The first operation level 132 defines a first set of entangled operations performed during a first time interval (e.g., concurrent or consecutive), and the second operation level 134 defines a second set of entangled operations performed during a second, slightly later time interval. In this example, E3, F3, and G3 are entangled with each other during a first time interval corresponding to the first level, and G3, G4, G5, and G6 are entangled with each other during a second time interval corresponding to the second level. At the end of both levels, each set of qubits targeted by a parallel multi-qubit operation is entangled to facilitate the corresponding multi-qubit measurement. For example, E3 is entangled with G6, and F4 is united with H4, but there is no entanglement between the corresponding pairs [E3, G6] and [F4, H4].
[0029] Figure 2 Further examples 200 of paths on quantum circuits are shown, which, for the purposes of this disclosure, are considered and are not considered edge-disjoint paths. Figure 1 of Figure 1Similarly, the nodes (squares) in the diagram are intended to correspond to the physical locations of qubits within the circuit. The boundaries between nodes are called edges. First example 202 illustrates two paths sharing an edge in region 206. Due to this shared edge, the two intersecting paths in region 206 cannot be considered edge-disjoint paths. Conversely, second example 204 illustrates paths sharing nodes but not edges. Specifically, regions 206 and 208 each indicate a node shared between two different paths. Since there is no shared edge, all paths shown in example 204 are considered edge-disjoint paths.
[0030] Figure 3 An example operation 300 is shown for implementing parallel long-distance multi-qubit operations using edge-disjoint paths in quantum circuits implementing surface code architectures. Traditionally, quantum operations on two qubits are performed by creating Bell pairs, which is achieved using auxiliary qubit paths between target qubits. The method disclosed herein achieves the same purpose by identifying a suitable set of edge-disjoint paths and segmenting the paths into multi-level entangled operations in a manner that ensures constant overhead.
[0031] 300 pairs of operations Figure 1 The example shown has been expanded. First view 302 illustrates an exemplary set of edge-disjoint paths 304, 306, and 308, which have been identified as usable for implementing three 2-qubit quantum operations. After determining the shared node (G4) of paths 304 and 306, as per [reference to...] Figure 1 The segmentation operation is performed as described. This segmentation splits path 304 into a first segment 310 and a second segment 312. The first segment 310, along with paths 304 and 306 (hereinafter collectively referred to as "first-level paths"), is assigned to the first operation level 314, while the second segment 312 is assigned to the second operation level 316. Within the first operation level 314, no two paths or path segments share nodes, and in the second operation level 316, no two paths or path segments share nodes. Through the above method, the first-level operation or the second-level operation targets the individual endpoints of paths with non-intersecting edges; however, these endpoints may not target the operations of both the first operation level 314 and the second operation level 316.
[0032] To achieve the first operation level 314, operations are performed to entangle qubits arranged along each of the first-level paths in the first-level path. For example, the entanglement operation of the first operation level 314 achieves independent entanglement with the first qubit group corresponding to nodes E3, F3, and G3, the second qubit group corresponding to nodes F4, G4, and H4, and the third qubit group corresponding to nodes E5 and E6. This entanglement of the "first-level" path is achieved through two rounds of joint measurement 318, which are shown to be performed at times t1 and t2, respectively. Even-numbered edges and odd-numbered edges are identified with respect to each of the first-level paths in the first-level path.
[0033] In the first round of measurements at the first level (at t1), joint measurements are performed on the qubits of the odd-numbered edges connecting each of the three paths. Here, X-based joint parity measurements are performed to entangle the qubits on the horizontal edges (e.g., E3, E4 and F4, G4), while Z-based joint parity measurements are performed to entangle the qubits on the vertical edges (e.g., E5, E6). In the second round of measurements at the first operational level (at t2), joint measurements are performed on the qubits of the even-numbered edges connecting each of the three paths. Again, X-based joint measurements can be performed to entangle the qubits on the horizontal edges (e.g., F3, G3 and G4, H4), while Z-based joint measurements can be performed to entangle the qubits on the vertical edges (e.g., not in the example shown).
[0034] To achieve the second operation stage 316, operations are performed to entangle qubits arranged along each of the second-level paths in the second-level path. For example, the entanglement operation of the first operation stage 314 achieves independent entanglement of qubit groups G3, G4, G5, and G6. This entanglement is achieved through two rounds of joint measurements 320 performed at times t3 and t4, respectively, where t3 and t4 are later than t1 and t2. In the first round of measurements of the second operation stage (at t3), joint measurements are performed on qubits sharing odd-numbered edges. Here, a first Z-basis joint measurement is performed with respect to G3 and G4, and a second Z-basis joint measurement is performed with respect to G5 and G6. During the second round of measurements of the second operation stage (at t4), joint measurements are performed on qubits sharing even-numbered edges. Here, another Z-basis joint measurement is performed with respect to nodes G4 and G5.
[0035] The above measurement operation completes the entanglement of each pair of endpoints on the three non-intersecting paths shown in view 302. Therefore, a joint measurement can now be performed on the corresponding qubits.
[0036] Figure 4A An exemplary operation 400 is shown, which segments disjoint paths along edges according to a method that maximizes multiple long-distance joint operations that can be executed in parallel in a quantum circuit. Specifically, Figure 4AVarious operations are illustrated in views 402 and 406 of Figure 404. Figure 404 includes square nodes corresponding to the physical locations of qubits in a quantum circuit. By way of example and not limitation, all square nodes in Figure 404 can be understood as representing logical qubits, where data is distributed across multiple embedded data qubits within each square node (not shown). In the operations shown, the darkest shaded nodes can be understood as representing data qubits targeted by a quantum algorithm (e.g., data qubit 403), while lightly shaded nodes and unshaded (white) nodes can be interpreted as representing auxiliary qubits, the number of auxiliary qubits contributing to the joint measurement of (e.g., two or more) sets of data qubits. By design, each pair of data qubits (black nodes) in directly adjacent data qubits in Figure 404 is separated by unshaded (white) nodes corresponding to auxiliary qubits. The remaining gaps between unshaded (white) nodes are filled by lightly shaded nodes.
[0037] View 402 illustrates a set of edge-disjoint paths identified as usable for implementing the requested set of multi-qubit operations on data qubits. This set of edge-disjoint paths includes nodes shared between path pairs. Specifically, node C7 is shared by paths B and C; node C5 by paths A and C; node E5 by paths A and B; and node E7 by paths B and D. Due to the geometric constraints of Figure 404, all shared nodes correspond to gray nodes, not unshaded nodes.
[0038] View 406 illustrates an exemplary algorithmic operation performed to select breakpoints in one or more paths. Here, a level number (1 or 2) is assigned to each path whenever it crosses the boundary of a gray node. These boundaries of gray nodes are referred to below as “gray node boundaries.” This level number assignment is generated according to two rules. First, whenever a path crosses a gray node, the two resulting gray node boundaries are assigned the same level number (e.g., 1 or 2). Second, if the first path and the second path pass through the same gray node (e.g., the node is shared between the two paths), then the gray node boundary of the first path will be assigned a level number different from that of the gray node boundary of the second path.
[0039] Figure 4B It shows the method for using based on Figure 4A The operation segments one or more of the identified non-intersecting paths by assigning them a level number. For reference, Figure 4B View 406 is shown again, which includes markers for the level assignment of each staggered grayscale boundary, wherein the level assignment can be as described above regarding... Figure 4A The determination is made. After assigning the level number, as shown in views 408 and 410, the breakpoints are then identified and implemented.
[0040] To implement breakpoints, the system identifies paths interleaved through unshaded nodes, where the boundaries of the nodes are assigned different level numbers. For example, nodes C4, C6, D6, and D7 all correspond to unshaded nodes, where the associated path boundaries are assigned different level numbers. Breakpoints are inserted in each of these nodes, effectively dividing the associated paths into two distinct segments. In this example, path A is split into three segments (two assigned to level 1 and two to level 2), while paths B and C are split into two segments (one assigned to level 1 and the other to level 2).
[0041] In the illustrated example, as shown in view 408, the path portion associated with level 1 is assigned to the first operation level, and as shown in view 410, the path portion associated with level 2 is assigned to the second operation level. No two paths or path segments share a node within the first operation level, and no two paths or path segments share a node within the second operation level. Through the above method, each individual endpoint of each edge-disjoint path in the edge-disjoint path is associated with either the first-level operation or the second-level operation, but not with both.
[0042] Following the path segmentation shown, the first-level entanglement operation is defined with respect to the path assigned to the first operation level. Similarly, the second-level entanglement operation is defined with respect to the path assigned to the second operation level. In actual implementation at the quantum circuit, the first-level entanglement operation and the second-level entanglement operation are not executed simultaneously (e.g., before the second level).
[0043] Figure 4C and Figure 4D This illustrates the conversion of first-level and second-level paths into a practical circuit, which can be implemented as entangled and Figure 4A The qubit associated with each edge-disjoint path in the marked edge-disjoint paths.
[0044] exist Figure 4C In the first view 416, the path associated with the level number (“first-level path”) is shown as previously shown in view 408 and derived as described above. Figure 4CViews 418 and 420 illustrate circuits implemented in different measurement rounds that can be used to achieve entanglement of qubits corresponding to each path. Specifically, view 418 shows the first round of the first-level measurement, and view 420 shows the second round of the first-level measurement. Although the two rounds of the first-level measurement are performed at different times, the measurements performed within each corresponding round (e.g., the measurements shown in view 418 or view 420) can be performed simultaneously. In both views 418 and 420, solid edges are used to indicate node pairs that undergo joint measurement in associated steps. For example, the edge connecting B2 and B3 in view 418 is solid to indicate joint measurement of the nodes corresponding to B2 and B3. Conversely, hollow edges are used to indicate node pairs that do not undergo joint measurement in associated steps. For example, the edge connecting B3 to C3 in view 418 is hollow to indicate that the endpoint node does not undergo joint measurement in this step.
[0045] In the first round of measurements shown in view 418, even-numbered and odd-numbered edges are identified for each path, and a joint measurement is performed on the qubits connecting the odd-numbered edges within each path. Here, X-basis measurements are performed when the measurement involves data qubits (black nodes) and auxiliary qubits connected along horizontally oriented odd-numbered edges. Similarly, Z-basis measurements are performed when the measurement involves data qubits and auxiliary qubits connected along vertically oriented odd-numbered edges. The letter "B" is used to denote Bell measurements.
[0046] In the second round of the first-level measurements shown in view 420, joint measurements are performed on the qubits connecting the even-numbered edges within each path. The measurement types are the same as those shown in view 418 (e.g., X-basis measurements are performed relative to the horizontal edge involving the data qubit, Y-basis measurements are performed relative to the vertical edge involving the data qubit, and B-basis measurements are performed relative to the measurement involving the two auxiliary qubits). At the end of the first and second rounds of the first-level joint measurements, the endpoints of each first-level path (e.g., the path shown in view 408) are entangled with each other.
[0047] Figure 4D It was shown as a way to discuss Figures 4A-4C The second-level entanglement operation 422 is an extension of the operations 400, 412, and 414 discussed. Figure 4DWithin, first view 424 illustrates the path (“second-level path”) associated with level 2, as previously shown in view 410 and derived as described above. Views 426 and 428 illustrate circuitry implemented in different measurement rounds of the second level, which can be used to achieve entanglement of the qubits corresponding to each path shown in view 408. Specifically, view 426 shows the first round of the second-level measurement, and view 428 shows the second round of the second-level measurement. Although the two rounds of the second-level measurement are performed at different times, the measurements performed within each respective round (e.g., shown in views 426 or 428) can be performed simultaneously.
[0048] In the first round of joint measurements shown in view 426, even-numbered and odd-numbered edges are identified for each path, and joint measurements are performed on the qubits connecting the odd-numbered edges. Figure 4D Use and about Figure 4C The same measurement symbols are used to describe them.
[0049] In the second round of joint measurements shown in view 428, joint measurements are performed on the qubits connecting the even-numbered edges within each path. At the end of the first and second rounds of the first-level joint measurements, the edges of each initially identified path do not intersect (e.g., ...). Figure 4A The endpoints of the path shown in view 410 are entangled with each other. At this point in time, the set of qubits targeted by the multi-qubit operation of the quantum algorithm (e.g., Figure 4A The endpoints of each non-intersecting path shown in view 402 are used to perform joint measurements.
[0050] Figure 5 Example operation 500 is shown for implementing parallel, long-distance multi-qubit operations in a quantum circuit using a surface code architecture for error correction. In one implementation, operation 500 is executed by a controller, which can be classical or quantum. Identification operation 502 identifies one or more sets of qubits targeted by the parallel multi-qubit operation requested by the quantum algorithm. Access operation 504 accesses a storage graph defined by nodes and edges, where each node is mapped to a qubit in the quantum circuit. Another identification operation 506 identifies the set of nodes within the graph corresponding to the identified set of qubits targeted by the parallel multi-qubit operation.
[0051] Path definition operation 508 defines a set of edge-disjoint paths such that each path in the set has an endpoint corresponding to one of the identified sets of nodes, and no two paths in the set share an edge. Intersection identification operation 510 identifies a subset of edge-disjoint paths that intersect at one or more nodes in the set, and segmentation operation 512 segments each path identified in intersection identification operation 510 into one or more first-level segments and one or more second-level segments. According to one implementation, first-level segments and second-level segments are defined such that no two first-level segments intersect each other, and no two second-level segments intersect each other.
[0052] Circuit construction operation 514 constructs a circuit definition for a circuit targeting a set of qubits entangled by multi-qubit operations. According to one implementation, the circuit achieves entanglement of the set of qubits by performing time-separated stages of entanglement operations on nearest-neighbor qubits. For example, the circuit may be executed to perform a first set of entanglement operations to entangle qubits in each of a first stage, and a second set of entanglement operations to entangle qubits in each of a second stage. The output of circuit construction operation 514 (e.g., a circuit definition) can be used to construct quantum circuits in a quantum computer performing parallel multi-qubit operations.
[0053] Figure 6 The following discussion aims to provide a brief, general description of exemplary computing environments in which the disclosed techniques can be implemented. While not strictly required, the disclosed techniques are described in the general context of computer-executable instructions, such as program modules, executed by a personal computer (PC). Typically, program modules include routines, programs, objects, components, data structures, etc., that perform a specific task or implement a specific abstract data type. Furthermore, the disclosed techniques can be implemented using other computer system configurations, including handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframes, etc. The disclosed techniques can also be practiced in distributed computing environments, where tasks are performed by remote processing devices linked via a communication network. In distributed computing environments, program modules can reside in both local and remote memory storage devices. Typically, classical computing environments are coupled to quantum computing environments, but quantum computing environments are not shown in Figure 12.
[0054] refer to Figure 6An exemplary system for implementing the disclosed technology includes a general-purpose computing device in the form of an exemplary conventional PC 600. The conventional PC 600 may include various tangible computer-readable storage media and intangible computer-readable communication signals. Tangible computer-readable storage can be implemented by any available medium accessible by the conventional PC 600, and includes both volatile and non-volatile storage media, and removable and non-removable storage media. Tangible computer-readable storage media does not include intangible and transient communication signals, and includes volatile and non-volatile, removable and non-removable storage media implemented using any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Tangible computer-readable storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other storage technologies, CDROM, digital versatile disc (DVD) or other optical disc storage, magnetic tape cassettes, magnetic tape, disk storage or other magnetic storage devices, or any other tangible medium that can be used to store desired information and is accessible by a conventional PC. Unlike tangible computer-readable storage media, intangible computer-readable communication signals can contain computer-readable instructions, data structures, program modules, or other data residing in modulated data signals, such as carrier waves or other signal transmission mechanisms. The term "modulated data signal" refers to a signal whose characteristics are set or altered in a manner that encodes information within it. By way of example and not limitation, intangible communication signals include wired media such as wired networks or direct wired connections, and wireless media such as acoustic, RF, infrared, and other wireless media.
[0055] A conventional PC 600 includes one or more processing units 602, system memory 604, and a system bus 606 that couples various system components, including the system memory 604, to the one or more processing units 604. The system bus 606 can be any of several types of bus architectures, including a memory bus or memory controller, a peripheral bus, and a local bus using any of the various bus architectures. An exemplary system memory 604 includes read-only memory (ROM) 608 and random access memory (RAM) 610. A basic input / output system (BIOS) 612 is stored in the ROM 608, which contains basic routines that facilitate the transfer of information between components within the PC 600.
[0056] In the implementation, system memory 604 stores a classical controller 611n, which includes one or more QECCs and logic for compiling quantum circuits (e.g., Figure 1 (Edge-disjoint path identifier 116 and path segmenter 118).
[0057] The exemplary PC 600 also includes one or more storage devices 630, such as a hard disk drive for reading from and writing to a hard disk, a disk drive for reading from or writing to a removable disk, and an optical disc drive for reading from or writing to a removable optical disc (such as a CD-ROM or other optical media). Such storage devices can be connected to the system bus 606 via a hard disk drive interface, a disk drive interface, and an optical drive interface, respectively. The drives and their associated computer-readable media provide non-volatile storage of computer-readable instructions, data structures, program modules, and other data to the PC 600. Other types of computer-readable media that can store PC-accessible data, such as magnetic tape cassettes, flash memory cards, digital video discs, CDs, DVDs, RAM, ROM, etc., may also be used in the exemplary operating environment.
[0058] Multiple program modules can be stored in storage device 630, including the operating system, one or more applications, other program modules, and program data. In addition to memory 604, control logic can also be stored in storage device 630. Users can input commands and information into PC 600 through one or more input devices 640, such as a keyboard, and pointing devices such as a mouse. Other input devices may include digital cameras, microphones, joysticks, gamepads, satellite antennas, scanners, etc. These and other input devices are typically connected to one or more processing units 602 via a serial port interface coupled to system bus 606, but can be connected via other interfaces, such as parallel ports, game ports, or Universal Serial Bus (USB). Monitor 646 or other types of display devices are also connected to system bus 606 via an interface such as a video adapter. Other peripheral output devices 645 may be included, such as speakers and printers (not shown).
[0059] PC 600 can operate in a networked environment using a logical connection to one or more remote computers (such as remote computer 660). In some examples, one or more network or communication connections 650 are included. Remote computer 660 can be another PC, server, router, network PC, or peer device or other public network node, and typically includes many or all of the elements described above relative to PC 600, although... Figure 6 Only the memory storage device 662 is shown. The personal computer 600 and / or remote computer 660 can be connected to a logical local area network (LAN) and a wide area network (WAN). Such network environments are common in offices, enterprise-wide computer networks, intranets, and the Internet.
[0060] When used in a LAN network environment, PC 600 connects to the LAN via a network interface. When used in a WAN network environment, PC 600 typically includes a modem or other device for establishing communication over the WAN (such as the Internet). In a network environment, program modules or portions thereof depicted relative to PC 600 may be stored in remote storage devices or other locations on the LAN or WAN. The network connections shown are exemplary, and other methods for establishing communication links between computers may be used.
[0061] The method disclosed in this paper provides a graph defining nodes connected by edges, wherein the nodes are mapped to qubits in a quantum device. The method also provides identifying a set of nodes on the graph corresponding to the set of qubits targeted by multi-qubit operations in a quantum algorithm, and defining a set of edge-disjoint paths, each path in the set being defined along one or more edges and nodes and including one set of nodes from the identified set of nodes, and the set of edge-disjoint paths being defined such that no two paths in the set share an edge. The method also provides a set of operations to be performed on each defined path in the set, which effectively entangles the qubits corresponding to the identified set of nodes included in the path, and performs a set of multi-qubit operations on the entangled set of qubits.
[0062] An example method, based on any of the foregoing approaches, provides a subset of paths that intersect each other at one or more nodes within a defined set of edge-disjoint paths. For each path in the subset of identified paths, the path is segmented into one or more first-level segments and one or more second-level segments, wherein the first-level segments and second-level segments are defined such that no two first-level segments intersect each other, and no two second-level segments intersect each other. The entanglement operation associated with the first-level segments is performed at different times than the entanglement operation associated with the second-level segments.
[0063] Another example method of any of the foregoing methods also provides for performing a first set of operations to entangle the qubits corresponding to each corresponding first segment in the first segment, and then performing a second set of operations at a subsequent time to entangle the qubits corresponding to each corresponding second segment in the second segment.
[0064] In yet another example of any of the foregoing methods, performing the first set of operations to entangle the qubits of each corresponding first-level segment in the first-level segment further includes: defining even-numbered edges and odd-numbered edges within the first-level segment; performing a joint measurement for the qubits corresponding to each even-numbered edge in the first-level segment; and performing a joint measurement for the qubits corresponding to each odd-numbered edge in the first-level segment.
[0065] In yet another example of any of the foregoing methods, performing the first set of operations to entangle the qubits of each corresponding second segment in the second segment further includes: defining even-numbered edges and odd-numbered edges in the second segment; performing a joint measurement for the qubits corresponding to each even-numbered edge in the second segment; and performing a joint measurement for the qubits corresponding to each odd-numbered edge in the second segment.
[0066] In yet another example of any of the foregoing methods, the qubits in the quantum device are logical qubits implemented in surface codes constructed from physical qubits.
[0067] In yet another example of any of the foregoing methods, performing the set of multi-qubit operations also includes performing some or all of the multi-qubit operations simultaneously.
[0068] An example quantum computing system includes a quantum device that executes circuitry defined to implement parallel multi-qubit operations specified by a quantum algorithm. The system also includes a controller stored in memory and executable to: access a graph comprising nodes mapped to qubits in the quantum device, the nodes of which are connected by edges; identify on the graph the set of nodes corresponding to the set of qubits targeted by the parallel multi-qubit operations; and define a set of edge-disjoint paths, wherein each path in the set is defined along one or more edges and nodes and includes one set of nodes from the identified set of nodes. The set of edge-disjoint paths is defined such that no two paths in the set share an edge. The controller can also execute to compile circuitry for execution by the quantum device, which, upon execution, entangles the qubits corresponding to the identified set of nodes included in each defined path in the set of edge-disjoint paths and performs the parallel multi-qubit operations.
[0069] In any example quantum system of the prior system, the controller may also perform the following actions: identifying a subset of paths that intersect at one or more nodes within the set, and for each path in the identified subset, segmenting the path into one or more first-level segments and one or more second-level segments. First-level and second-level segments are defined such that no two first-level segments intersect each other, and no two second-level segments intersect each other. The compiler circuit may also perform the following actions: implementing the entanglement operation associated with the first-level segment at different time points than the entanglement operation associated with the second-level segment.
[0070] In another example quantum system of any quantum computing system, the controller may also execute to generate a first circuit definition for a first circuit that can execute to implement a first set of operations to entangle qubits corresponding to each corresponding first segment in the first segment, and generate a second circuit definition for a second circuit that can execute to implement a second set of operations to entangle qubits corresponding to each corresponding first segment in the first segment.
[0071] In yet another example quantum system of any previous quantum system, even-numbered edges and odd-numbered edges are defined with respect to each of the first-level segments, and the first circuit can also perform joint measurements on the qubits corresponding to each of the even-numbered edges in the first-level segments and on the qubits corresponding to each of the odd-numbered edges in the first-level segments.
[0072] In yet another example of a quantum computing system, even-numbered edges and odd-numbered edges are defined with respect to each second-level segment. The second circuit can also perform joint measurements on the qubits corresponding to each even-numbered edge in the second-level segment, and on the qubits corresponding to each odd-numbered edge in the second-level segment.
[0073] In another example of a quantum system from any previous quantum system, the qubits in a quantum circuit are logical qubits implemented in a surface code constructed from physical qubits.
[0074] In another example quantum system of any previous system, the circuit can also be performed to simultaneously perform some or all of the parallel multi-qubit operations in parallel multi-qubit operations.
[0075] The example tangible computer-readable storage medium disclosed herein encodes computer-executable instructions for performing a computer process, wherein the computer process includes: defining a graph comprising nodes mapped to qubits in a quantum device, the nodes of the graph being connected by edges; identifying on the graph a set of nodes corresponding to a set of qubits targeted by a multi-qubit operation in a quantum algorithm; and defining a set of edge-disjoint paths, wherein each path in the set is defined along one or more edges and nodes and includes one of the node sets in the identified set of nodes. The set of edge-disjoint paths is defined such that no two paths in the set share an edge, and the computer process further includes, for each defined path, performing a set of operations that effectively entangle the qubits corresponding to the identified set of nodes included in the path. The multi-qubit operation set is then performed on the entangled set of qubits.
[0076] In any example tangible computer-readable storage medium of any prior computer-readable storage medium, the computer process further includes: identifying a subset of paths that intersect each other at one or more nodes within the set, and segmenting each path in the subset of identified paths into one or more first-level segments and one or more second-level segments. The first-level segments and second-level segments are defined such that no two first-level segments intersect each other, and no two second-level segments intersect each other. The process also provides performing the entanglement operation associated with the first-level segments at a different time point than the entanglement operation associated with the second-level segments.
[0077] In yet another example of a tangible computer-readable storage medium of any prior computer-readable storage medium, the computer process further includes: performing a first set of operations to entangle qubits corresponding to each corresponding first segment in the first segment, and subsequently performing a second set of operations to entangle qubits corresponding to each corresponding second segment in the second segment.
[0078] In another example of a tangible computer-readable storage medium, in any prior computer-readable storage medium, performing the entanglement operation associated with the first segment further includes: defining an even-numbered edge and an odd-numbered edge in each of the first segments, and performing a joint measurement for the qubit corresponding to each even-numbered edge in one of the first segments. The process also includes subsequently performing a joint measurement for the qubit corresponding to each odd-numbered edge in one of the first segments.
[0079] In yet another example of a tangible computer-readable storage medium of any prior computer-readable storage medium, the computer process further includes: defining even-numbered edges and odd-numbered edges in a second-level segment; performing a joint measurement for each set of qubits corresponding to an even-numbered edge in one of the second-level segments; and performing a joint measurement for each set of qubits corresponding to an odd-numbered edge in one of the second-level segments.
[0080] In yet another example of a tangible computer-readable storage medium, any prior computer-readable storage medium, the qubits in the quantum circuit are logical qubits implemented in surface codes constructed from physical qubits.
[0081] The example system disclosed herein includes means for defining a graph comprising nodes mapped to qubits in a quantum device, wherein the nodes are connected to each other by edges; means for identifying on the graph a set of nodes corresponding to a set of qubits targeted by multi-qubit operations in a quantum algorithm; and means for defining a set of edge-disjoint paths, wherein each path in the set is defined along one or more edges and nodes, and includes a set of nodes from the identified set of nodes. A set of edge-disjoint paths is defined such that no two paths in the set share an edge, and the system further includes means for performing a set of operations on each defined path, the set of operations effectively entangled with the qubits corresponding to the identified set of nodes included in the path; and means for performing a set of multi-qubit operations on the entangled set of qubits.
[0082] The foregoing specification, examples, and data provide a complete description of the structure and use of exemplary implementations. Since many implementations can be made without departing from the spirit and scope of the claimed invention, the appended claims define the invention. Furthermore, structural features of different instances can be combined in another implementation without departing from the claims.
Claims
1. A method performed by a quantum computing system, comprising: Define a graph comprising nodes mapped to qubits in a quantum device, the nodes being connected to each other by edges; The graph is marked with the set of nodes corresponding to the set of qubits targeted by the multi-qubit operations in the quantum algorithm; Define a set of edge-disjoint paths, each path in the set being defined along one or more edges and nodes and including a set of nodes from the identified set of nodes, the set of edge-disjoint paths being defined such that no two paths in the set share an edge; For each defined path, a set of operations is performed to entangle the qubits corresponding to the identified set of nodes included in the path; and Perform the set of multi-qubit operations on the entangled set of qubits.
2. The method according to claim 1, further comprising: Identify a subset of the paths that intersect each other at one or more nodes within the defined set of edge-disjoint paths; For each path in the subset of the identified paths, the path is segmented into one or more first-level segments and one or more second-level segments, wherein the first-level segments and the second-level segments are defined such that no two first-level segments intersect each other and no two second-level segments intersect each other. as well as The entanglement operation associated with the first segment is executed at a different time point than the entanglement operation associated with the second segment.
3. The method according to claim 2, further comprising: Perform a first set of operations to entangle the qubits corresponding to each corresponding first segment in the first segment; In the subsequent time, a second set of operations is performed to entangle the qubits corresponding to each of the corresponding second segments in the second segment.
4. The method of claim 3, wherein performing the first set of operations to entangle the qubits of each corresponding first segment in the first segment further comprises: Define the even-numbered and odd-numbered edges in the first-level segment; Perform joint measurements for the qubits corresponding to each even-numbered edge in the first-level segment; and For each odd-numbered edge in the first-level segment, a joint measurement is performed.
5. The method of claim 3, wherein performing the first set of operations to entangle the qubits of each corresponding second segment in the second segment further comprises: Define the even-numbered and odd-numbered edges in the second-level segment; Perform joint measurements for each even-numbered edge in the second-level segment; For each odd-numbered edge in the second-level segment, a joint measurement is performed.
6. The method of claim 1, wherein the qubit in the quantum device is a logical qubit implemented in a surface code constructed from physical qubits.
7. The method of claim 1, wherein performing the multi-qubit operation set further comprises: Simultaneously perform some or all of the multi-qubit operations.
8. A quantum computing system, comprising: Quantum devices, whose execution circuitry is defined to implement parallel multi-qubit operations specified by quantum algorithms; as well as The controller, which is stored in memory and can execute: Access a graph comprising nodes mapped to the qubits in the quantum device, the nodes of the graph being connected by edges; The set of nodes corresponding to the set of qubits targeted by the parallel multi-qubit operation is marked on the graph; Define a set of edge-disjoint paths, each path in the set being defined along one or more edges and nodes and including a set of nodes from the identified set of nodes, the set of edge-disjoint paths being defined such that no two paths in the set share an edge; Compile circuitry for execution by the quantum device, the circuitry being able to entangle the qubits corresponding to the identified set of nodes included in each of the defined paths in the set of edge-disjoint paths and perform the parallel multi-qubit operation.
9. The quantum computing system of claim 8, wherein the controller further performs the following: Identify a subset of the paths that intersect at one or more nodes within the group; For each path in the subset of the identified paths, the path is segmented into one or more first-level segments and one or more second-level segments, wherein the first-level segments and the second-level segments are defined such that no two first-level segments intersect each other and no two second-level segments intersect each other. The compiled circuit can also perform entanglement operations associated with the first segment at different times than the entanglement operations associated with the second segment.
10. The quantum computing system of claim 9, wherein the controller further performs the following: Generate a first circuit definition for a first circuit, the first circuit being executable to implement a first set of operations to entangle qubits corresponding to each corresponding first segment in the first segment; A second circuit definition is generated for the second circuit, which can be executed to implement a second set of operations to entangle the qubits corresponding to each corresponding first segment in the first segment.
11. The quantum computing system of claim 10, wherein even-numbered edges and odd-numbered edges are defined with respect to each of the first-stage segments and the first circuit is also capable of: Perform joint measurements on the qubits corresponding to each even-numbered edge in the first-level segment; and Joint measurements are performed on the qubits corresponding to each of the odd-numbered edges in the first-level segment.
12. The quantum computing system of claim 10, wherein even-numbered edges and odd-numbered edges are defined with respect to each of the second-level segments and the second circuit is also capable of: Perform joint measurements on the qubits corresponding to each even-numbered edge in the second-level segment; and Joint measurements are performed on the qubits corresponding to each of the odd edges in the second-level segment.
13. The quantum computing system of claim 8, wherein the qubit in the quantum device is a logical qubit implemented in a surface code constructed from physical qubits.
14. The quantum computing system of claim 8, wherein the circuitry can also perform some or all of the parallel multi-qubit operations simultaneously.
15. A computer-readable storage medium having instructions stored thereon, wherein the instructions, when executed by a processor, cause the processor to: Define a graph comprising nodes mapped to qubits in a quantum device, wherein the nodes of the graph are connected by edges; The graph is marked with the set of nodes corresponding to the set of qubits targeted by the multi-qubit operations in the quantum algorithm; Define a set of edge-disjoint paths, each path in the set being defined along one or more edges and nodes and including a set of nodes from the identified set of nodes, the set of edge-disjoint paths being defined such that no two paths in the set share an edge; For each defined path, a set of operations is performed to entangle the qubits corresponding to the identified set of nodes included in the path; and Perform the set of multi-qubit operations on the entangled set of qubits.
16. The computer-readable storage medium of claim 15, wherein the instructions further cause the processor to: Identify a subset of the paths within the group that intersect each other at one or more nodes; For each path in the subset of the identified paths, the path is segmented into one or more first-level segments and one or more second-level segments, wherein the first-level segments and the second-level segments are defined such that no two first-level segments intersect each other and no two second-level segments intersect each other. as well as The entanglement operation associated with the first segment is executed at a different time point than the entanglement operation associated with the second segment.
17. The computer-readable storage medium of claim 16, wherein the instructions further cause the processor to: Perform a first set of operations to entangle the qubits corresponding to each corresponding first segment in the first segment; In the subsequent time, a second set of operations is performed to entangle the qubits corresponding to each of the corresponding second segments in the second segment.
18. The computer-readable storage medium of claim 16, wherein the entanglement operation associated with the first segment further comprises: Define the even-numbered and odd-numbered edges of each segment in the first-level segment; Perform joint measurements for each even-numbered edge in the first segment corresponding to the qubit in the first segment; and For each odd-numbered edge in the first-level segment, a joint measurement is performed.
19. The computer-readable storage medium of claim 16, wherein the entanglement operation associated with the second-level segment further comprises: Define the even-numbered and odd-numbered edges in the second-level segment; Perform joint measurements for each even-numbered edge in a second-level segment corresponding to a second-level segment; Joint measurements are performed for each odd-numbered edge in one of the second-level segments.
20. The computer-readable storage medium of claim 15, wherein the qubit in the quantum device is a logical qubit implemented in a surface code constructed from physical qubits.
Citation Information
Patent Citations
Analog processor comprising quantum devices
US20170300454A1
Quantum shift register based ancillary quantum interaction gates
US20190392912A1