Skip to content

Commit ab9976d

Browse files
author
mathlib4-bot
committed
Merge remote-tracking branch 'origin/master' into bump/v4.22.0
2 parents 7e33fba + d9d3b4c commit ab9976d

File tree

41 files changed

+933
-325
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+933
-325
lines changed

Mathlib.lean

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2353,6 +2353,7 @@ import Mathlib.CategoryTheory.Monad.Limits
23532353
import Mathlib.CategoryTheory.Monad.Monadicity
23542354
import Mathlib.CategoryTheory.Monad.Products
23552355
import Mathlib.CategoryTheory.Monad.Types
2356+
import Mathlib.CategoryTheory.Monoidal.Action.Basic
23562357
import Mathlib.CategoryTheory.Monoidal.Bimod
23572358
import Mathlib.CategoryTheory.Monoidal.Bimon_
23582359
import Mathlib.CategoryTheory.Monoidal.Braided.Basic
@@ -5033,11 +5034,17 @@ import Mathlib.RepresentationTheory.Coinduced
50335034
import Mathlib.RepresentationTheory.Coinvariants
50345035
import Mathlib.RepresentationTheory.FDRep
50355036
import Mathlib.RepresentationTheory.FiniteIndex
5037+
import Mathlib.RepresentationTheory.GroupCohomology.Basic
5038+
import Mathlib.RepresentationTheory.GroupCohomology.Functoriality
5039+
import Mathlib.RepresentationTheory.GroupCohomology.Hilbert90
5040+
import Mathlib.RepresentationTheory.GroupCohomology.LowDegree
5041+
import Mathlib.RepresentationTheory.GroupCohomology.Resolution
50365042
import Mathlib.RepresentationTheory.Homological.GroupCohomology.Basic
50375043
import Mathlib.RepresentationTheory.Homological.GroupCohomology.Functoriality
50385044
import Mathlib.RepresentationTheory.Homological.GroupCohomology.Hilbert90
50395045
import Mathlib.RepresentationTheory.Homological.GroupCohomology.LowDegree
50405046
import Mathlib.RepresentationTheory.Homological.GroupHomology.Basic
5047+
import Mathlib.RepresentationTheory.Homological.GroupHomology.Functoriality
50415048
import Mathlib.RepresentationTheory.Homological.Resolution
50425049
import Mathlib.RepresentationTheory.Induced
50435050
import Mathlib.RepresentationTheory.Invariants

Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@ Authors: Jujian Zhang
66
import Mathlib.Algebra.Category.ModuleCat.EpiMono
77
import Mathlib.Algebra.Category.ModuleCat.Colimits
88
import Mathlib.Algebra.Category.ModuleCat.Limits
9-
import Mathlib.RingTheory.TensorProduct.Basic
9+
import Mathlib.Algebra.Algebra.RestrictScalars
1010
import Mathlib.CategoryTheory.Adjunction.Mates
1111
import Mathlib.CategoryTheory.Linear.LinearFunctor
12+
import Mathlib.LinearAlgebra.TensorProduct.Tower
1213

1314
/-!
1415
# Change Of Rings

Mathlib/Algebra/Lie/BaseChange.lean

Lines changed: 11 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ Authors: Oliver Nash
55
-/
66
import Mathlib.Algebra.Algebra.RestrictScalars
77
import Mathlib.Algebra.Lie.TensorProduct
8-
import Mathlib.LinearAlgebra.TensorProduct.Tower
9-
import Mathlib.RingTheory.TensorProduct.Basic
108

119
/-!
1210
# Extension and restriction of scalars for Lie algebras and Lie modules
@@ -165,16 +163,14 @@ def baseChange : LieSubmodule A (A ⊗[R] L) (A ⊗[R] M) :=
165163
{ (N : Submodule R M).baseChange A with
166164
lie_mem := by
167165
intro x m hm
168-
simp only [AddSubsemigroup.mem_carrier, AddSubmonoid.mem_toSubsemigroup,
169-
Submodule.mem_toAddSubmonoid] at hm
166+
rw [Submodule.mem_carrier, SetLike.mem_coe] at hm ⊢
167+
rw [Submodule.baseChange_eq_span] at hm
170168
obtain ⟨c, rfl⟩ := (Finsupp.mem_span_iff_linearCombination _ _ _).mp hm
171169
refine x.induction_on (by simp) (fun a y ↦ ?_) (fun y z hy hz ↦ ?_)
172170
· change toEnd A (A ⊗[R] L) (A ⊗[R] M) _ _ ∈ _
173171
simp_rw [Finsupp.linearCombination_apply, Finsupp.sum, map_sum, map_smul, toEnd_apply_apply]
174-
suffices ∀ n : (N : Submodule R M).map (TensorProduct.mk R A M 1),
175-
⁅a ⊗ₜ[R] y, (n : A ⊗[R] M)⁆ ∈ (N : Submodule R M).baseChange A by
176-
exact Submodule.sum_mem _ fun n _ ↦ Submodule.smul_mem _ _ (this n)
177-
rintro ⟨-, ⟨n : M, hn : n ∈ N, rfl⟩⟩
172+
refine Submodule.sum_mem _ fun ⟨_, n, hn, h⟩ _ ↦ Submodule.smul_mem _ _ ?_
173+
rw [Subtype.coe_mk, ← h]
178174
exact Submodule.tmul_mem_baseChange_of_mem _ (N.lie_mem hn)
179175
· rw [add_lie]
180176
exact ((N : Submodule R M).baseChange A).add_mem hy hz }
@@ -193,8 +189,8 @@ lemma tmul_mem_baseChange_of_mem (a : A) {m : M} (hm : m ∈ N) :
193189

