mqt-core
mqt-core copied to clipboard
✨ Generalise Construction of Interaction Graph
What's the problem this feature will solve?
The list of supported gates for the construction of an interaction graph (see src/datastructures/Layer.cpp#L155) is rather limited at the moment. I see no reason why this shouldn't support a broader gateset. This does not properly handle two-target gates yet (specifically, SWAP, iSWAP, iSWAPdg, Peres, Peresdg, DCX, ECR, RXX, RYY, RZZ, RZX, XXminusYY, XXplusYY
) and also does not handle CompoundOperations (although that could be transparently handled by the caller).
Originally posted by @burgholzer in https://github.com/cda-tum/mqt-core/pull/596#discussion_r1584808824
Describe the solution you'd like
The mentioned method should be capable of handling most (all?) possible Gates.