Skip to content

Conversation

@rileyjmurray
Copy link
Contributor

The auto-merge of #671 from bugfix into develop failed, so this PR is handling that manually.

Description from bugfix merge below.

This PR is split off from #664. It fixes how wildcard error is computed in leakage modeling. When merged it will resolve #652. It also includes changes to the default leakage-aware gauge optimization suite. The latter changes are needed to prevent gauge optimization from trying to spuriously "spread out" relational errors across available gates.

This PR adds a meaningful correctness test for leakage GST modeling. To reduce the time of the test I used a huge number of shots per circuit in the simulated dataset. This led to errors with "min_prob_clip" constants in objective function evaluation. In order to resolve those errors I replaced hard-coded instances of that constant's default value (1e-4) to values of a module-wide constant; I made similar changes for "radius" constants in objective functions.

Finally, this PR adds implementations of frobeniusdist, frobeniusdist_squared, and residual to ModelMember, and removes the implementation of these functions from all child classes. Removing the child class implementation become possible because the ModelMember.residual implementation relies on a new method, ModelMember._to_transformed_dense(...), that child classes must implement. The semantics of _to_transformed_dense are documented in ModelMember. I provided implementations for base classes for POVM effects, states, and linear operators.

(This PR is a superset of the since-closed PR #670, which started from develop instead of bugfix.)

…671)

This PR is split off from #664. It fixes how wildcard error is computed
in leakage modeling. When merged it will resolve #652. It also includes
changes to the default leakage-aware gauge optimization suite. The
latter changes are needed to prevent gauge optimization from trying to
spuriously "spread out" relational errors across available gates.

This PR adds a meaningful correctness test for leakage GST modeling. To
reduce the time of the test I used a huge number of shots per circuit in
the simulated dataset. This led to errors with "min_prob_clip" constants
in objective function evaluation. In order to resolve those errors I
replaced hard-coded instances of that constant's default value (1e-4) to
values of a module-wide constant; I made similar changes for "radius"
constants in objective functions.

Finally, this PR adds implementations of frobeniusdist, frobeniusdist_squared,
and residual to ModelMember, and removes the implementation of these
functions from all child classes. Removing the child class implementation
become possible because the ModelMember.residual implementation relies on
a new method, ModelMember._to_transformed_dense(...), that child classes
must implement. The semantics of _to_transformed_dense are documented in
ModelMember. I provided implementations for base classes for POVM effects,
states, and linear operators. 

(This PR is a superset of the since-closed PR #670, which started from
develop instead of bugfix.)
@rileyjmurray rileyjmurray requested review from a team as code owners October 29, 2025 22:45
@rileyjmurray rileyjmurray requested a review from sserita October 29, 2025 22:45
@rileyjmurray rileyjmurray merged commit bae6d1b into develop Oct 29, 2025
16 of 17 checks passed
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.

2 participants