194190
lemma mem_baseChange_iff {m : A ⊗[R] M} :
195191
m ∈ N.baseChange A ↔
196-
m ∈ Submodule.span A ((N : Submodule R M).map (TensorProduct.mk R A M 1)) :=
197-
Iff.rfl
192+
m ∈ Submodule.span A ((N : Submodule R M).map (TensorProduct.mk R A M 1)) := by
193+
rw [← Submodule.baseChange_eq_span]; rfl
198194

199195
@[simp]
200196
lemma baseChange_bot : (⊥ : LieSubmodule R L M).baseChange A = ⊥ := by
@@ -219,30 +215,11 @@ lemma lie_baseChange {I : LieIdeal R L} {N : LieSubmodule R L M} :
219215
exact ⟨1 ⊗ₜ x, tmul_mem_baseChange_of_mem 1 hx,
220216
1 ⊗ₜ m, tmul_mem_baseChange_of_mem 1 hm, by simp⟩
221217
· rintro - ⟨x, hx, m, hm, rfl⟩
222-
revert m
223-
apply Submodule.span_induction
224-
(p := fun x' _ ↦ ∀ m' ∈ N.baseChange A, ⁅x', m'⁆ ∈ Submodule.span A s) (hx := hx)
225-
· rintro _ ⟨y : L, hy : y ∈ I, rfl⟩ m hm
226-
apply Submodule.span_induction
227-
(p := fun m' _ ↦ ⁅(1 : A) ⊗ₜ[R] y, m'⁆ ∈ Submodule.span A s) (hx := hm)
228-
· rintro - ⟨m', hm' : m' ∈ N, rfl⟩
229-
rw [TensorProduct.mk_apply, LieAlgebra.ExtendScalars.bracket_tmul, mul_one]
230-
apply Submodule.subset_span
231-
exact ⟨y, hy, m', hm', rfl⟩
232-
· simp
233-
· intro u v _ _ hu hv
234-
rw [lie_add]
235-
exact Submodule.add_mem _ hu hv
236-
· intro a u _ hu
237-
rw [lie_smul]
238-
exact Submodule.smul_mem _ a hu
239-
· simp
240-
· intro x y _ _ hx hy m' hm'
241-
rw [add_lie]
242-
exact Submodule.add_mem _ (hx _ hm') (hy _ hm')
243-
· intro a x _ hx m' hm'
244-
rw [smul_lie]
245-
exact Submodule.smul_mem _ a (hx _ hm')
218+
rw [mem_baseChange_iff] at hx hm
219+
refine Submodule.span_induction₂ (p := fun x m _ _ ↦ ⁅x, m⁆ ∈ Submodule.span A s)
220+
?_ (by simp) (by simp) ?_ ?_ ?_ ?_ hx hm
221+
· rintro - - ⟨x, hx, rfl⟩ ⟨y, hy, rfl⟩; exact Submodule.subset_span ⟨x, hx, y, hy, by simp⟩
222+
all_goals { intros; simp [add_mem, Submodule.smul_mem, *] }
246223

247224
end LieSubmodule
248225

Mathlib/Algebra/Module/PID.lean

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,8 @@ theorem torsion_by_prime_power_decomposition (hM : Module.IsTorsion' M (Submonoi
218218
rw [Submodule.map_span, Submodule.map_top, range_mkQ] at hs'; simp only [mkQ_apply] at hs'
219219
simp only [s']; rw [← Function.comp_assoc, Set.range_comp (_ ∘ s), Fin.range_succAbove]
220220
rw [← Set.range_comp, ← Set.insert_image_compl_eq_range _ j, Function.comp_apply,
221-
(Quotient.mk_eq_zero _).mpr (Submodule.mem_span_singleton_self _), span_insert_zero] at hs'
221+
(Quotient.mk_eq_zero _).mpr (Submodule.mem_span_singleton_self _),
222+
Submodule.span_insert_zero] at hs'
222223
exact hs'
223224

224225
end PTorsion

Mathlib/Analysis/SpecialFunctions/JapaneseBracket.lean

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ theorem finite_integral_one_add_norm {r : ℝ} (hnr : (finrank ℝ E : ℝ) < r)
101101
ext x
102102
simp only [mem_setOf_eq, mem_closedBall_zero_iff]
103103
exact le_rpow_one_add_norm_iff_norm_le hr (mem_Ioi.mp ht) x
104-
rw [setLIntegral_congr_fun measurableSet_Ioi (Eventually.of_forall h_int)]
104+
rw [setLIntegral_congr_fun measurableSet_Ioi h_int]
105105
set f := fun t : ℝ ↦ μ (Metric.closedBall (0 : E) (t ^ (-r⁻¹) - 1))
106106
set mB := μ (Metric.ball (0 : E) 1)
107107
-- the next two inequalities are in fact equalities but we don't need that
@@ -115,15 +115,15 @@ theorem finite_integral_one_add_norm {r : ℝ} (hnr : (finrank ℝ E : ℝ) < r)
115115
refine μ.addHaar_closedBall (0 : E) ?_
116116
rw [sub_nonneg]
117117
exact Real.one_le_rpow_of_pos_of_le_one_of_nonpos ht.1 ht.2 (by simp [hr.le])
118-
rw [setLIntegral_congr_fun measurableSet_Ioc (ae_of_all _ h_int'),
118+
rw [setLIntegral_congr_fun measurableSet_Ioc h_int',
119119
lintegral_mul_const' _ _ measure_ball_lt_top.ne]
120120
exact ENNReal.mul_lt_top
121121
(finite_integral_rpow_sub_one_pow_aux (finrank ℝ E) hnr) measure_ball_lt_top
122122
· -- The integral from 1 to ∞ is zero:
123123
have h_int'' : ∀ t ∈ Ioi (1 : ℝ), f t = 0 := fun t ht => by
124124
simp only [f, closedBall_rpow_sub_one_eq_empty_aux E hr ht, measure_empty]
125125
-- The integral over the constant zero function is finite:
126-
rw [setLIntegral_congr_fun measurableSet_Ioi (ae_of_all volume <| h_int''), lintegral_const 0,
126+
rw [setLIntegral_congr_fun measurableSet_Ioi h_int'', lintegral_const 0,
127127
zero_mul]
128128
exact WithTop.top_pos
129129

Mathlib/Analysis/SpecialFunctions/PolarCoord.lean

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -162,8 +162,8 @@ theorem lintegral_comp_polarCoord_symm (f : ℝ × ℝ → ℝ≥0∞) :
162162
· simp_rw [det_fderivPolarCoordSymm]; rfl
163163
exacts [polarCoord.symm.injOn, measurableSet_Ioi.prod measurableSet_Ioo]
164164
_ = ∫⁻ (p : ℝ × ℝ) in polarCoord.target, ENNReal.ofReal p.1 • f (polarCoord.symm p) := by
165-
refine setLIntegral_congr_fun polarCoord.open_target.measurableSet ?_
166-
filter_upwards with _ hx using by rw [abs_of_pos hx.1]
165+
refine setLIntegral_congr_fun polarCoord.open_target.measurableSet (fun x hx ↦ ?_)
166+
rw [abs_of_pos hx.1]
167167

168168
end Real
169169

@@ -286,8 +286,7 @@ theorem lintegral_comp_pi_polarCoord_symm (f : (ι → ℝ × ℝ) → ℝ≥0
286286
convert (lintegral_image_eq_lintegral_abs_det_fderiv_mul volume measurableSet_pi_polarCoord_target
287287
(fun p _ ↦ (hasFDerivAt_pi_polarCoord_symm p).hasFDerivWithinAt)
288288
injOn_pi_polarCoord_symm f).symm using 1
289-
refine setLIntegral_congr_fun measurableSet_pi_polarCoord_target ?_
290-
filter_upwards with x hx
289+
refine setLIntegral_congr_fun measurableSet_pi_polarCoord_target (fun x hx ↦ ?_)
291290
simp_rw [det_fderivPiPolarCoordSymm, Finset.abs_prod, ENNReal.ofReal_prod_of_nonneg (fun _ _ ↦
292291
abs_nonneg _), abs_fst_of_mem_pi_polarCoord_target hx]
293292

0 commit comments

Comments
 (0)