Skip to content

Conversation

@abbycross
Copy link
Collaborator

Closes #3070

@jyu00 I am removing for_loop and switch_case from Heron. Where should the fractional gates link point - the page in the guides, or somewhere in the API (like the rest of the table)? Also, anything to put in the notes field?

@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@abbycross abbycross requested a review from jyu00 July 28, 2025 19:48
@abbycross abbycross moved this to In Progress in Docs Planning Jul 28, 2025
@jyu00
Copy link
Collaborator

jyu00 commented Jul 28, 2025

I'm going to raise my objection again about hard coding native gate set, especially since the page says

while the native gate set never changes.

and here we are, changing it 🙂. Also if you run the Qiskit code from that page, or view on IQP, you will not find if_else returned for any backends, even though it's listed for all processor families.

If we don't want to remove the page, my suggestion would be to

  • Add a warning that you need to run the Qiskit code or view on IQP to find the latest and greatest, and/or
  • Break the table into "static gates that never change" and "operations that may change". Conditionals and fractional gates would fall into the second category.

@abbycross
Copy link
Collaborator Author

cc: @lerongil @kaelynj
Looking back at the issue, seems like Abby M's objection was because the page is getting a steady number of views, and removing the tables would decimate the length. Leron and Kaelyn: what are your thoughts on moving forward?

@abbycross
Copy link
Collaborator Author

Leron is in favor of pulling this page - redirect to processor-types. We need to look at the native gates listed on that page for updates

@jyu00
Copy link
Collaborator

jyu00 commented Jul 31, 2025

I didn't realize the processor type page also has native gates and operations hard coded 😅. So that page will need to be updated as well.

I think some information from the native gate page is worth preserving, if the decision is to pull it:

"```\n",
"\n",
"<span id=\"native-gates-on-platform\"></span>\n",
"### On IBM Quantum Platform\n",
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jyu00 Should I skip bringing over the info on how to find supported gates on the Platform, since this page is specific to Qiskit? I guess I could move this piece to the QPU information page?.... thoughts?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here's the preview for more context

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree it should be moved to QPU information page, especially since these two are actually different - one shows non-unitary operations and the other doesn't.

Interesting that the Additional information available on the details page for each QPU section on the QPU information page doesn't already talk about basis gates, even though it's on the details page.

I don't want to derail this PR further, but the separation of this page and the "QPU information" page is not very clear to me. The latter appears to be the compute resources page on the Platform, but it also mentions Qiskit. And the two pages have some duplicated data... maybe something to consider in a separate issue.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I almost typed the same thing yesterday! - I find it very confusing that we have two such similarly-named pages. I'll open a new issue to consider this after this PR is done

@abbycross
Copy link
Collaborator Author

@jyu00 I am removing if_else from the list of native gates, unless you expect it to come back in future public backends?

@abbycross
Copy link
Collaborator Author

Last question (for now) @jyu00 - I'm guessing you'd prefer not to hard-code the native gates on the processor-types page either! - so should we point to the new native gates section in the qpu-information page from each processor family?

@abbycross abbycross self-assigned this Aug 5, 2025
@abbycross abbycross marked this pull request as ready for review August 6, 2025 19:45
@abbycross abbycross requested a review from jyu00 August 6, 2025 19:46
@qiskit-bot
Copy link
Contributor

One or more of the following people are relevant to this code:

@abbycross abbycross changed the title Update native-gates.ipynb Remove native-gates file, update get-qpu-information, qpu-information, and processor-types accordingly Aug 6, 2025
@abbycross abbycross changed the title Remove native-gates file, update get-qpu-information, qpu-information, and processor-types accordingly Remove native-gates file; update get-qpu-information, qpu-information, and processor-types accordingly Aug 6, 2025
@abbycross
Copy link
Collaborator Author

Thanks @jyu00! I think I've addressed all your feedback - do you see anything I've missed?

Copy link
Collaborator

@jyu00 jyu00 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some comments on IQP terminology but otherwise looks good!

Comment on lines 67 to 69
<Admonition type="note" title="Native gates and basis gates">
The terms native gates and basis gates are often used interchangeably. The native gates are those that calibrations have been done for on the QPU, so the QPU can understand and execute them without further instruction. However, you can pass a subset of the native gates as the basis gates to the transpiler. For information about changing the basis gates, see the [Represent quantum computers](/docs/guides/represent-quantum-computers#basis-gates) topic.
</Admonition>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should just delete this, since the basis gates listed on IQP are actually native gates (i.e. you can't change them).

Comment on lines 260 to 262
"<Admonition type=\"note\" title=\"Native gates and basis gates\">\n",
"The terms native gates and basis gates are often used interchangeably. The native gates are those that calibrations have been done for on the QPU, so the QPU can understand and execute them without further instruction. However, you can pass a subset of the native gates as the basis gates to the transpiler. For information about changing the basis gates, see the [Represent quantum computers](/docs/guides/represent-quantum-computers#basis-gates) topic.\n",
"</Admonition>\n",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After reviewing the QPU information section, I think we should just delete this. This paragraph was more useful when you could add custom gates via pulse gates... but that's no longer supported. It's now confusing to have these as separate terms since IQP uses basis gates to mean native gates.

abbycross and others added 3 commits August 7, 2025 10:03
Co-authored-by: Jessie Yu <jessieyu@us.ibm.com>
Co-authored-by: Jessie Yu <jessieyu@us.ibm.com>
@abbycross abbycross added this pull request to the merge queue Aug 7, 2025
Merged via the queue into main with commit df8b48d Aug 7, 2025
5 checks passed
@abbycross abbycross deleted the ajc/update-native-gates-pg branch August 7, 2025 14:28
@github-project-automation github-project-automation bot moved this from In Progress to Done in Docs Planning Aug 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

Do we need to list supported gates by processor family?

3 participants