Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed recursive steiner-gauss bug #1

Open
wants to merge 2 commits into
base: steiner_decomp
Choose a base branch
from

Conversation

Aerylia
Copy link

@Aerylia Aerylia commented Aug 5, 2021

I also added some documentation and made a few refactors to make the code more legible/understandable.

The problem was that the recursive steiner tree building process required both sides of the edge in the graph to be "out of order" (aka in rec_nodes), but in reality, there will be at least 1 node in usable_nodes that is not in rec_nodes which is needed to combine the two subgraphs.

In addition to this, the vertices of the architecture are assumed to be in a post-order DFT labeling and the architecture still requires a reduce_order that has the order in which the vertices can be removed without disconnecting the graph (largest vertex first). I will write the algorithms to do this automatically later.

Aerylia added 2 commits August 5, 2021 18:23
…/spanning tree for ease fo use. Included unittests for all architectures.
@Aerylia
Copy link
Author

Aerylia commented Aug 14, 2021

I also fixed that the architecture is automatically labeled according to the DFT post-ordered labeling that is assumed by the rec_steiner_gauss algorithm.
The algorithm also requires a spanning tree along which the qubits are removed one-by-one, which is stored in the reduce_order. But now, the Architecture class doesn't require that parameter any more nor a "properly labeled" graph

aborgna-q added a commit that referenced this pull request Jan 18, 2023
Adds automatic architecture labeling and finding of the reduce order.

Co-authored-by: Aerylia <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant