forked from ImperialCollegeLondon/FLT
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' of https://github.com/smmercuri/FLT
- Loading branch information
Showing
51 changed files
with
1,981 additions
and
3,150 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
version: 2 # Specifies the version of the Dependabot configuration file format | ||
|
||
updates: | ||
# Configuration for dependency updates | ||
- package-ecosystem: "github-actions" # Specifies the ecosystem to check for updates | ||
directory: "/" # Specifies the directory to check for dependencies; "/" means the root directory | ||
schedule: | ||
# Check for updates to GitHub Actions every month | ||
interval: "monthly" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
import FLT.Deformations.RepresentationTheory.Subrepresentation | ||
import FLT.Mathlib.RepresentationTheory.Basic | ||
|
||
namespace Representation | ||
|
||
variable {G : Type*} [Group G] | ||
|
||
variable {k : Type*} [Field k] | ||
|
||
variable {W : Type*} [AddCommMonoid W] [Module k W] | ||
|
||
/-! | ||
`IsIrreducible ρ` is the statement that a given Representation ρ is irreducible (also known as simple), | ||
meaning that any subrepresentation must be either the full one (⊤) or zero (⊥) | ||
This notion is only well behaved when the representation is over a field k. If it were defined over | ||
a ring A with a nontrivial ideal J, the subrepresentation JW would often be a non trivial subrepresentation, | ||
so ρ would rarely be irreducible. | ||
-/ | ||
class IsIrreducible (ρ : Representation k G W) : Prop where | ||
irreducible : IsSimpleOrder (Subrepresentation ρ) | ||
|
||
/-! | ||
`IsAbsolutelyIrreducible ρ` states that a given Representation ρ over a field k | ||
is absolutely irreducible, meaning that all the possible base change extensions are irreducible. | ||
-/ | ||
class IsAbsolutelyIrreducible (ρ : Representation k G W) : Prop where | ||
absolutelyIrreducible : ∀ k', ∀ _ : Field k', ∀ _ : Algebra k k', IsIrreducible (k' ⊗ᵣ' ρ) | ||
|
||
end Representation |
74 changes: 74 additions & 0 deletions
74
FLT/Deformations/RepresentationTheory/Subrepresentation.lean
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
import Mathlib.RepresentationTheory.Basic | ||
import FLT.Mathlib.LinearAlgebra.Span.Defs | ||
|
||
open Pointwise | ||
|
||
universe u | ||
|
||
variable {A : Type*} [CommRing A] | ||
|
||
variable {G : Type*} [Group G] | ||
|
||
variable {W : Type*} [AddCommMonoid W] [Module A W] | ||
|
||
variable {ρ : Representation A G W} | ||
|
||
variable (ρ) in | ||
structure Subrepresentation where | ||
toSubmodule : Submodule A W | ||
apply_mem_toSubmodule (g : G) ⦃v : W⦄ : v ∈ toSubmodule → ρ g v ∈ toSubmodule | ||
|
||
namespace Subrepresentation | ||
|
||
lemma toSubmodule_injective : Function.Injective (toSubmodule : Subrepresentation ρ → Submodule A W) := by | ||
rintro ⟨_,_⟩ | ||
congr! | ||
|
||
instance : SetLike (Subrepresentation ρ) W where | ||
coe ρ' := ρ'.toSubmodule | ||
coe_injective' := SetLike.coe_injective.comp toSubmodule_injective | ||
|
||
def toRepresentation (ρ' : Subrepresentation ρ): Representation A G ρ'.toSubmodule where | ||
toFun g := (ρ g).restrict (ρ'.apply_mem_toSubmodule g) | ||
map_one' := by ext; simp | ||
map_mul' x y := by ext; simp | ||
|
||
instance : Max (Subrepresentation ρ) where | ||
max ρ₁ ρ₂ := .mk (ρ₁.toSubmodule ⊔ ρ₂.toSubmodule) <| by | ||
simp only [Submodule.forall_mem_sup, map_add] | ||
intro g x₁ hx₁ x₂ hx₂ | ||
exact Submodule.mem_sup.mpr | ||
⟨ρ g x₁, ρ₁.apply_mem_toSubmodule g hx₁, ρ g x₂, ρ₂.apply_mem_toSubmodule g hx₂, rfl⟩ | ||
|
||
instance : Min (Subrepresentation ρ) where | ||
min ρ₁ ρ₂ := .mk (ρ₁.toSubmodule ⊓ ρ₂.toSubmodule) <| by | ||
simp only [Submodule.mem_inf, and_imp] | ||
rintro g x hx₁ hx₂ | ||
exact ⟨ρ₁.apply_mem_toSubmodule g hx₁, ρ₂.apply_mem_toSubmodule g hx₂⟩ | ||
|
||
|
||
@[simp, norm_cast] | ||
lemma coe_sup (ρ₁ ρ₂ : Subrepresentation ρ) : ↑(ρ₁ ⊔ ρ₂) = (ρ₁ : Set W) + (ρ₂ : Set W) := | ||
Submodule.coe_sup ρ₁.toSubmodule ρ₂.toSubmodule | ||
|
||
@[simp, norm_cast] | ||
lemma coe_inf (ρ₁ ρ₂ : Subrepresentation ρ) : ↑(ρ₁ ⊓ ρ₂) = (ρ₁ ∩ ρ₂ : Set W) := rfl | ||
|
||
@[simp] | ||
lemma toSubmodule_sup (ρ₁ ρ₂ : Subrepresentation ρ) : | ||
(ρ₁ ⊔ ρ₂).toSubmodule = ρ₁.toSubmodule ⊔ ρ₂.toSubmodule := rfl | ||
|
||
@[simp] | ||
lemma toSubmodule_inf (ρ₁ ρ₂ : Subrepresentation ρ) : | ||
(ρ₁ ⊓ ρ₂).toSubmodule = ρ₁.toSubmodule ⊓ ρ₂.toSubmodule := rfl | ||
|
||
instance : Lattice (Subrepresentation ρ) := | ||
toSubmodule_injective.lattice _ toSubmodule_sup toSubmodule_inf | ||
|
||
instance : BoundedOrder (Subrepresentation ρ) where | ||
top := ⟨⊤, by simp⟩ | ||
le_top _ _ := by simp | ||
bot := ⟨⊥, by simp⟩ | ||
bot_le _ _ := by simp +contextual | ||
|
||
end Subrepresentation |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.