Skip to content

Correct the A.4.33 versor identity test - #27

Open
utiberious wants to merge 1 commit into
pygae:masterfrom
utiberious:utiberious/fix-a433-versor-identity
Open

Correct the A.4.33 versor identity test#27
utiberious wants to merge 1 commit into
pygae:masterfrom
utiberious:utiberious/fix-a433-versor-identity

Conversation

@utiberious

Copy link
Copy Markdown

Closes #14.

Appendix A.4.33 of arXiv:1205.5935 states

(A B ~A) ∧ (A C ~A) = (A ⊛ A) A (B ∧ C) ~A.

For a versor A, ~A is reversion and A ⊛ A is the signed scalar product. The commented test used the Clifford conjugate and the unsigned magnitude norm()^2, so it did not encode the paper's identity.

The new test uses small, concrete witnesses in Cl2 and , the one-generator negative-signature algebra. Their values of A ⊛ A are +1 and -1, respectively. Each case first checks that the left-hand side is nonzero, preventing a vacuous pass, and then checks the identity.

PR #19 records the original expression as @test_broken. This patch addresses the same gap by correcting the expression and adding passing, sign-sensitive coverage.

Mutation checks performed during verification:

  • replacing ~A with fails both witnesses
  • doubling the right-hand side fails both witnesses
  • replacing A ⊛ A with the unsigned norm fails the negative-signature witness

Verification with Julia 1.10.11 and Python galgebra==0.6.0:

  • focused A.4.33 test: 4 passed
  • full suite: 1,335 passed, 1 pre-existing A.4.35 broken, 1,336 total

No dependency or version changes are included.

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.

Fix broken test A.4.33

1 participant