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

[MPS Simulator] Optimization for XX, YY, ZZ rotations #1691

Merged
merged 4 commits into from
May 31, 2024

Conversation

1tnguyen
Copy link
Collaborator

Description

These are 2-body ops that are commonly used in quantum applications.
Without frontend exposure of (Rxx/XXPhase, Ryy/YYPhase, Rzz/ZZPhase) gates, users need to write them in the decomposed form or using exp_pauli. Both results in 2 CNOT gates.

This is not ideal for MPS since we want to minimize the number of 2-q gates.

Hence, add a special handling in MPS for these cases.

1tnguyen and others added 2 commits May 17, 2024 02:10
These are 2-body ops that are commonly-used in quantum applications.
Without frontend exposure of (Rxx/XXPhase, Ryy/YYPhase, Rzz/ZZPhase),
users need to write it in the decomposed form or using exp_pauli. Both
results in 2 CNOT gates. This is not ideal for MPS since we want to
minimize the number of 2-q gate.

Hence, add a special handling in MPS for these cases.
Copy link

CUDA Quantum Docs Bot: A preview of the documentation can be found here.

github-actions bot pushed a commit that referenced this pull request May 17, 2024
@zohimchandani
Copy link
Collaborator

Team, any updates on this, please? This is holding a benchmark for a collaboration currently so would be nice to get it moving if we can.

Thanks :)

github-actions bot pushed a commit that referenced this pull request May 31, 2024
Copy link

CUDA Quantum Docs Bot: A preview of the documentation can be found here.

@1tnguyen 1tnguyen merged commit c146ad7 into NVIDIA:main May 31, 2024
126 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators May 31, 2024
@zohimchandani
Copy link
Collaborator

Do we need to add these gates in the docs?

@1tnguyen
Copy link
Collaborator Author

1tnguyen commented Jun 3, 2024

Do we need to add these gates in the docs?

We don't actually add any 'new' gates. I think the expression of Rxx/XXPhase, Ryy/YYPhase, or Rzz/ZZPhase in terms of exp_pauli could be added to our docs as a footnote/example. Most other frameworks that have these native gates should already have equations for the gate matrix in terms of Pauli exponential.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants