-
Notifications
You must be signed in to change notification settings - Fork 2.7k
[DAGCircuit Oxidation] Port DAGCircuit to Rust
#12550
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
Merged
Merged
Changes from 25 commits
Commits
Show all changes
70 commits
Select commit
Hold shift + click to select a range
c911205
Port DAGCircuit to Rust
kevinhartman 1e4e6f3
Update visual mpl circuit drawer references
mtreinish 463b86a
Ensure DAGNode.sort_key is always a string
mtreinish 01c06e5
Merge branch 'main' into oxidize-dag
mtreinish f6b27ff
Make Python argument first in Param::eq and Param::is_close
mtreinish 0e62ad0
Merge branch 'main' into oxidize-dag
mtreinish aaf38b9
Fix merge conflict with #12943
mtreinish 28f6de1
Add release notes and test for invalid args on apply methods
mtreinish 11c52ab
Restore `inplace` argument functionality for substitute_node()
mtreinish d68743f
Revert needless dict() cast on metadata in dag_to_circuit()
mtreinish e07f3d5
Add code comment for DAGOpNode.__eq__ parameter checking
mtreinish 30a4a1a
Raise a ValueError on DAGNode creation with invalid index
mtreinish 6dec768
Use macro argument to set python getter/setter name
mtreinish 1de3290
Remove Ord and PartialOrd derives from interner::Index
mtreinish 5c6f006
Fix missing nodes in matplotlib drawer.
kevinhartman b90b660
Revert "Update visual mpl circuit drawer references"
mtreinish 9a6f953
Update visual mpl circuit drawer references for control flow circuits
mtreinish 701c980
Fix edge cases in DAGOpNode.__eq__
mtreinish 464e87b
Remove Param::add() for global phase addition
mtreinish 7f1b451
More complete fix for matplotlib drawer.
kevinhartman 6aab4a6
Revert "Update visual mpl circuit drawer references for control flow …
kevinhartman e5e57c6
Unify rayon versions in workspace
mtreinish 584ee9b
Remove unused _GLOBAL_NID.
kevinhartman bdeb5f6
Merge branch 'main' into oxidize-dag
mtreinish 1d249ab
Use global monotonic ID counter for ids in drawer
mtreinish 0c66934
Re-add missing documentation
jakelishman c6ff31b
Merge remote-tracking branch 'ibm/main' into oxidize-dag
jakelishman 1960ede
Remove unused BitData iterator stuff.
kevinhartman 1d71204
Make types, dag, and bit count methods public
mtreinish 90b92f8
Make Wire pickle serialization explicit
mtreinish dcef2a4
Make py token usage explicit in _VarIndexMap
mtreinish c4d6bd2
Make all pub(crate) visibility pub
mtreinish 396dcaa
Remove unused method
mtreinish adf0c91
Reorganize code structure around PyVariableMapper and BitLocations
mtreinish a670439
Add missing var wires to .get_wires() method
mtreinish 555f254
Raise TypeError not ValueError for invalid input to set_global_phase
mtreinish 38b0cd4
De-duplicate check logic for op node adding methods
mtreinish 7e43071
Improve collect_1q_runs() filter function
mtreinish 4611d15
Merge branch 'main' into oxidize-dag
mtreinish 7ff00ab
Use swap_remove instead of shift_remove
mtreinish 22d0d3e
Combine input and output maps into single mapping
mtreinish 6e29375
Merge remote-tracking branch 'origin/main' into oxidize-dag
mtreinish d8a6d78
Ensure we account for clbits in depth() short circuit check
mtreinish cda5f1d
Also account for Vars in DAGCircuit.width()
mtreinish b13fe3a
Remove duplicated _get_node() method
mtreinish 6d3104f
Handle Var wires in classical_predecessors
mtreinish 2abe084
Remove stray comment
mtreinish 73661a9
Use Operation::control_flow() instead of isinstance checking
mtreinish 694d78e
Use &str for increment_op and decrement_op
mtreinish a8a10db
Also include vars in depth short circuit
mtreinish 6a7d950
Fix typing for controlflow name lookup in count_ops
mtreinish 8a107fe
Fix .properties() method to include operations field
mtreinish 2769831
Add missing Var wire handling to py_nodes_on_wire
mtreinish 8e6a209
Add back optimization to avoid isinstance in op_nodes
mtreinish cd43af5
Simplify/deduplicate __eq__ method
mtreinish 99d016a
Merge branch 'main' into oxidize-dag
mtreinish f48b378
Invalidate cached py op when needed in substitute_node_with_dag
mtreinish d3677b3
Copy-editing suggestions for release notes
mtreinish e89e715
Merge branch 'main' into oxidize-dag
mtreinish 39064c2
Fix and simplify separable_circuits()
mtreinish 41f0735
Merge branch 'main' into oxidize-dag
mtreinish 70e98b6
Add clbit removal test
mtreinish 818681a
Move to using a Vec<[NodeIndex; 2]> for io maps
mtreinish 32f5762
Merge remote-tracking branch 'origin/main' into oxidize-dag
mtreinish 415e9b7
Make add_clbits() signature the same as add_qubits()
mtreinish 333172f
Add attribution comment to num_tensor_factors() method
mtreinish 54a534d
Add py argument to add_declared_var()
mtreinish cc175c5
Merge remote-tracking branch 'ibm/main' into oxidize-dag
jakelishman 4d68875
Remove unnecessarily Python-space check
jakelishman 1ad514c
Correct typo in `to_pickle` method
jakelishman File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.