Skip to content

Fixes #40134: correct signs in inner_product_matrix docstring #40184

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

local-ring
Copy link
Contributor

Fixes #40134. This PR corrects the explanatory text in the docstring of QuaternionAlgebra.inner_product_matrix.

The original docstring claimed that the inner product matrix has diagonal entries 2, 2a, 2b, 2ab in the standard basis $1, i, j, k$. However, this contradicts both the actual implementation and the mathematical definition of the inner product used in the code, which should be, instead, 2, -2a, -2b, 2ab.

This PR updates the docstring to reflect this, fixing the incorrect signs. All doctests in src/sage/algebras/quaternion_algebra.py pass.

📝 Checklist

  • The title is concise and informative.
  • The description explains in detail what this PR is about.
  • I have linked a relevant issue or discussion.
  • I have created tests covering the changes.
  • I have updated the documentation and checked the documentation preview.

⌛ Dependencies

Copy link
Collaborator

@tscrim tscrim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

vbraun pushed a commit to vbraun/sage that referenced this pull request Jun 8, 2025
sagemathgh-40184: Fixes sagemath#40134: correct signs in inner_product_matrix docstring
    
<!-- ^ Please provide a concise and informative title. -->
<!-- ^ Don't put issue numbers in the title, do this in the PR
description below. -->
<!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method
to calculate 1 + 2". -->
<!-- v Describe your changes below in detail. -->
<!-- v Why is this change required? What problem does it solve? -->
<!-- v If this PR resolves an open issue, please link to it here. For
example, "Fixes sagemath#12345". -->


Fixes [sagemath#40134](sagemath#40134). This PR
corrects the explanatory text in the docstring of
`QuaternionAlgebra.inner_product_matrix`.

The original docstring claimed that the inner product matrix has
diagonal entries `2`, `2a`, `2b`, `2ab` in the standard basis $1, i, j,
k$. However, this contradicts both the actual implementation and the
mathematical definition of the inner product used in the code, which
should be, instead, `2`, `-2a`, `-2b`, `2ab`.

This PR updates the docstring to reflect this, fixing the incorrect
signs. All doctests in `src/sage/algebras/quaternion_algebra.py` pass.

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->

- [x] The title is concise and informative.
- [x] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [x] I have updated the documentation and checked the documentation
preview.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on. For example,
-->
<!-- - sagemath#12345: short description why this is a dependency -->
<!-- - sagemath#34567: ... -->
    
URL: sagemath#40184
Reported by: Aolong Li
Reviewer(s): Travis Scrimshaw
vbraun pushed a commit to vbraun/sage that referenced this pull request Jun 9, 2025
sagemathgh-40184: Fixes sagemath#40134: correct signs in inner_product_matrix docstring
    
<!-- ^ Please provide a concise and informative title. -->
<!-- ^ Don't put issue numbers in the title, do this in the PR
description below. -->
<!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method
to calculate 1 + 2". -->
<!-- v Describe your changes below in detail. -->
<!-- v Why is this change required? What problem does it solve? -->
<!-- v If this PR resolves an open issue, please link to it here. For
example, "Fixes sagemath#12345". -->


Fixes [sagemath#40134](sagemath#40134). This PR
corrects the explanatory text in the docstring of
`QuaternionAlgebra.inner_product_matrix`.

The original docstring claimed that the inner product matrix has
diagonal entries `2`, `2a`, `2b`, `2ab` in the standard basis $1, i, j,
k$. However, this contradicts both the actual implementation and the
mathematical definition of the inner product used in the code, which
should be, instead, `2`, `-2a`, `-2b`, `2ab`.

This PR updates the docstring to reflect this, fixing the incorrect
signs. All doctests in `src/sage/algebras/quaternion_algebra.py` pass.

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->

- [x] The title is concise and informative.
- [x] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [x] I have updated the documentation and checked the documentation
preview.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on. For example,
-->
<!-- - sagemath#12345: short description why this is a dependency -->
<!-- - sagemath#34567: ... -->
    
URL: sagemath#40184
Reported by: Aolong Li
Reviewer(s): Travis Scrimshaw
vbraun pushed a commit to vbraun/sage that referenced this pull request Jun 9, 2025
sagemathgh-40184: Fixes sagemath#40134: correct signs in inner_product_matrix docstring
    
<!-- ^ Please provide a concise and informative title. -->
<!-- ^ Don't put issue numbers in the title, do this in the PR
description below. -->
<!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method
to calculate 1 + 2". -->
<!-- v Describe your changes below in detail. -->
<!-- v Why is this change required? What problem does it solve? -->
<!-- v If this PR resolves an open issue, please link to it here. For
example, "Fixes sagemath#12345". -->


Fixes [sagemath#40134](sagemath#40134). This PR
corrects the explanatory text in the docstring of
`QuaternionAlgebra.inner_product_matrix`.

The original docstring claimed that the inner product matrix has
diagonal entries `2`, `2a`, `2b`, `2ab` in the standard basis $1, i, j,
k$. However, this contradicts both the actual implementation and the
mathematical definition of the inner product used in the code, which
should be, instead, `2`, `-2a`, `-2b`, `2ab`.

This PR updates the docstring to reflect this, fixing the incorrect
signs. All doctests in `src/sage/algebras/quaternion_algebra.py` pass.

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->

- [x] The title is concise and informative.
- [x] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [x] I have updated the documentation and checked the documentation
preview.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on. For example,
-->
<!-- - sagemath#12345: short description why this is a dependency -->
<!-- - sagemath#34567: ... -->
    
URL: sagemath#40184
Reported by: Aolong Li
Reviewer(s): Travis Scrimshaw
vbraun pushed a commit to vbraun/sage that referenced this pull request Jun 9, 2025
sagemathgh-40184: Fixes sagemath#40134: correct signs in inner_product_matrix docstring
    
<!-- ^ Please provide a concise and informative title. -->
<!-- ^ Don't put issue numbers in the title, do this in the PR
description below. -->
<!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method
to calculate 1 + 2". -->
<!-- v Describe your changes below in detail. -->
<!-- v Why is this change required? What problem does it solve? -->
<!-- v If this PR resolves an open issue, please link to it here. For
example, "Fixes sagemath#12345". -->


Fixes [sagemath#40134](sagemath#40134). This PR
corrects the explanatory text in the docstring of
`QuaternionAlgebra.inner_product_matrix`.

The original docstring claimed that the inner product matrix has
diagonal entries `2`, `2a`, `2b`, `2ab` in the standard basis $1, i, j,
k$. However, this contradicts both the actual implementation and the
mathematical definition of the inner product used in the code, which
should be, instead, `2`, `-2a`, `-2b`, `2ab`.

This PR updates the docstring to reflect this, fixing the incorrect
signs. All doctests in `src/sage/algebras/quaternion_algebra.py` pass.

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->

- [x] The title is concise and informative.
- [x] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [x] I have updated the documentation and checked the documentation
preview.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on. For example,
-->
<!-- - sagemath#12345: short description why this is a dependency -->
<!-- - sagemath#34567: ... -->
    
URL: sagemath#40184
Reported by: Aolong Li
Reviewer(s): Travis Scrimshaw
@vbraun vbraun merged commit a2b0b26 into sagemath:develop Jun 14, 2025
13 of 22 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.

Quaternion algebra inner_product_matrix implementation does not match docstring
3 participants