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

[Needs to be scoped] General single qubit parameterized gate compiler #4501

Closed
tanujkhattar opened this issue Sep 16, 2021 · 11 comments
Closed
Labels
area/gate-compilation kind/feature-request Describes new functionality status/stale This has been closed due to inactivity for an extended period of time. triage/needs-feasibility [Feature requests] Needs design work to prove feasibility before accepting

Comments

@tanujkhattar
Copy link
Collaborator

Is your feature request related to a use case or problem? Please describe.
A general single qubit parameterized gate compiler was proposed as a compilation building block in #3239. This issue is to scope out what would such a compiler look like and discuss whether it'd a useful addition to Cirq.

P3 - I'm not really blocked by it, it is an idea I'd like to discuss / suggestion based on principle

@tanujkhattar tanujkhattar added kind/feature-request Describes new functionality triage/needs-feasibility [Feature requests] Needs design work to prove feasibility before accepting labels Sep 16, 2021
@github-actions
Copy link

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 30 days

@tanujkhattar
Copy link
Collaborator Author

One use case of this compiler would be to support merging parameterized single qubit rotations into a parameterized PhXZ gate, as suggested by @Wuggins

@github-actions
Copy link

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 30 days

@github-actions
Copy link

github-actions bot commented Jan 6, 2022

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 30 days

@github-actions
Copy link

github-actions bot commented Feb 6, 2022

Issue closed due to inactivity.

@tanujkhattar
Copy link
Collaborator Author

Reopening the issue since we have another request from internal team members for this compiler.

@tanujkhattar tanujkhattar reopened this Jul 20, 2022
@larchen
Copy link

larchen commented Jul 26, 2022

After a quick discussion with Tanuj, the initial thought was to try and implement the following two conversions:

  1. Parameterized X / Y / Z pow gates to parameterized PhasedXZGate gate.
  2. Merging two parameterized PhasedXZGate gates into a single parameterized PhasedXZGate gate

(1) is fairly trivial, but I couldn't find a simple closed form solution for (2), in which case it may not make much sense to try to compile the parameterized gates into a single PhXZ before the parameters are resolved.

(2) boils down to finding a representation of a', b', c', in terms of a, b, c such that X^a Z^b X^c == Z^a' X^b' X^c', which in general is not so nice.

@tanujkhattar
Copy link
Collaborator Author

tanujkhattar commented Jul 27, 2022

From cirq sync:

If it's possible to do analytically, let's do it. The result might end up looking very complicated but that's upto users using the analytical compiler.

@github-actions
Copy link

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 30 days

@github-actions
Copy link

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 30 days

@github-actions
Copy link

Issue closed due to inactivity.

@mhucka mhucka added T status/stale This has been closed due to inactivity for an extended period of time. triage/stale and removed triage/stale labels Nov 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/gate-compilation kind/feature-request Describes new functionality status/stale This has been closed due to inactivity for an extended period of time. triage/needs-feasibility [Feature requests] Needs design work to prove feasibility before accepting
Projects
None yet
Development

No branches or pull requests

4 participants