You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The qubit picking algorithm for quantum chess greedily picks the most connected qubit. This is good if there is only one circuit transformation to do. However, if there are two distinct "chains" of moves, this greedy algorithm may no longer work. For instance, suppose the b1 knight splits on one side of the board, and the g1 knight splits on the other side of the board (and the two sides never interact). It may be possible to put b1 circuit on the right side of the chip, and g1 circuit on the left side of the chip. However, since the greedy algorithm put the b1 circuit right in the middle of the circuit, they can't both fit.
Another possibility that may be easier algorithmically (but possibly involve changing more code), is to split discrete chains of moves into different circuits, rather than try to fit both chains into the first circuit. This could also slow down performance.
The qubit picking algorithm for quantum chess greedily picks the most connected qubit. This is good if there is only one circuit transformation to do. However, if there are two distinct "chains" of moves, this greedy algorithm may no longer work. For instance, suppose the b1 knight splits on one side of the board, and the g1 knight splits on the other side of the board (and the two sides never interact). It may be possible to put b1 circuit on the right side of the chip, and g1 circuit on the left side of the chip. However, since the greedy algorithm put the b1 circuit right in the middle of the circuit, they can't both fit.
Another possibility that may be easier algorithmically (but possibly involve changing more code), is to split discrete chains of moves into different circuits, rather than try to fit both chains into the first circuit. This could also slow down performance.
The qubit picking algorithm for quantum chess is found here:
https://github.com/quantumlib/ReCirq/blob/master/recirq/quantum_chess/circuit_transformer.py#L58
The text was updated successfully, but these errors were encountered: