Skip to content

[Merged by Bors] - refactor(LinearAlgebra/BilinForm): Remove structure BilinForm from Mathlib, migrate all of _root_.BilinForm to LinearMap.BilinForm #11278

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

Closed
wants to merge 50 commits into from
Closed
Show file tree
Hide file tree
Changes from 25 commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
4244c22
WIP: require `BilinearForm` to be over a commutative ring
Vierkantor Feb 27, 2024
65cbe49
Convert LinearAlgebra/BilinearForm/Basic
mans0954 Mar 8, 2024
5b58565
Convert LinearAlgebra/BilinearForm/Hom
mans0954 Mar 9, 2024
bb2186e
Convert Mathlib/LinearAlgebra/BilinearForm/Properties.lean
mans0954 Mar 10, 2024
a3a393a
Convert LinearAlgebra/BilinearForm/DualLattice
mans0954 Mar 10, 2024
991ecb0
Convert LinearAlgebra/BilinearForm/Orthogonal
mans0954 Mar 10, 2024
bf6b34a
Convert LinearAlgebra/Matrix/BilinearForm
mans0954 Mar 10, 2024
e5df9a1
Fix Ring Theory
mans0954 Mar 10, 2024
c4d41fb
Lint
mans0954 Mar 10, 2024
148413f
Lint
mans0954 Mar 10, 2024
53f935b
Merge branch 'master' into bilinear-form-commutative
mans0954 Mar 10, 2024
d8132a8
Merge branch 'bilinear-form-commutative' into mans0954/BilinForm-Basic
mans0954 Mar 10, 2024
eb7b853
Merge branch 'master' into mans0954/BilinForm-Basic
mans0954 Mar 19, 2024
0fa0483
Fix
mans0954 Mar 19, 2024
464f0d6
De-simp lemmas
mans0954 Mar 20, 2024
1af2118
Remove unused args
mans0954 Mar 20, 2024
090f7bf
Docs
mans0954 Mar 20, 2024
ead42f1
Update doc
mans0954 Mar 20, 2024
af4dc2c
Fix
mans0954 Mar 20, 2024
4e43ac7
Tidy up BilinearForm/Basic
mans0954 Mar 22, 2024
367556a
Further tidy BilinearForm/Basic
mans0954 Mar 22, 2024
0f20675
Remove empty line
mans0954 Mar 22, 2024
7bc7802
Tidy up BilinearForm/Hom
mans0954 Mar 22, 2024
f3e099a
Remove unused vars
mans0954 Mar 22, 2024
d7dbf17
Tidy up BilinearForm/Properties
mans0954 Mar 23, 2024
8d7ebc6
Update Mathlib/LinearAlgebra/BilinearForm/Properties.lean
mans0954 Mar 23, 2024
461f7a4
Update Mathlib/LinearAlgebra/BilinearForm/Properties.lean
mans0954 Mar 23, 2024
2914cc1
Update Mathlib/LinearAlgebra/BilinearForm/Properties.lean
mans0954 Mar 23, 2024
7eb67ea
Merge branch 'master' into mans0954/BilinForm-Basic
mans0954 Mar 23, 2024
9ba2354
Simplify toLinHomAux
mans0954 Mar 24, 2024
3b27f2a
Don't use toLinHomAux₁
mans0954 Mar 24, 2024
b5296a8
remove toFun
eric-wieser Mar 24, 2024
2591e95
further golf
eric-wieser Mar 24, 2024
c72555f
Use ext₂
mans0954 Mar 24, 2024
0dc92f4
Use ext₂
mans0954 Mar 24, 2024
458fc06
Export BilinForm
mans0954 Mar 24, 2024
daf880e
Remove toFun
mans0954 Mar 24, 2024
b9f153c
Add ToDo
mans0954 Mar 24, 2024
91ba886
Remove check
mans0954 Mar 24, 2024
01adf50
compBilinForm
mans0954 Mar 24, 2024
eccb575
Remove instance
mans0954 Mar 24, 2024
fbd23fe
Remove smul lemmas
mans0954 Mar 24, 2024
ba4b0a0
Use existing instances
mans0954 Mar 24, 2024
2c090e6
noalign smul lemmas
mans0954 Mar 25, 2024
6baf99e
inferInstance
mans0954 Mar 25, 2024
4051831
noalign bilin_form.coe_fn_mk
mans0954 Mar 25, 2024
7c2724e
Merge branch 'master' into mans0954/BilinForm-Basic
mans0954 Mar 29, 2024
af41d08
Update Mathlib/LinearAlgebra/BilinearForm/Hom.lean
mans0954 Apr 8, 2024
ff2c199
Update Mathlib/LinearAlgebra/BilinearForm/Hom.lean
mans0954 Apr 8, 2024
c7abc44
Merge branch 'master' into mans0954/BilinForm-Basic
mans0954 Apr 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
209 changes: 73 additions & 136 deletions Mathlib/LinearAlgebra/BilinearForm/Basic.lean

Large diffs are not rendered by default.

14 changes: 10 additions & 4 deletions Mathlib/LinearAlgebra/BilinearForm/DualLattice.lean
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,13 @@ import Mathlib.LinearAlgebra.BilinearForm.Properties
Properly develop the material in the context of lattices.
-/

open LinearMap (BilinForm)

variable {R S M} [CommRing R] [Field S] [AddCommGroup M]
variable [Algebra R S] [Module R M] [Module S M] [IsScalarTower R S M]

namespace LinearMap

namespace BilinForm

variable (B : BilinForm S M)
Expand All @@ -31,7 +35,8 @@ def dualSubmodule (N : Submodule R M) : Submodule R M where
zero_mem' y _ := by rw [B.zero_left]; exact zero_mem _
smul_mem' r a ha y hy := by
convert (1 : Submodule R S).smul_mem r (ha y hy)
rw [← IsScalarTower.algebraMap_smul S r a, bilin_smul_left, Algebra.smul_def]
rw [← IsScalarTower.algebraMap_smul S r a]
simp only [algebraMap_smul, map_smul_of_tower, LinearMap.smul_apply]

lemma mem_dualSubmodule {N : Submodule R M} {x} :
x ∈ B.dualSubmodule N ↔ ∀ y ∈ N, B x y ∈ (1 : Submodule R S) := Iff.rfl
Expand Down Expand Up @@ -96,11 +101,12 @@ lemma dualSubmodule_span_of_basis {ι} [Finite ι] [DecidableEq ι]
· rw [Submodule.span_le]
rintro _ ⟨i, rfl⟩ y hy
obtain ⟨f, rfl⟩ := (mem_span_range_iff_exists_fun _).mp hy
simp only [sum_right, bilin_smul_right]
simp only [map_sum, map_smul]
apply sum_mem
rintro j -
rw [← IsScalarTower.algebraMap_smul S (f j), B.bilin_smul_right, apply_dualBasis_left,
mul_ite, mul_one, mul_zero, ← (algebraMap R S).map_zero, ← apply_ite]
rw [← IsScalarTower.algebraMap_smul S (f j), map_smul]
simp_rw [apply_dualBasis_left]
rw [smul_eq_mul, mul_ite, mul_one, mul_zero, ← (algebraMap R S).map_zero, ← apply_ite]
exact ⟨_, rfl⟩

lemma dualSubmodule_dualSubmodule_flip_of_basis {ι : Type*} [Finite ι]
Expand Down
Loading