QuantumSavory.jl icon indicating copy to clipboard operation
QuantumSavory.jl copied to clipboard

entanglement tracker and swapper on a grid (or otherwise not using the default predicates)

Open Krastanov opened this issue 1 year ago • 0 comments

In #81 we now have a SwapperProt. It has a nodeL and nodeR properties which are then used by query to decide whether a pair of local slots are a valid target for a swap. It is done by findswapablequbits.

Currently, this is tested only for a long chain of repeaters, using the default "wildcard" values for these properties.

More complicated setups should be tested.

  • [x] step 0

First, we need to make findswapablequbits sufficiently general. We need to support custom predicates, not only the <(node) and >(node) ones supported currently.

  • [x] step 1

Run the current set of tests but on a grid. For instance, we have an entanglement generator between all nearest neighbors on a square grid, but only a chain through the diagonal is running swaps. In such a case, we will need a predicates that are not simply <(node) and >(node) but rather 'the other node is above and to the left of node' and 'the other node is below and to the right of node'.

  • [x] step 2

Good animated examples added to the documentation.

Krastanov avatar Dec 30 '23 06:12 Krastanov