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

Add standardized device calibration data for OQC and Rigetti #109

Merged
merged 30 commits into from Apr 5, 2022

Conversation

MattCordoba
Copy link
Contributor

Issue #, if available:

Description of changes:
Add standardized device calibration data for OQC and Rigetti

Testing done:

Merge Checklist

Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your pull request.

General

Tests

  • I have added tests that prove my fix is effective or that my feature works (if appropriate)
  • I have checked that my tests are not configured for a specific region or account (if appropriate)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

kshitijc and others added 30 commits September 13, 2021 10:16
* feature: support for StartPreserveBlock and EndPreserveBlock instructions. (#94)

* prepare release v1.3.0

* update development version to v1.3.1.dev0

* Update copyright headers (#95)

* feature: StartVerbatimBox and EndVerbatimBox (#96)

Added the StartVerbatimBox and EndVerbatimBox instructions.
The code between the start and end instructions will not be modified by
the compiler, thus delineating a "verbatim" box of code.

The astute reader will notice that this is merely a renaming of the
instructions StartVerbatimBlock and EndVerbatimBlock; this change is
marked as a feature to emphasize the incompatibility with v1.3.0.

* prepare release v1.4.0

* update development version to v1.4.1.dev0

* doc: Fix jaqcd typo in README.md (#97)

* prepare release v1.4.0.post0

* update development version to v1.4.1.dev0

Co-authored-by: Sergei-kag-aws <kag@amazon.com>
Co-authored-by: ci <ci>
Co-authored-by: Cody Wang <speller26@gmail.com>
Co-authored-by: Jacky Ko <60188942+kjacky@users.noreply.github.com>
* feature: support for StartPreserveBlock and EndPreserveBlock instructions. (#94)

* prepare release v1.3.0

* update development version to v1.3.1.dev0

* Update copyright headers (#95)

* feature: StartVerbatimBox and EndVerbatimBox (#96)

Added the StartVerbatimBox and EndVerbatimBox instructions.
The code between the start and end instructions will not be modified by
the compiler, thus delineating a "verbatim" box of code.

The astute reader will notice that this is merely a renaming of the
instructions StartVerbatimBlock and EndVerbatimBlock; this change is
marked as a feature to emphasize the incompatibility with v1.3.0.

* prepare release v1.4.0

* update development version to v1.4.1.dev0

* doc: Fix jaqcd typo in README.md (#97)

* prepare release v1.4.0.post0

* update development version to v1.4.1.dev0

* Fix: Pin pydantic and jsonschema versions (#98)

* prepare release v1.4.1

* update development version to v1.4.2.dev0

* feature: Add support for jobs (#99)

* prepare release v1.5.0

* update development version to v1.5.1.dev0

* fix: change annealingDurationRange to a list of floats. (#100)

* prepare release v1.5.1

* update development version to v1.5.2.dev0

Co-authored-by: Sergei-kag-aws <kag@amazon.com>
Co-authored-by: ci <ci>
Co-authored-by: Cody Wang <speller26@gmail.com>
Co-authored-by: Jacky Ko <60188942+kjacky@users.noreply.github.com>
Co-authored-by: Milan <30416311+krneta@users.noreply.github.com>
* feature: support for StartPreserveBlock and EndPreserveBlock instructions. (#94)

* prepare release v1.3.0

* update development version to v1.3.1.dev0

* Update copyright headers (#95)

* feature: StartVerbatimBox and EndVerbatimBox (#96)

Added the StartVerbatimBox and EndVerbatimBox instructions.
The code between the start and end instructions will not be modified by
the compiler, thus delineating a "verbatim" box of code.

The astute reader will notice that this is merely a renaming of the
instructions StartVerbatimBlock and EndVerbatimBlock; this change is
marked as a feature to emphasize the incompatibility with v1.3.0.

* prepare release v1.4.0

* update development version to v1.4.1.dev0

* doc: Fix jaqcd typo in README.md (#97)

* prepare release v1.4.0.post0

* update development version to v1.4.1.dev0

* Fix: Pin pydantic and jsonschema versions (#98)

* prepare release v1.4.1

* update development version to v1.4.2.dev0

* added openqasm program and device capability.

* OpenQASM support initial commit.

* added rigetti/ionq tests; added result_type.py

* updated README.md

* reformatted.

* removed unused import.

* reformatted docstring in openqasm_device_action_properties.py

* reformatted.

* [fix] updated docstring.

* [fix] incoporate Kshitij's comments.

* added openqasm schema header in test_schema_base.py

* reformatted.

* reformatted.

* turn off flake8 for jaqcd results/shared_models import alias.

* updated jaqcd __init__.py to support import results from jaqcd folder.

* empty commit to test github checker.

* empty commit 2 to test github checker.

* Merging in changes from main and updating imports for OpenQASM

* Fixing names and defaults to match docs

* Reformatted with `black`

* Bring in internal changes

* Merge changes from the internal repository (#8)

* Fix typo in supportsPhysicalQubits

cr: https://code.amazon.com/reviews/CR-61878135

* Removing `results` from OpenQASM Program

cr: https://code.amazon.com/reviews/CR-62355578

* Reformat files

Co-authored-by: Srikrishna Jaliparthy <jalipart@amazon.com>
Co-authored-by: Jeffrey Heckey <heckey@amazon.com>

* fix: Revert to old module structure (#9)

Co-authored-by: Sergei-kag-aws <kag@amazon.com>
Co-authored-by: ci <ci>
Co-authored-by: Cody Wang <speller26@gmail.com>
Co-authored-by: Jacky Ko <60188942+kjacky@users.noreply.github.com>
Co-authored-by: Jeffrey Heckey <heckey@amazon.com>
Co-authored-by: shiyunon <shiyunon@amazon.com>
Co-authored-by: Jeff Heckey <jheckey@gmail.com>
Co-authored-by: ℂ𝓞𝔇𝚈 <caw@amazon.com>
Co-authored-by: Srikrishna Jaliparthy <jalipart@amazon.com>
* feature: support for StartPreserveBlock and EndPreserveBlock instructions. (#94)

* prepare release v1.3.0

* update development version to v1.3.1.dev0

* Update copyright headers (#95)

* feature: StartVerbatimBox and EndVerbatimBox (#96)

Added the StartVerbatimBox and EndVerbatimBox instructions.
The code between the start and end instructions will not be modified by
the compiler, thus delineating a "verbatim" box of code.

The astute reader will notice that this is merely a renaming of the
instructions StartVerbatimBlock and EndVerbatimBlock; this change is
marked as a feature to emphasize the incompatibility with v1.3.0.

* prepare release v1.4.0

* update development version to v1.4.1.dev0

* doc: Fix jaqcd typo in README.md (#97)

* prepare release v1.4.0.post0

* update development version to v1.4.1.dev0

* Fix: Pin pydantic and jsonschema versions (#98)

* prepare release v1.4.1

* update development version to v1.4.2.dev0

* feature: Add support for jobs (#99)

* prepare release v1.5.0

* update development version to v1.5.1.dev0

* fix: change annealingDurationRange to a list of floats. (#100)

* prepare release v1.5.1

* update development version to v1.5.2.dev0

* feature: add control-sqrt-not gate (#101)

* feature: add control-sqrt-not gate

Addint this gate makes things like CHSH circuits much more manageable off the bat.

* fix: added tests for CV gate, in line with CY/CZ gates

* fix: updated tox.ini so that unit-tests succeed

* fix: unit tests for CV gate

* fix: revert tox.ini ahead of merge.

Co-authored-by: Mark C <mc@localhost.localdomain>
Co-authored-by: Mark C <mark.carney@gruposantander.com>

* prepare release v1.6.0

* update development version to v1.6.1.dev0

Co-authored-by: Sergei-kag-aws <kag@amazon.com>
Co-authored-by: ci <ci>
Co-authored-by: Cody Wang <speller26@gmail.com>
Co-authored-by: Jacky Ko <60188942+kjacky@users.noreply.github.com>
Co-authored-by: Kshitij Chhabra <kshitijc@users.noreply.github.com>
Co-authored-by: Milan <30416311+krneta@users.noreply.github.com>
Co-authored-by: Mark C <idelta0@gmail.com>
Co-authored-by: Mark C <mc@localhost.localdomain>
Co-authored-by: Mark C <mark.carney@gruposantander.com>
* feature: add ECR gate

* spacing

* fix: ECR as DoubleTarget

Co-authored-by: Cody Wang <speller26@gmail.com>
* feature: support for StartPreserveBlock and EndPreserveBlock instructions. (#94)

* prepare release v1.3.0

* update development version to v1.3.1.dev0

* Update copyright headers (#95)

* feature: StartVerbatimBox and EndVerbatimBox (#96)

Added the StartVerbatimBox and EndVerbatimBox instructions.
The code between the start and end instructions will not be modified by
the compiler, thus delineating a "verbatim" box of code.

The astute reader will notice that this is merely a renaming of the
instructions StartVerbatimBlock and EndVerbatimBlock; this change is
marked as a feature to emphasize the incompatibility with v1.3.0.

* prepare release v1.4.0

* update development version to v1.4.1.dev0

* doc: Fix jaqcd typo in README.md (#97)

* prepare release v1.4.0.post0

* update development version to v1.4.1.dev0

* Fix: Pin pydantic and jsonschema versions (#98)

* prepare release v1.4.1

* update development version to v1.4.2.dev0

* feature: Add support for jobs (#99)

* prepare release v1.5.0

* update development version to v1.5.1.dev0

* fix: change annealingDurationRange to a list of floats. (#100)

* prepare release v1.5.1

* update development version to v1.5.2.dev0

* feature: add control-sqrt-not gate (#101)

* feature: add control-sqrt-not gate

Addint this gate makes things like CHSH circuits much more manageable off the bat.

* fix: added tests for CV gate, in line with CY/CZ gates

* fix: updated tox.ini so that unit-tests succeed

* fix: unit tests for CV gate

* fix: revert tox.ini ahead of merge.

Co-authored-by: Mark C <mc@localhost.localdomain>
Co-authored-by: Mark C <mark.carney@gruposantander.com>

* prepare release v1.6.0

* update development version to v1.6.1.dev0

* feature: adding MultiQubitPauliChannel to ir (#103)

* change: Relax requirements from pydantic (#102)

Allow using any version from 1.8.2 to 2.0.0 (excluding). This should be a reasonable balance between stability and flexibility.

* prepare release v1.7.0

* update development version to v1.7.1.dev0

* fix: multiqubit pauli channel with multitarget (#104)

* prepare release v1.7.1

* update development version to v1.7.2.dev0

Co-authored-by: Sergei-kag-aws <kag@amazon.com>
Co-authored-by: ci <ci>
Co-authored-by: Cody Wang <speller26@gmail.com>
Co-authored-by: Jacky Ko <60188942+kjacky@users.noreply.github.com>
Co-authored-by: Kshitij Chhabra <kshitijc@users.noreply.github.com>
Co-authored-by: Milan <30416311+krneta@users.noreply.github.com>
Co-authored-by: Mark C <idelta0@gmail.com>
Co-authored-by: Mark C <mc@localhost.localdomain>
Co-authored-by: Mark C <mark.carney@gruposantander.com>
Co-authored-by: mbeach-aws <85963088+mbeach-aws@users.noreply.github.com>
Co-authored-by: Or Ostrovsky <93072774+orclassiq@users.noreply.github.com>
* feature: add schemas for OQC

* Update calibration data in tests

* update docstring

* Update docstrings

* parametrize tests, update region

* update oqc device_capabilities based on latest enum changes
* feat: Add OQC executedProgram in task result metadata

* Revert reformatting
fix: correct provider properties field for OQC
fix: added OQC device parameter to TaskMetadata
#23)

Add supportsPartialVerbatimBox, supportsUnassignedMeasurements to OpenQasm device action properties
…roperties for other QHPs. Make OneQubit gate number an integer instead of a float
Make provider properties specs to keep consistent with similar properties for other QHPs. Make OneQubit gate number an integer instead of a float
Update type hint for specs object to reflect new structure OQC
This reverts commit 8ed8fb7, reversing
changes made to 35fd178.
…imilar properties for other QHPs. Make OneQubit gate number an integer instead of a float"

This reverts commit 8599541.
Update OQC json schema to match GetDevice API call
feat: Add standardized device calibration data for OQC and Rigetti
@MattCordoba MattCordoba requested a review from a team as a code owner March 31, 2022 19:26
@MattCordoba MattCordoba changed the title Unified device properties Add standardized device calibration data for OQC and Rigetti Mar 31, 2022
@codecov
Copy link

codecov bot commented Mar 31, 2022

Codecov Report

Merging #109 (6ea8223) into main (abd3880) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main      #109   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           59        60    +1     
  Lines          916       956   +40     
  Branches       197       205    +8     
=========================================
+ Hits           916       956   +40     
Impacted Files Coverage Δ
src/braket/device_schema/__init__.py 100.00% <100.00%> (ø)
...et/device_schema/oqc/oqc_device_capabilities_v1.py 100.00% <100.00%> (ø)
...e_schema/rigetti/rigetti_device_capabilities_v1.py 100.00% <100.00%> (ø)
...tandardized_gate_model_qpu_device_properties_v1.py 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update abd3880...6ea8223. Read the comment docs.

@MattCordoba MattCordoba merged commit db91c60 into main Apr 5, 2022
@MattCordoba MattCordoba deleted the unified-device-properties branch April 5, 2022 21:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants