Skip to content

Commit c8ba0ba

Browse files
committed
chore: adjust Module.Finite instance priority
1 parent 4609a29 commit c8ba0ba

File tree

3 files changed

+6
-4
lines changed

3 files changed

+6
-4
lines changed

Mathlib/LinearAlgebra/Complex/FiniteDimensional.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ theorem finrank_real_complex_fact : Fact (finrank ℝ ℂ = 2) :=
4545

4646
end Complex
4747

48-
instance (priority := 100) FiniteDimensional.complexToReal (E : Type*) [AddCommGroup E]
48+
instance (priority := 500) FiniteDimensional.complexToReal (E : Type*) [AddCommGroup E]
4949
[Module ℂ E] [FiniteDimensional ℂ E] : FiniteDimensional ℝ E :=
5050
FiniteDimensional.trans ℝ ℂ E
5151

Mathlib/LinearAlgebra/Dimension/Free.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -308,8 +308,8 @@ end Module
308308

309309
namespace Algebra
310310

311-
instance (R S : Type*) [CommSemiring R] [StrongRankCondition R] [Semiring S] [Algebra R S]
312-
[IsQuadraticExtension R S] :
311+
instance (priority := 100) (R S : Type*) [CommSemiring R] [StrongRankCondition R] [Semiring S]
312+
[Algebra R S] [IsQuadraticExtension R S] :
313313
Module.Finite R S := finite_of_finrank_eq_succ <| IsQuadraticExtension.finrank_eq_two R S
314314

315315
end Algebra

Mathlib/LinearAlgebra/Dual/Lemmas.lean

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,9 @@ instance _root_.Prod.instModuleIsReflexive [IsReflexive R N] :
282282
instance _root_.ULift.instModuleIsReflexive.{w} : IsReflexive R (ULift.{w} M) :=
283283
equiv ULift.moduleEquiv.symm
284284

285-
instance instFiniteDimensionalOfIsReflexive (K V : Type*)
285+
-- Very low priority because instance resolution will often end up using the instances above
286+
-- to prove `IsReflexive`, which require proving `Finite` again.
287+
instance (priority := 90) instFiniteDimensionalOfIsReflexive (K V : Type*)
286288
[Field K] [AddCommGroup V] [Module K V] [IsReflexive K V] :
287289
FiniteDimensional K V := by
288290
rw [FiniteDimensional, ← rank_lt_aleph0_iff]

0 commit comments

Comments
 (0)