File tree Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -141,6 +141,27 @@ theorem to_units_injective : Function.Injective (toUnits : unitary R → Rˣ) :=
141141
142142end Monoid
143143
144+ section Map
145+
146+ variable {F R S : Type *} [Monoid R] [StarMul R] [Monoid S] [StarMul S]
147+ variable [FunLike F R S] [StarHomClass F R S] [MonoidHomClass F R S] (f : F)
148+
149+ lemma map_mem {r : R} (hr : r ∈ unitary R) : f r ∈ unitary S := by
150+ rw [unitary.mem_iff] at hr
151+ simpa [map_star, map_mul] using And.intro congr(f $(hr.1 )) congr(f $(hr.2 ))
152+
153+ /-- The group homomorphism between unitary subgroups of star monoids induced by a star
154+ homomorphism -/
155+ @[simps]
156+ def map : unitary R →* unitary S where
157+ toFun := Subtype.map f (fun _ ↦ map_mem f)
158+ map_one' := Subtype.ext <| map_one f
159+ map_mul' _ _ := Subtype.ext <| map_mul f _ _
160+
161+ lemma toUnits_comp_map : toUnits.comp (map f) = (Units.map f).comp toUnits := by ext; rfl
162+
163+ end Map
164+
144165section CommMonoid
145166
146167variable [CommMonoid R] [StarMul R]
You can’t perform that action at this time.
0 commit comments