• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Qiskit / qiskit / 23916456429
88%

Build:
DEFAULT BRANCH: main
Ran 02 Apr 2026 07:16PM UTC
Jobs 1
Files 932
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

02 Apr 2026 05:57PM UTC coverage: 87.489% (+0.02%) from 87.474%
23916456429

push

github

web-flow
Support commutation check between Pauli-based gates and standard gates (After reverting #15488) (#15925)

* Transpiler: implement exact Pauli generators for LightCone in Rust

This PR adds exact Pauli generator expansions for the following gates:
- single-qubit: H (X+Z)
- 2-qubit: CX, CY, CZ, ECR, Swap, iSwap, CSX, CS, CSdg
- parametric: CRX, CRY, CRZ, CPhase, RXX, RYY, RZZ, RZX, XXPlusYY, XXMinusYY
- 3-qubit: CCX, CSwap

This enables high-performance bitwise commutation checks in the LightCone
pass, avoiding slow matrix-multiplication fallbacks. Parametric gates are
scaled dynamically in Rust using the input parameters.

Co-authored-by: Shelly Garion <shelly.garion@ibm.com>
Co-authored-by: Alexander Ivrii <alexander.ivrii@ibm.com>

* Lint: apply cargo fmt and fix clippy::map_clone in split_2q_unitaries.rs

* Expose generator_observable to Python

Following feedback from Alexander Ivrii, this commit exposes the Rust
generator_observable function and the StandardGate enum to Python under
the qiskit._accelerate.standard_generators submodule.

This allows developers to verify the mathematical generators directly from
Python and reuse the logic for other purposes like PauliEvolutionGate
verification. The Rust-internal API is maintained via a dedicated
generator_observable function that accepts slices.

* Refactor generator logic to use qiskit_circuit::StandardGate

* Update generator_observable with expansions for CCX/CCZ/CSwap

* Fix generator fallback for unsupported gates and update docs

* Narrow PR scope: remove split_2q_unitaries and pyext python wrapper

* Add generator support for CS, CSdg, CSX, CCX, CCZ; add commutation tests

* style: run black on test_commutation_checker.py

* style: run rustfmt on standard_generators.rs

* lint: fix license headers and pylint warnings

* style: remove decorative unicode lines and add operator equivalence tests

* fix: ensure strict Operator equivalence for all supported generators

* style: fix pylint reimport... (continued)

260 of 279 new or added lines in 5 files covered. (93.19%)

18 existing lines in 4 files now uncovered.

104372 of 119297 relevant lines covered (87.49%)

1022951.75 hits per line

Uncovered Changes

Lines Coverage ∆ File
11
95.45
crates/circuit/src/standard_gate/standard_generators.rs
8
89.15
-0.69% crates/transpiler/src/commutation_checker.rs

Coverage Regressions

Lines Coverage ∆ File
7
92.29
-0.51% crates/qasm2/src/lex.rs
6
96.68
0.0% crates/qasm2/src/parse.rs
4
74.1
-0.04% crates/circuit/src/parameter/symbol_expr.rs
1
86.99
0.0% crates/circuit/src/parameter/parameter_expression.rs
Jobs
ID Job ID Ran Files Coverage
1 23916456429.1 02 Apr 2026 07:16PM UTC 932
87.49
GitHub Action Run
Source Files on build 23916456429
  • Tree
  • List 932
  • Changed 10
  • Source Changed 5
  • Coverage Changed 10
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #23916456429
  • 09bcf159 on github
  • Prev Build on gh-readonly-queue/main/pr-15933-50c18fa03c9f959483e20f74762bfe2e14d6877b (#23892432241)
  • Next Build on main (#23928373827)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc