Commit 2022-01-06 19:34 0b966303
View on Github →feat(algebra/{monoid_algebra/basic,free_non_unital_non_assoc_algebra,lie/free}): generalize typeclasses (#11283) This fixes a number of missing or problematic typeclasses:
- The smul typeclasses on
monoid_algebrahad overly strong assumptions add_comm_group (monoid_algebra k G)was missing.monoid_algebrahad diamonds in its int-module structures, which were different between the one inferred fromringandadd_group.monoid_algebrawas missing an instance of the newnon_unital_non_assoc_ring.free_non_unital_non_assoc_algebrawas missing a lot of smul typeclasses and transitive module structures that it should inherit frommonoid_algebra. Since every instance should just be inherited, we changefree_non_unital_non_assoc_algebrato an abbreviation.free_lie_algebrahad diamonds in its int-module and nat-module structures.free_lie_algebrawas missing transitive module structures. This also golfs some proofs aboutfree_non_unital_non_assoc_algebra, and removes theirreducibleattributes since these just make some obvious proofs more awkward.