-
Notifications
You must be signed in to change notification settings - Fork 985
[Merged by Bors] - feat: Tannaka duality for finite groups #22176
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
Conversation
PR summary 8db35b4205Import changes for modified filesNo significant changes to the import graph Import changes for all files
|
Co-authored-by: smorel394 <[email protected]>
Co-authored-by: smorel394 <[email protected]>
Co-authored-by: Johan Commelin <[email protected]>
| lemma sumSMulInv_single_id [Fintype G] [DecidableEq G] {X : FDRep k G} (v : X) : | ||
| ∑ s : G, (single 1 1 : G → k) s • (X.ρ s⁻¹) v = v := by |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are you not using sumSMulInv for the LHS? And can you use Fintype.sum_eq_single in the proof?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because sumSMulInv is tagged simps. I just tried untagging it and it was slightly worse in my opinion.
| apply congrArg f | ||
| exact mul_assoc .. | ||
|
|
||
| lemma toRightFDRepComp_in_rightRegular [IsDomain k] (η : Aut (forget k G)) : |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note to myself: as commented in a previous PR, this works for an "indecomposable (commutative) semiring" k (a typeclass I'm about to introduce). TODO: allow Semiring in FDRep.
alreadydone
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks 🎉
maintainer delegate
| map_add' _ _ := by | ||
| simp [add_smul, sum_add_distrib] | ||
| map_smul' _ _ := by | ||
| simp [smul_sum, smul_smul] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| map_add' _ _ := by | |
| simp [add_smul, sum_add_distrib] | |
| map_smul' _ _ := by | |
| simp [smul_sum, smul_smul] | |
| map_add' _ _ := by simp [add_smul, sum_add_distrib] | |
| map_smul' _ _ := by simp [smul_sum, smul_smul] |
| have h1 := η₁.hom.hom.naturality (ofRightFDRep X v) | ||
| have h2 := η₂.hom.hom.naturality (ofRightFDRep X v) | ||
| rw [h, ← h2] at h1 | ||
| simpa using congr(Hom.hom $h1 (single 1 1)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| simpa using congr(Hom.hom $h1 (single 1 1)) | |
| simpa using congr(($h1).hom (single 1 1)) |
(untested, you might also try without the parentheses)
| _ = (η.hom.hom.app rightFDRep).hom (leftRegular t⁻¹ (single u 1)) 1 := | ||
| congrFun congr((Hom.hom $nat (single u 1))).symm 1 | ||
| _ = evalAlgHom _ _ s (leftRegular t⁻¹ (single u 1)) := | ||
| congr($hs ((leftRegular t⁻¹) (single u 1))) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| congr($hs ((leftRegular t⁻¹) (single u 1))) | |
| congr($hs (leftRegular t⁻¹ (single u 1))) |
| calc | ||
| _ = leftRegular t⁻¹ ((η.hom.hom.app rightFDRep).hom (single u 1)) 1 := by simp | ||
| _ = (η.hom.hom.app rightFDRep).hom (leftRegular t⁻¹ (single u 1)) 1 := | ||
| congrFun congr((Hom.hom $nat (single u 1))).symm 1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| congrFun congr((Hom.hom $nat (single u 1))).symm 1 | |
| congr(($nat.symm).hom (single u 1) 1) |
(untested)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For some reason this one doesn't work without congrFun. It was also the case when I was using apply_fun.
| _ = _ := by | ||
| by_cases u = t * s <;> simp_all [single_apply] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| _ = _ := by | |
| by_cases u = t * s <;> simp_all [single_apply] | |
| _ = _ := by by_cases u = t * s <;> simp_all [single_apply] |
alreadydone
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks 🎉
maintainer delegate
|
🚀 Pull request has been placed on the maintainer queue by alreadydone. |
|
🚀 Pull request has been placed on the maintainer queue by alreadydone. |
|
@riccardobrasca #23066 is just the first half of this PR. It was just split to make reviewing potentially easier. I removed the dependency. |
|
This PR/issue depends on:
|
|
Thanks! bors d+ |
|
✌️ ybenmeur can now approve this pull request. To approve and merge a pull request, simply reply with |
|
bors r+ |
Proves Tannaka duality for finite groups. - [x] depends on: #23065 Co-authored-by: Johan Commelin <[email protected]>
|
Pull request successfully merged into master. Build succeeded: |
Proves Tannaka duality for finite groups. - [x] depends on: #23065 Co-authored-by: Johan Commelin <[email protected]>
Proves Tannaka duality for finite groups. - [x] depends on: #23065 Co-authored-by: Johan Commelin <[email protected]>
Proves Tannaka duality for finite groups. - [x] depends on: #23065 Co-authored-by: Johan Commelin <[email protected]>
Proves Tannaka duality for finite groups.
eval_of_algHom#23065