Skip to content

Add Clifford-to-transvection decomposition - #8

Closed
marcusps wants to merge 1 commit into
mainfrom
masilv/clifford-to-pauli-exp-unphased
Closed

marcusps wants to merge 1 commit into
mainfrom
masilv/clifford-to-pauli-exp-unphased

Conversation

@marcusps

Copy link
Copy Markdown
Owner

Summary

  • Decomposes a Clifford symplectic action into a linear number of Clifford transvections (π/4 Pauli exponents).
  • Adds clifford_centralizer and Rust/Python APIs.
  • Includes deterministic reconstruction, factor-count, and centralizer tests.

Reference

Implements the greedy O’Meara-style reduction from the transvection framework of arXiv:2102.11380. The contract is deliberately unphased: it reproduces the symplectic action, not Pauli-image signs or global phase.

Stack

Stack B, PR 1 of 2. Base: main. Review and merge before masilv/clifford-to-transvections-minimal. Stack B is independent of Stack A.

Implement a linear-size decomposition of a Clifford into Clifford
transvections (pi/4 Pauli exponents) reproducing its symplectic
(conjugation) action, plus the centralizer generators (the paper's
headline application), in the paulimer crate.

- paulimer::clifford::clifford_to_transvections: greedy O'Meara-style
  reduction producing O(n) factors that reproduce the symplectic action
  (signs and global phase are not tracked; contrast the sign-exact,
  O(n^2) clifford_to_pauli_exponents). Not guaranteed strictly minimal;
  exact r/r+1 minimality via congruence triangulation is a follow-up.
- paulimer::clifford::clifford_centralizer: generators of Paulis fixed up
  to sign under conjugation (kernel of the residue map over GF(2), via
  binar).
- Python bindings CliffordUnitary.to_transvections() / .centralizer()
  with .pyi stubs.
- Extensive Rust (unit + proptest) and Python (hypothesis) tests:
  symplectic round trip, linear factor bound, no-shorter-than-minimum,
  and centralizer conjugation-fixedness.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
@marcusps

Copy link
Copy Markdown
Owner Author

Superseded by microsoft#118, targeting the upstream repository.

@marcusps marcusps closed this Jul 17, 2026
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.

1 participant