Skip to content

[Merged by Bors] - feat(LinearAlgebra/PiTensorProduct): add basis for PiTensorProduct and map for the tensor product of dual space#32613

Closed
morrison-daniel wants to merge 106 commits intoleanprover-community:masterfrom
morrison-daniel:pitensor
Closed

[Merged by Bors] - feat(LinearAlgebra/PiTensorProduct): add basis for PiTensorProduct and map for the tensor product of dual space#32613
morrison-daniel wants to merge 106 commits intoleanprover-community:masterfrom
morrison-daniel:pitensor

Conversation

@morrison-daniel
Copy link
Copy Markdown
Collaborator

@morrison-daniel morrison-daniel commented Dec 9, 2025

Constructs a basis for PiTensorProduct given bases for the component spaces and defines maps between the tensor product of dual spaces and the dual of a tensor product.

Main definitions:

  • Basis.piTensorProduct: Given bases b : Π i, Basis (κ i) R (M i) for each component space M i, constructs a basis for ⨂[R] i, M i indexed by Π i, κ i defined by sending p : Π i, κ i to ⨂ₜ[R] i, (b i) (p i).

  • PiTensorProduct.dualDistrib: The canonical linear map from ⨂[R] i, Dual R (M i) to
    Dual R (⨂[R] i, M i), sending ⨂ₜ[R] i, f i to the composition of
    PiTensorProduct.map f with the linear equivalence ⨂[R] i, R →ₗ R given by multiplication.

  • PiTensorProduct.dualDistribEquiv: A linear equivalence between ⨂[R] i, Dual R (M i)
    and Dual R (⨂[R] i, M i) when all M i are finite free modules. If
    f : (i : ι) → Dual R (M i), then this equivalence sends ⨂ₜ[R] i, f i to the composition of
    PiTensorProduct.map f with the natural isomorphism ⨂[R] i, R ≃ R given by multiplication.


Open in Gitpod

morel and others added 30 commits March 4, 2024 17:45
Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
…community/mathlib4 into SM.PiTensorProduct.DirectSum
…community/mathlib4 into SM.PiTensorProduct.DirectSum
Co-authored-by: Eric Wieser <efw@google.com>
Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com>
@github-actions github-actions bot added new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-algebra Algebra (groups, rings, fields, etc) labels Dec 9, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Dec 9, 2025

PR summary ef704c53bf

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.LinearAlgebra.PiTensorProduct.Basis (new file) 846
Mathlib.LinearAlgebra.PiTensorProduct.Dual (new file) 944

Declarations diff

+ Basis.piTensorProduct
+ Basis.piTensorProduct_apply
+ Basis.piTensorProduct_repr_tprod_apply
+ dualDistrib
+ dualDistribEquiv
+ dualDistribEquivOfBasis
+ dualDistribInvOfBasis
+ dualDistribInvOfBasis_apply
+ dualDistrib_apply
+ dualDistrib_dualDistribInvOfBasis_left_inverse
+ dualDistrib_dualDistribInvOfBasis_right_inverse

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@mathlib4-dependent-issues-bot
Copy link
Copy Markdown
Collaborator

@morrison-daniel morrison-daniel marked this pull request as ready for review December 9, 2025 04:39
@ocfnash ocfnash self-assigned this Dec 9, 2025
Copy link
Copy Markdown
Contributor

@ocfnash ocfnash left a comment

Choose a reason for hiding this comment

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

Excellent work, thanks!

bors merge

mathlib-bors bot pushed a commit that referenced this pull request Dec 10, 2025
…and map for the tensor product of dual space (#32613)

Constructs a basis for `PiTensorProduct` given bases for the component spaces and defines maps between the tensor product of dual spaces and the dual of a tensor product.

Main definitions:
* `Basis.piTensorProduct`: Given bases `b : Π i, Basis (κ i) R (M i)` for each component space `M i`, constructs a basis for `⨂[R] i, M i` indexed by `Π i, κ i` defined by sending `p : Π i, κ i` to `⨂ₜ[R] i, (b i) (p i)`.

* `PiTensorProduct.dualDistrib`: The canonical linear map from `⨂[R] i, Dual R (M i)` to
  `Dual R (⨂[R] i, M i)`, sending `⨂ₜ[R] i, f i` to the composition of
  `PiTensorProduct.map f` with the linear equivalence `⨂[R] i, R →ₗ R` given by multiplication.

* `PiTensorProduct.dualDistribEquiv`: A linear equivalence between `⨂[R] i, Dual R (M i)`
  and `Dual R (⨂[R] i, M i)` when all `M i` are finite free modules. If
  `f : (i : ι) → Dual R (M i)`, then this equivalence sends `⨂ₜ[R] i, f i` to the composition of
  `PiTensorProduct.map f` with the natural isomorphism `⨂[R] i, R ≃ R` given by multiplication.

- [x] depends on: #32456
@ghost ghost added the ready-to-merge This PR has been sent to bors. label Dec 10, 2025
@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Dec 10, 2025

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(LinearAlgebra/PiTensorProduct): add basis for PiTensorProduct and map for the tensor product of dual space [Merged by Bors] - feat(LinearAlgebra/PiTensorProduct): add basis for PiTensorProduct and map for the tensor product of dual space Dec 10, 2025
@mathlib-bors mathlib-bors bot closed this Dec 10, 2025
@morrison-daniel morrison-daniel deleted the pitensor branch December 10, 2025 16:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! ready-to-merge This PR has been sent to bors. t-algebra Algebra (groups, rings, fields, etc)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants