Skip to content

Commit

Permalink
chore: get rid of the ForMathlib folder
Browse files Browse the repository at this point in the history
I was on my way to move `DomMulActMeasure` to under `HaarMeasure`, but then noticed the other file was easy to get rid of.

This will help with ImperialCollegeLondon#247.
  • Loading branch information
YaelDillies committed Dec 10, 2024
1 parent f7c20d3 commit 0624e5a
Show file tree
Hide file tree
Showing 12 changed files with 219 additions and 216 deletions.
17 changes: 11 additions & 6 deletions FLT/FLT_files.lean
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,30 @@ import FLT.Basic.Reductions
import FLT.DedekindDomain.FiniteAdeleRing.BaseChange
import FLT.DivisionAlgebra.Finiteness
import FLT.EllipticCurve.Torsion
import FLT.ForMathlib.DomMulActMeasure
import FLT.ForMathlib.MiscLemmas
import FLT.GaloisRepresentation.Cyclotomic
import FLT.GaloisRepresentation.HardlyRamified
import FLT.GlobalLanglandsConjectures.GLnDefs
import FLT.GlobalLanglandsConjectures.GLzero
import FLT.GroupScheme.FiniteFlat
import FLT.HIMExperiments.flatness
import FLT.HaarMeasure.DistribHaarChar
import FLT.HaarMeasure.DomMulActMeasure
import FLT.Hard.Results
import FLT.HIMExperiments.flatness
import FLT.Junk.Algebra
import FLT.Junk.Algebra2
import FLT.Mathlib.Algebra.Algebra.Subalgebra.Pi
import FLT.Mathlib.Algebra.BigOperators.Finprod
import FLT.Mathlib.Algebra.Module.Equiv.Defs
import FLT.Mathlib.Algebra.Module.LinearMap.Defs
import FLT.Mathlib.Algebra.Order.Hom.Monoid
import FLT.Mathlib.Algebra.Order.Monoid.Unbundled.TypeTags
import FLT.Mathlib.Data.ENNReal.Inv
import FLT.Mathlib.RingTheory.Norm.Defs
import FLT.Mathlib.Topology.Algebra.ContinuousAlgEquiv
import FLT.Mathlib.Topology.Algebra.Module.ModuleTopology
import FLT.Mathlib.Topology.Algebra.Monoid
import FLT.Mathlib.Topology.Constructions
import FLT.Mathlib.Topology.Homeomorph
import FLT.MathlibExperiments.Coalgebra.Monoid
import FLT.MathlibExperiments.Coalgebra.Sweedler
import FLT.MathlibExperiments.Coalgebra.TensorProduct
Expand All @@ -30,9 +38,6 @@ import FLT.MathlibExperiments.FrobeniusRiou
import FLT.MathlibExperiments.HopfAlgebra.Basic
import FLT.MathlibExperiments.IsCentralSimple
import FLT.MathlibExperiments.IsFrobenius
import FLT.Mathlib.RingTheory.Norm.Defs
import FLT.Mathlib.Topology.Algebra.ContinuousAlgEquiv
import FLT.Mathlib.Topology.Algebra.Module.ModuleTopology
import FLT.NumberField.AdeleRing
import FLT.NumberField.InfiniteAdeleRing
import FLT.NumberField.IsTotallyReal
Expand Down
176 changes: 0 additions & 176 deletions FLT/ForMathlib/MiscLemmas.lean

This file was deleted.

2 changes: 1 addition & 1 deletion FLT/HaarMeasure/DistribHaarChar.lean
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ Copyright (c) 2024 Andrew Yang, Yaël Dillies, Javier López-Contreras. All righ
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Andrew Yang, Yaël Dillies, Javier López-Contreras
-/
import FLT.HaarMeasure.DomMulActMeasure
import FLT.Mathlib.Data.ENNReal.Inv
import FLT.ForMathlib.DomMulActMeasure

/-!
# The distributive character of Haar measures
Expand Down
File renamed without changes.
20 changes: 20 additions & 0 deletions FLT/Mathlib/Algebra/BigOperators/Finprod.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import Mathlib.Algebra.BigOperators.Finprod
import Mathlib.Algebra.BigOperators.Pi

@[to_additive]
lemma finprod_option {ι : Type*} {B : Type*} [Finite ι] [CommMonoid B] (φ : Option ι → B) :
(∏ᶠ oi, φ oi) = φ none * ∏ᶠ (j : ι), φ (some j) := by
rw [← finprod_mem_univ]
convert finprod_mem_insert φ (show none ∉ Set.range Option.some by aesop)
(Set.finite_range some)
· exact (Set.insert_none_range_some ι).symm
· rw [finprod_mem_range]
exact Option.some_injective ι

@[to_additive]
lemma finprod_apply {α ι N : Type*} [CommMonoid N] [Finite ι] (f : ι → α → N) (a : α) :
(∏ᶠ i, f i) a = ∏ᶠ i, (f i) a := by
classical
simp only [finprod_def, dif_pos (Set.toFinite _), Finset.prod_apply]
symm
apply Finset.prod_subset <;> aesop
21 changes: 21 additions & 0 deletions FLT/Mathlib/Algebra/Module/Equiv/Defs.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import Mathlib.Algebra.Module.Equiv.Defs
import Mathlib.Algebra.Module.Pi
import Mathlib.Algebra.Module.Prod

variable (R : Type*) [Semiring R] in
def LinearEquiv.sumPiEquivProdPi (S T : Type*) (A : S ⊕ T → Type*)
[∀ st, AddCommMonoid (A st)] [∀ st, Module R (A st)] :
(∀ (st : S ⊕ T), A st) ≃ₗ[R] (∀ (s : S), A (.inl s)) × (∀ (t : T), A (.inr t)) where
__ := Equiv.sumPiEquivProdPi _
map_add' _ _ := rfl
map_smul' _ _ := rfl

variable (R : Type*) [Semiring R] in
def LinearEquiv.pUnitPiEquiv (f : PUnit → Type*) [∀ x, AddCommMonoid (f x)] [∀ x, Module R (f x)] :
((t : PUnit) → (f t)) ≃ₗ[R] f () where
toFun a := a ()
invFun a _t := a
left_inv _ := rfl
right_inv _ := rfl
map_add' _ _ := rfl
map_smul' _ _ := rfl
15 changes: 15 additions & 0 deletions FLT/Mathlib/Algebra/Module/LinearMap/Defs.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import Mathlib.Algebra.Module.LinearMap.Defs
import Mathlib.Data.Fintype.Option
import FLT.Mathlib.Algebra.BigOperators.Finprod

theorem LinearMap.finsum_apply {R : Type*} [Semiring R] {A B : Type*} [AddCommMonoid A] [Module R A]
[AddCommMonoid B] [Module R B] {ι : Type*} [Finite ι] (φ : ∀ _ : ι, A →ₗ[R] B) (a : A) :
(∑ᶠ i, φ i) a = ∑ᶠ i, φ i a := by
induction ι using Finite.induction_empty_option
· case of_equiv X Y e hx =>
convert hx (φ ∘ e)
· exact (finsum_comp_equiv e).symm
· exact (finsum_comp_equiv e).symm
· simp [finsum_of_isEmpty]
· case h_option X _ hX =>
simp [finsum_option, hX]
30 changes: 30 additions & 0 deletions FLT/Mathlib/Topology/Algebra/Module/Basic.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import Mathlib.Topology.Algebra.Module.Basic
import FLT.Mathlib.Algebra.Module.Equiv.Defs
import FLT.Mathlib.Topology.Homeomorph

def ContinuousLinearEquiv.piCongrLeft (R : Type*) [Semiring R] {ι ι' : Type*}
(φ : ι → Type*) [∀ i, AddCommMonoid (φ i)] [∀ i, Module R (φ i)]
[∀ i, TopologicalSpace (φ i)]
(e : ι' ≃ ι) : ((i' : ι') → φ (e i')) ≃L[R] (i : ι) → φ i where
__ := Homeomorph.piCongrLeft e
__ := LinearEquiv.piCongrLeft R φ e


section Pi

variable {R : Type*} [τR : TopologicalSpace R] [Semiring R] [TopologicalSemiring R]

variable {ι : Type*} [Finite ι] {A : ι → Type*} [∀ i, AddCommMonoid (A i)]
[∀ i, Module R (A i)] [∀ i, TopologicalSpace (A i)]
def ContinuousLinearEquiv.sumPiEquivProdPi (R : Type*) [Semiring R] (S T : Type*)
(A : S ⊕ T → Type*) [∀ st, AddCommMonoid (A st)] [∀ st, Module R (A st)]
[∀ st, TopologicalSpace (A st)] :
((st : S ⊕ T) → A st) ≃L[R] ((s : S) → A (Sum.inl s)) × ((t : T) → A (Sum.inr t)) where
__ := LinearEquiv.sumPiEquivProdPi R S T A
__ := Homeomorph.sumPiEquivProdPi S T A

def ContinuousLinearEquiv.pUnitPiEquiv (R : Type*) [Semiring R] (f : PUnit → Type*)
[∀ x, AddCommMonoid (f x)] [∀ x, Module R (f x)] [∀ x, TopologicalSpace (f x)] :
((t : PUnit) → f t) ≃L[R] f () where
__ := LinearEquiv.pUnitPiEquiv R f
__ := Homeomorph.pUnitPiEquiv f
Loading

0 comments on commit 0624e5a

Please sign in to comment.