PennyLaneAI / pennylane-qiskit

The PennyLane-Qiskit plugin integrates the Qiskit quantum computing framework and IBM Q with PennyLane.
https://docs.pennylane.ai/projects/qiskit
Apache License 2.0
194 stars 66 forks source link

Add conversion support for Qiskit noise models #577

Closed obliviateandsurrender closed 4 months ago

obliviateandsurrender commented 4 months ago

Context: Add support for converting Qiskit's noise models to PennyLane's noise models.

Description of the Change:

  1. noise_models.py contains helper methods for converting a Qiskit's NoiseModel object to a list of PennyLane Channel objects that are constructed based on their Kraus representation obtained via Qiskit.
  2. converter.py contains the load_noise_model method, which accepts a Qiskit noise model along with some mentioned keyword arguments and returns the corresponding PennyLane noise model.

Benefits: Noise model construction can be done in PennyLane from a Qiskit one.

Possible Drawbacks:

  1. The Readability of converted noise models will not be the best as QubitChannels will only give Kraus representation and not any information on the corresponding error.

Related GitHub Issues: [sc-68045]

codecov[bot] commented 4 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (a5f0f5a) to head (cb9f811). Report is 14 commits behind head on master.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #577 +/- ## ========================================== Coverage 100.00% 100.00% ========================================== Files 7 9 +2 Lines 554 867 +313 ========================================== + Hits 554 867 +313 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.