Commit 2024-11-05 11:39 f4eec872

View on Github →

chore(Algebra/Ring/Subring): split Basic.lean (#18520) This PR splits off a Defs.lean file from Subring/Basic.lean containing on the definition and subsemiring structure of Subring(Class). This PR was motivated by the "hoard factor" computation that showed #18340 increased the factor of Algebra.Ring.Action.Invariant by a lot, meaning there are many transitive imports in that file whose declarations remain unused. The old PR increased it from 0,838219 to 0,859692, this PR decreases it back to 0,821529. Unfortunately, Mathlib's overall hoard factor increased somewhat, from 0,624155 to 0,624658. The solution might be to split files higher up in the hierarchy?

Estimated changes

deleted theorem AddSubgroup.int_mul_mem
deleted theorem Subring.coeSubtype
deleted theorem Subring.coe_add
deleted theorem Subring.coe_copy
deleted theorem Subring.coe_eq_zero_iff
deleted theorem Subring.coe_intCast
deleted theorem Subring.coe_mk'
deleted theorem Subring.coe_mul
deleted theorem Subring.coe_natCast
deleted theorem Subring.coe_neg
deleted theorem Subring.coe_one
deleted theorem Subring.coe_pow
deleted theorem Subring.coe_set_mk
deleted theorem Subring.coe_toAddSubgroup
deleted theorem Subring.coe_toSubmonoid
deleted theorem Subring.coe_toSubsemiring
deleted theorem Subring.coe_zero
deleted theorem Subring.copy_eq
deleted theorem Subring.ext
deleted theorem Subring.mem_carrier
deleted theorem Subring.mem_mk'
deleted theorem Subring.mem_mk
deleted theorem Subring.mem_toAddSubgroup
deleted theorem Subring.mem_toSubmonoid
deleted theorem Subring.mem_toSubsemiring
deleted theorem Subring.mk'_toAddSubgroup
deleted theorem Subring.mk'_toSubmonoid
deleted theorem Subring.mk_le_mk
deleted def Subring.subtype
deleted structure Subring
deleted theorem SubringClass.coeSubtype
deleted theorem SubringClass.coe_intCast
deleted theorem SubringClass.coe_natCast
deleted theorem intCast_mem
added theorem Subring.coeSubtype
added theorem Subring.coe_add
added theorem Subring.coe_copy
added theorem Subring.coe_intCast
added theorem Subring.coe_mk'
added theorem Subring.coe_mul
added theorem Subring.coe_natCast
added theorem Subring.coe_neg
added theorem Subring.coe_one
added theorem Subring.coe_pow
added theorem Subring.coe_set_mk
added theorem Subring.coe_zero
added theorem Subring.copy_eq
added theorem Subring.ext
added theorem Subring.mem_carrier
added theorem Subring.mem_mk'
added theorem Subring.mem_mk
added theorem Subring.mk_le_mk
added def Subring.subtype
added structure Subring
added theorem intCast_mem