@@ -177,10 +177,9 @@ noncomputable def indCoindIso (A : Rep.{max w u} k S) :
177177
178178variable (k S)
179179
180- set_option backward.defeqAttrib.useBackward true in
181180/-- Given a finite index subgroup `S ≤ G`, this is a natural isomorphism between the `Ind_S^G` and
182181`Coind_G^S` functors `Rep k S ⥤ Rep k G`. -/
183- @ [simps! hom_app inv_app]
182+ @ [implicit_reducible, simps! hom_app inv_app]
184183noncomputable def indCoindNatIso :
185184 indFunctor k S.subtype ≅ coindFunctor.{max w u} k S.subtype :=
186185 NatIso.ofComponents (fun (A : Rep k S) => indCoindIso A) fun f => by
@@ -194,7 +193,6 @@ noncomputable def resIndAdjunction :
194193 resFunctor.{max w u v} S.subtype ⊣ indFunctor.{max w u v} k S.subtype :=
195194 (resCoindAdjunction.{max w u v} k S.subtype).ofNatIsoRight (indCoindNatIso.{max w u v} k S).symm
196195
197-
198196omit [DecidableRel (QuotientGroup.rightRel S)] in
199197@[instance] -- Note: we must use `@[instance] theorem` here due to [ lean4#5595 ] (https://github.com/leanprover/lean4/issues/5595).
200198theorem instIsRightAdjointSubtypeMemSubgroupIndFunctorSubtype :
@@ -215,8 +213,6 @@ lemma resIndAdjunction_unit_app (B : Rep.{max w u v} k G) :
215213 (resCoindAdjunction.{max w u} k S.subtype).unit.app B ≫
216214 (indCoindIso.{max w (max u v)} (res S.subtype B)).inv := rfl
217215
218- set_option backward.defeqAttrib.useBackward true in
219- set_option backward.isDefEq.respectTransparency false in
220216lemma resIndAdjunction_homEquiv_apply (A : Rep.{max w u v} k S)
221217 {B : Rep.{max w u v} k G} (f : res S.subtype B ⟶ A) :
222218 (resIndAdjunction.{w, u, v} k S).homEquiv _ _ f =
@@ -228,7 +224,7 @@ lemma resIndAdjunction_homEquiv_symm_apply (A : Rep.{max w u v} k S)
228224 {B : Rep.{max w u v} k G}
229225 (f : B ⟶ (indFunctor k S.subtype).obj A) :
230226 ((resIndAdjunction k S).homEquiv _ _).symm f =
231- (resCoindHomEquiv.{max w u v} S.subtype B A).symm (f ≫ (indCoindIso.{max w u v} A).hom) := by
227+ (resCoindHomEquiv.{max w u v} S.subtype B A).symm (f ≫ (indCoindIso.{max w u v} A).hom) :=
232228 rfl
233229
234230variable (k S) in
@@ -248,7 +244,7 @@ theorem instIsLeftAdjointSubtypeMemSubgroupCoindFunctorSubtype :
248244lemma coindResAdjunction_counit_app (B : Rep.{max w u v} k G) :
249245 (coindResAdjunction.{w, u, v} k S).counit.app B =
250246 (indCoindIso.{max w u v} (res S.subtype B)).inv ≫
251- (indResAdjunction k S.subtype).counit.app B := by
247+ (indResAdjunction k S.subtype).counit.app B :=
252248 rfl
253249
254250set_option backward.isDefEq.respectTransparency false in
@@ -257,8 +253,7 @@ lemma coindResAdjunction_unit_app (A : Rep.{max w u v} k S) :
257253 (coindResAdjunction k S).unit.app A = (indResAdjunction k S.subtype).unit.app A ≫
258254 (resFunctor S.subtype).map (indCoindIso.{max w u v} A).hom := by
259255 ext
260- simp [coindResAdjunction, Adjunction.ofNatIsoLeft,
261- indResAdjunction, indCoindIso]
256+ simp [coindResAdjunction]
262257
263258lemma coindResAdjunction_homEquiv_apply (A : Rep.{max w u v} k S)
264259 {B : Rep k G} (f : coind S.subtype A ⟶ B) :
@@ -270,9 +265,7 @@ lemma coindResAdjunction_homEquiv_symm_apply (A : Rep.{max w u v} k S)
270265 {B : Rep k G} (f : A ⟶ res S.subtype B) :
271266 ((coindResAdjunction.{max w u v} k S).homEquiv _ _).symm f =
272267 (indCoindIso.{max w u v} A).inv ≫ (indResHomEquiv S.subtype A B).symm f := by
273- simp only [coindResAdjunction, indResAdjunction,
268+ simp [coindResAdjunction, indResHomEquiv , indResAdjunction,
274269 Adjunction.homEquiv_ofNatIsoLeft_symm_apply _]
275- simp
276- rfl
277270
278271end Rep
0 commit comments