Commit 2024-10-19 07:30 a5ac03c2

View on Github →

chore(Algebra/Module): split off NoZeroSMulDivisors (#17909) The definition of NoZeroSMulDivisors doesn't require us to know about modules. By splitting off this definition, we can streamline the downstream import graph a bit. In the process, generalize a few instances from Module to SMulWithZero. New files:

  • NoZeroSMulDivisors/Defs.lean: definition and basic results that don't require Module
  • NoZeroSMulDivisors/Basic.lean: basic results that require Module
  • NoZeroSMulDivisors/Pi.lean: results on NoZeroSMulDivisors _ (_ -> _) that don't require Module
  • NoZeroSMulDivisors/Prod.lean: results on NoZeroSMulDivisors _ (_ x _) that don't require Module

Estimated changes

deleted theorem CharZero.of_module
deleted theorem Nat.noZeroSMulDivisors
deleted theorem neg_eq_self
deleted theorem neg_ne_self
deleted theorem self_eq_neg
deleted theorem self_ne_neg
deleted theorem smul_eq_zero
deleted theorem smul_eq_zero_iff_left
deleted theorem smul_eq_zero_iff_right
deleted theorem smul_left_injective
deleted theorem smul_ne_zero
deleted theorem smul_ne_zero_iff
deleted theorem smul_ne_zero_iff_left
deleted theorem smul_ne_zero_iff_right
deleted theorem smul_right_inj
deleted theorem smul_right_injective
deleted theorem two_nsmul_eq_zero