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

✨ Stripping DDs of their identity #377

Merged
merged 7 commits into from
Mar 27, 2024
Merged

✨ Stripping DDs of their identity #377

merged 7 commits into from
Mar 27, 2024

Conversation

burgholzer
Copy link
Member

Description

This PR pulls in the changes from cda-tum/mqt-core#358, which considerably changes the way matrix decision diagrams are represented. Particularly, any node resembling the identity is now eliminated and only implicitly represented.
This further compacts the representation of quantum gates and makes the identity the most compact it can be---a single terminal node.
The overall performance improvements are still to be evaluated. Surprisingly few changes were needed to make this work in QCEC.

Checklist:

  • The pull request only contains commits that are related to it.
  • I have added appropriate tests and documentation.
  • I have made sure that all CI jobs on GitHub pass.
  • The pull request introduces no new warnings and follows the project's style guidelines.

Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
@burgholzer burgholzer added dependencies Pull requests that update a dependency file submodules Pull requests that update Submodules code c++ Anything related to C++ code minor Part of a minor release enhancement Anything related to improvements of the existing library labels Mar 20, 2024
@burgholzer burgholzer self-assigned this Mar 20, 2024
Copy link

codecov bot commented Mar 20, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 96.3%. Comparing base (da135b9) to head (fb1f97d).
Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##            main    #377     +/-   ##
=======================================
+ Coverage   96.2%   96.3%   +0.1%     
=======================================
  Files         34      34             
  Lines       1766    1765      -1     
  Branches     217     218      +1     
=======================================
+ Hits        1700    1701      +1     
+ Misses        66      64      -2     
Flag Coverage Δ
cpp 96.1% <100.0%> (+0.1%) ⬆️
python 97.2% <ø> (ø)
Files Coverage Δ
include/checker/dd/DDConstructionChecker.hpp 83.3% <100.0%> (ø)
src/checker/dd/DDAlternatingChecker.cpp 92.0% <100.0%> (+2.5%) ⬆️

Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
@burgholzer burgholzer enabled auto-merge (squash) March 24, 2024 22:52
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
@burgholzer burgholzer merged commit 20bc8d7 into main Mar 27, 2024
37 checks passed
@burgholzer burgholzer deleted the identity-removal branch March 27, 2024 17:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ Anything related to C++ code dependencies Pull requests that update a dependency file enhancement Anything related to improvements of the existing library minor Part of a minor release submodules Pull requests that update Submodules code
Projects
Status: Done
Status: Done
Development

Successfully merging this pull request may close these issues.

None yet

1 participant