Skip to content

Clarify [Rs, Rr] time-sign semantics and restore correct QMD/IMD freedom for improper-operation inputs#19

Draft
Copilot wants to merge 3 commits intomainfrom
copilot/add-solve-qmd-imd-functions
Draft

Clarify [Rs, Rr] time-sign semantics and restore correct QMD/IMD freedom for improper-operation inputs#19
Copilot wants to merge 3 commits intomainfrom
copilot/add-solve-qmd-imd-functions

Conversation

Copy link
Copy Markdown

Copilot AI commented Mar 7, 2026

The issue was caused by ambiguous time-reversal handling for [Rs, Rr] transformations: determinant-based inference was over-constraining QMD/IMD for mixed improper operations. For the reported input class, this collapsed expected tensor freedoms (QMD 4 / IMD 3) into incorrect lower-dimensional solutions.

  • Core parser semantics

    • Updated parse_transformation() so [Rs, Rr] no longer infers anti-unitary/time-reversal sign.
    • For [Rs, Rr], s_T is now fixed to +1; anti-unitary operations are represented explicitly via [Tflag, Rr].
    • Kept spatial/parity handling unchanged (Rr drives axis transform and s_P via det(Rr)^P_constraint).
  • Behavioral alignment in rank-3 convenience paths

    • This removes accidental time-sign flips for improper [Rs, Rr] inputs used by solve_qmd() / solve_imd().
    • Reported class now yields the expected freedom counts and z-sector relations for QMD/IMD.
  • Targeted test updates

    • Added regression coverage for the reported improper-operation QMD/IMD scenario (expects 4 and 3 independent components respectively).
    • Migrated anti-unitary fixtures (AHE/31m cases) to explicit [Tflag, Rr] representation.
    • Added a small fixture helper to convert [Rs, Rr] -> [Tflag, Rr] where needed, reducing repeated conversion logic.
# Explicit anti-unitary representation (preferred when time-reversal is intended)
transformations = [
    [False, Rr_unitary],   # unitary
    [True,  Rr_antiunit],  # anti-unitary
]

A, ns, rel, comp = solve_qmd(transformations, tol=1e-5)

🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.

Copilot AI and others added 2 commits March 7, 2026 06:35
Co-authored-by: Connor1y <55659348+Connor1y@users.noreply.github.com>
Co-authored-by: Connor1y <55659348+Connor1y@users.noreply.github.com>
Copilot AI changed the title [WIP] Add solve_qmd and solve_imd functions for calculations Clarify [Rs, Rr] time-sign semantics and restore correct QMD/IMD freedom for improper-operation inputs Mar 7, 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.

2 participants