Skip to content
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

Base change (and complexification) of quadratic forms #31

Open
wants to merge 24 commits into
base: master
Choose a base branch
from

Conversation

eric-wieser
Copy link
Member

@eric-wieser eric-wieser commented Jul 20, 2023

This is now fully covered by leanprover-community/mathlib4#6778

@eric-wieser eric-wieser temporarily deployed to documentation July 20, 2023 22:35 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation July 20, 2023 22:36 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation July 21, 2023 01:11 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation July 21, 2023 01:45 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation July 21, 2023 10:07 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation July 21, 2023 13:37 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation July 21, 2023 13:59 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation July 21, 2023 22:12 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation July 21, 2023 22:34 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation August 3, 2023 20:56 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation August 4, 2023 11:30 — with GitHub Actions Inactive
@eric-wieser eric-wieser temporarily deployed to documentation August 4, 2023 11:32 — with GitHub Actions Inactive
bors bot pushed a commit to leanprover-community/mathlib4 that referenced this pull request Aug 17, 2023
…ar forms (#6306)

This generalizes the existing `BilinForm.tensorDistrib` to be heterogenous in the rings it uses, such that a base change,
```lean
protected def baseChange (B : BilinForm R M₂) :
  BilinForm A (A ⊗[R] M₂) :=
```
falls out as a special case. I do not attempt to generalize `BilinForm.tensorDistribEquiv`.

Unfortunately, this changes the defeq as
```diff
-(B₁.tmul B₂) (m₁ ⊗ₜ m₂) (m₁' ⊗ₜ m₂') = B₁ m₁ m₁' * B₂ m₂ m₂'
+(B₁.tmul B₂) (m₁ ⊗ₜ m₂) (m₁' ⊗ₜ m₂') = B₂ m₂ m₂' • B₁ m₁ m₁'
```
We could fix this by using the right action instead, but that's a lot of work for a very minorly annoying defeq.

This also breaks the defeq of `tensorDistribEquiv B = tensorDistrib B`; though the reason is more complicated than the scalar action issue above. It would be fixed if we defined all the homogenous operations on tensor products as special cases of the heterogenous ones, but that's also a lot of work for a very small win.

This is a port of work from pygae/lean-ga#31, and almost at the end of the path to a base change of quadratic forms and clifford algebras.

This was independently developed at the Leiden workshop as [`BilinForm.baseChange`](https://github.com/alexjbest/ant-lorentz/blob/1f97add294b2d50f99537c15583666d78b0d7e24/AntLorentz/BaseChange.lean#L75-L85), though the results there are not sorry-free.
bors bot pushed a commit to leanprover-community/mathlib4 that referenced this pull request Aug 17, 2023
…ar forms (#6306)

This generalizes the existing `BilinForm.tensorDistrib` to be heterogenous in the rings it uses, such that a base change,
```lean
protected def baseChange (B : BilinForm R M₂) :
  BilinForm A (A ⊗[R] M₂) :=
```
falls out as a special case. I do not attempt to generalize `BilinForm.tensorDistribEquiv`.

Unfortunately, this changes the defeq as
```diff
-(B₁.tmul B₂) (m₁ ⊗ₜ m₂) (m₁' ⊗ₜ m₂') = B₁ m₁ m₁' * B₂ m₂ m₂'
+(B₁.tmul B₂) (m₁ ⊗ₜ m₂) (m₁' ⊗ₜ m₂') = B₂ m₂ m₂' • B₁ m₁ m₁'
```
We could fix this by using the right action instead, but that's a lot of work for a very minorly annoying defeq.

This also breaks the defeq of `tensorDistribEquiv B = tensorDistrib B`; though the reason is more complicated than the scalar action issue above. It would be fixed if we defined all the homogenous operations on tensor products as special cases of the heterogenous ones, but that's also a lot of work for a very small win.

This is a port of work from pygae/lean-ga#31, and almost at the end of the path to a base change of quadratic forms and clifford algebras.

This was independently developed at the Leiden workshop as [`BilinForm.baseChange`](https://github.com/alexjbest/ant-lorentz/blob/1f97add294b2d50f99537c15583666d78b0d7e24/AntLorentz/BaseChange.lean#L75-L85), though the results there are not sorry-free.
@eric-wieser eric-wieser temporarily deployed to documentation October 25, 2023 15:12 — with GitHub Actions Inactive
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