Commit 2024-11-11 13:54 19ffdd50

View on Github →

chore(Data/DFinsupp): split Basic.lean into many smaller files (#18656) This PR splits Data/DFinsupp/Basic.lean into a collection of smaller files. The goal here is to keep the structure somewhat intact. Thankfully a somewhat clean split was possible while keeping imports reasonably small. The following new files were made:

  • Data/DFinsupp/Defs.lean has the definition of DFinsupp and all the essential definitions: support, single, update, the AddCommMonoid structure. (Or should this be renamed to Basic.lean?)
  • Data/DFinsupp/Ext.lean has an extensionality principle for AddMonoidHoms composed with DFinsupps. Might go into Defs.lean except it needs some heavy imports.
  • Data/DFinsupp/BigOperators.lean: sums and products of DFinsupps, and sums and products as DFinsupps
  • Data/DFinsupp/FiniteInfinite.lean: instances for Fintype and Infinite
  • Data/DFinsupp/Module.lean: scalar multiplication and module structure; the DFinsupp maps as linear maps
  • Data/DFinsupp/Sigma.lean: sigmaCurry and sigmaUncurry
  • Data/DFinsupp/Submonoid.lean: lemmas involving submonoids, in particular that (additive) submonoids are closed under products (sums) of DFinsupps The following file no longer exists:
  • Data/DFinsupp/Basic.lean (split completely!)

Estimated changes

added def DFinsupp.prod
added theorem DFinsupp.prod_comm
added theorem DFinsupp.prod_eq_one
added theorem DFinsupp.prod_inv
added theorem DFinsupp.prod_mul
added theorem DFinsupp.prod_one
added theorem DFinsupp.smul_sum
added theorem DFinsupp.sumAddHom_add
added theorem DFinsupp.sum_apply
added theorem DFinsupp.sum_single
added theorem DFinsupp.sum_sub_index
added theorem DFinsupp.support_sum
added theorem map_dfinsupp_prod
deleted theorem DFinsupp.addHom_ext'
deleted theorem DFinsupp.addHom_ext
deleted theorem DFinsupp.coe_finset_sum
deleted theorem DFinsupp.coe_smul
deleted theorem DFinsupp.comapDomain_smul
deleted theorem DFinsupp.comp_liftAddHom
deleted theorem DFinsupp.comp_sumAddHom
deleted theorem DFinsupp.filter_smul
deleted theorem DFinsupp.finset_sum_apply
deleted def DFinsupp.liftAddHom
deleted theorem DFinsupp.mk_smul
deleted def DFinsupp.prod
deleted theorem DFinsupp.prod_add_index
deleted theorem DFinsupp.prod_comm
deleted theorem DFinsupp.prod_eq_one
deleted theorem DFinsupp.prod_eq_zero_iff
deleted theorem DFinsupp.prod_inv
deleted theorem DFinsupp.prod_mul
deleted theorem DFinsupp.prod_ne_zero_iff
deleted theorem DFinsupp.prod_neg_index
deleted theorem DFinsupp.prod_one
deleted theorem DFinsupp.prod_sum_index
deleted theorem DFinsupp.prod_zero_index
deleted def DFinsupp.sigmaCurry
deleted theorem DFinsupp.sigmaCurry_add
deleted theorem DFinsupp.sigmaCurry_apply
deleted theorem DFinsupp.sigmaCurry_smul
deleted theorem DFinsupp.sigmaCurry_zero
deleted theorem DFinsupp.sigmaUncurry_add
deleted theorem DFinsupp.single_smul
deleted theorem DFinsupp.smul_apply
deleted theorem DFinsupp.smul_sum
deleted def DFinsupp.sumAddHom
deleted theorem DFinsupp.sumAddHom_add
deleted theorem DFinsupp.sumAddHom_apply
deleted theorem DFinsupp.sumAddHom_comm
deleted theorem DFinsupp.sumAddHom_single
deleted theorem DFinsupp.sumAddHom_zero
deleted theorem DFinsupp.sum_apply
deleted theorem DFinsupp.sum_single
deleted theorem DFinsupp.sum_sub_index
deleted theorem DFinsupp.support_smul
deleted theorem DFinsupp.support_sum
deleted theorem dfinsupp_prod_mem
deleted theorem dfinsupp_sumAddHom_mem
deleted theorem map_dfinsupp_prod