Mathlib v3 is deprecated. Go to Mathlib v4

Commit 2020-10-08 05:32 4f757600

View on Github →

chore(*/hom,equiv): Split monoid_hom into more fundamental structures, and reuse them elsewhere (#4423) Notably this adds add_hom and mul_hom, which become base classes of add_equiv, mul_equiv, linear_map, and linear_equiv. Primarily to avoid breaking assumptions of field order in monoid_hom and add_monoid_hom, this also adds one_hom and zero_hom. A massive number of lemmas here are totally uninteresting and hold for pretty much all objects that define coe_to_fun. This PR translates all those lemmas, but doesn't bother attempting to generalize later ones.

Estimated changes

added structure add_hom
modified structure add_monoid_hom
modified theorem monoid_hom.cancel_left
modified theorem monoid_hom.cancel_right
modified theorem monoid_hom.coe_inj
modified theorem monoid_hom.coe_mk
modified def monoid_hom.comp
modified theorem monoid_hom.comp_apply
modified theorem monoid_hom.comp_assoc
modified theorem monoid_hom.comp_id
modified theorem monoid_hom.congr_arg
modified theorem monoid_hom.congr_fun
modified theorem monoid_hom.ext
modified theorem monoid_hom.ext_iff
modified def monoid_hom.id
modified theorem monoid_hom.id_apply
modified theorem monoid_hom.id_comp
modified theorem monoid_hom.map_mul
modified theorem monoid_hom.map_one
modified theorem monoid_hom.one_apply
modified theorem monoid_hom.to_fun_eq_coe
modified structure monoid_hom
added theorem mul_hom.cancel_left
added theorem mul_hom.cancel_right
added theorem mul_hom.coe_inj
added theorem mul_hom.coe_mk
added def mul_hom.comp
added theorem mul_hom.comp_apply
added theorem mul_hom.comp_assoc
added theorem mul_hom.comp_id
added theorem mul_hom.congr_arg
added theorem mul_hom.congr_fun
added theorem mul_hom.ext
added theorem mul_hom.ext_iff
added def mul_hom.id
added theorem mul_hom.id_apply
added theorem mul_hom.id_comp
added theorem mul_hom.map_mul
added theorem mul_hom.to_fun_eq_coe
added structure mul_hom
added theorem one_hom.cancel_left
added theorem one_hom.cancel_right
added theorem one_hom.coe_inj
added theorem one_hom.coe_mk
added def one_hom.comp
added theorem one_hom.comp_apply
added theorem one_hom.comp_assoc
added theorem one_hom.comp_id
added theorem one_hom.congr_arg
added theorem one_hom.congr_fun
added theorem one_hom.ext
added theorem one_hom.ext_iff
added def one_hom.id
added theorem one_hom.id_apply
added theorem one_hom.id_comp
added theorem one_hom.map_one
added theorem one_hom.one_apply
added theorem one_hom.to_fun_eq_coe
added structure one_hom
added structure zero_hom
modified structure add_equiv
modified structure mul_equiv