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

feat(LinearAlgebra/CliffordAlgebra): construction from a basis #10660

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

Conversation

eric-wieser
Copy link
Member

@eric-wieser eric-wieser commented Feb 17, 2024

This is adapted from https://github.com/eric-wieser/lftcm2023-clifford_algebra, which only worked for the special case of Q = 0.


Open in Gitpod

@eric-wieser eric-wieser added WIP Work in progress awaiting-author A reviewer has asked the author a question or requested changes t-algebra Algebra (groups, rings, fields etc) labels Feb 17, 2024
Mathlib/LinearAlgebra/CliffordAlgebra/Basis.lean Outdated Show resolved Hide resolved
sorry

lemma single_mul_single_helper (i : ι) :
(mul_helper (Model.Index.single i) (Model.Index.single i)).2 = 0 := by

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
(mul_helper (Model.Index.single i) (Model.Index.single i)).2 = 0 := by
(mul_helper (Model.Index.single i) (Model.Index.single i)).2 = 0 := by

Mathlib/LinearAlgebra/CliffordAlgebra/Basis.lean Outdated Show resolved Hide resolved
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
mathlib-bors bot pushed a commit that referenced this pull request Mar 7, 2024
I suspect I will need some of these for #10660
Index.reverseRecOn nil concat (.concat l i h) = (concat l i h <| Index.reverseRecOn nil concat l) := by
simp [Index.reverseRecOn, Index.concat]
rw [List.reverseRecOn]
simp
Copy link

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
simp
simp?


open List in
def Index.mulOfLt (i : ι) (l : Model.Index ι) (h : ∀ j ∈ l.1, i < j) :
(Finsupp.supported _ R {i' | i'.1.erase i <+ l}).comap
Copy link

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
(Finsupp.supported _ R {i' | i'.1.erase i <+ l}).comap
(Finsupp.supported _ R {i' | i'.1.erase i <+ l}).comap

rw [LinearMap.map_mul_iff]
ext xi yi
dsimp [LinearMap.toSpanSingleton]
simp
Copy link

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
simp
simp?

toFun f := liftToFun B f.val f.property
invFun F := ⟨F ∘ₗ ofFreeVS B, by
intro m
simp
Copy link

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
simp
simp?

kbuzzard pushed a commit that referenced this pull request Mar 12, 2024
I suspect I will need some of these for #10660
| cons x xs =>
simp only [List.cons_append]
congr
dsimp only [←List.cons_append]

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
dsimp only [←List.cons_append]
dsimp only [← List.cons_append]


/-- (xX)Y = x(XY)-/
lemma Index.cons_mul (l₁ l₂ : Model.Index ι) (a : ι) (h) :
(l₁.cons a h).mul B l₂ =

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
(l₁.cons a h).mul B l₂ =
(l₁.cons a h).mul B l₂ =

| nil => simp
| cons is i h ih =>
rw [Index.cons_mul]
simp

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
simp
simp?


/-- (Xx)Y = X(xY)-/
lemma Index.concat_mul (l₁ l₂ : Model.Index ι) (a : ι) (h) :
(l₁.concat a h).mul B l₂ =

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
(l₁.concat a h).mul B l₂ =
(l₁.concat a h).mul B l₂ =

(l₁.concat a h).mul B l₂ =
(Model.ofFinsupp.symm (Index.singleMul B a l₂ : Model ι B)).sum fun ind val => val • l₁.mul B ind := by
rw [mul]
simp

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
simp
simp?

lemma Index.single_mul_single_same (i : ι) :
Model.Index.mul B (.single i) (.single i) = B i i • (1 : Model ι B) := by
rw [Model.Index.mul, single_eq_cons, recOn_cons, recOn_nil, ofFinsupp_symm_single,
Finsupp.sum_single_index, one_smul, ←single_eq_cons, singleMul_single_same]

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
Finsupp.sum_single_index, one_smul, ←single_eq_cons, singleMul_single_same]
Finsupp.sum_single_index, one_smul, ← single_eq_cons, singleMul_single_same]

erw [Model.Index.singleMul, Index.recOn]
rw [ltByCases, dif_pos hij, dif_neg hij.not_lt]
dsimp
rw [←Model.Index.singleMul]

Choose a reason for hiding this comment

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

[lint-style] reported by reviewdog 🐶

Suggested change
rw [←Model.Index.singleMul]
rw [← Model.Index.singleMul]

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. label Mar 19, 2024
dagurtomas pushed a commit that referenced this pull request Mar 22, 2024
I suspect I will need some of these for #10660
utensil pushed a commit that referenced this pull request Mar 26, 2024
I suspect I will need some of these for #10660
Louddy pushed a commit that referenced this pull request Apr 15, 2024
I suspect I will need some of these for #10660
callesonne pushed a commit that referenced this pull request Apr 22, 2024
I suspect I will need some of these for #10660
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting-author A reviewer has asked the author a question or requested changes merge-conflict The PR has a merge conflict with master, and needs manual merging. t-algebra Algebra (groups, rings, fields etc) WIP Work in progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants