File tree Expand file tree Collapse file tree 2 files changed +47
-0
lines changed
Mathlib/Algebra/Hom/Equiv/Units Expand file tree Collapse file tree 2 files changed +47
-0
lines changed Original file line number Diff line number Diff line change @@ -30,6 +30,7 @@ import Mathlib.Algebra.Hom.Commute
30
30
import Mathlib.Algebra.Hom.Embedding
31
31
import Mathlib.Algebra.Hom.Equiv.Basic
32
32
import Mathlib.Algebra.Hom.Equiv.Units.Basic
33
+ import Mathlib.Algebra.Hom.Equiv.Units.GroupWithZero
33
34
import Mathlib.Algebra.Hom.Group
34
35
import Mathlib.Algebra.Hom.Units
35
36
import Mathlib.Algebra.Homology.ComplexShape
Original file line number Diff line number Diff line change
1
+ /-
2
+ Copyright (c) 2018 Johannes Hölzl. All rights reserved.
3
+ Released under Apache 2.0 license as described in the file LICENSE.
4
+ Authors: Johannes Hölzl, Callum Sutton, Yury Kudryashov
5
+ -/
6
+ import Mathlib.Algebra.Hom.Equiv.Units.Basic
7
+ import Mathlib.Algebra.GroupWithZero.Units.Basic
8
+
9
+ /-!
10
+ # Multiplication by a nonzero element in a `GroupWithZero` is a permutation.
11
+ -/
12
+
13
+
14
+ variable {G : Type _}
15
+
16
+ namespace Equiv
17
+
18
+ section GroupWithZero
19
+
20
+ variable [GroupWithZero G]
21
+
22
+ /-- Left multiplication by a nonzero element in a `GroupWithZero` is a permutation of the
23
+ underlying type. -/
24
+ @[simps (config := { fullyApplied := false })]
25
+ protected def mulLeft₀ (a : G) (ha : a ≠ 0 ) : Perm G :=
26
+ (Units.mk0 a ha).mulLeft
27
+ #align equiv.mul_left₀ Equiv.mulLeft₀
28
+
29
+ theorem mulLeft_bijective₀ (a : G) (ha : a ≠ 0 ) : Function.Bijective ((· * ·) a : G → G) :=
30
+ (Equiv.mulLeft₀ a ha).bijective
31
+ #align equiv.mul_left_bijective₀ Equiv.mulLeft_bijective₀
32
+
33
+ /-- Right multiplication by a nonzero element in a `GroupWithZero` is a permutation of the
34
+ underlying type. -/
35
+ @[simps (config := { fullyApplied := false })]
36
+ protected def mulRight₀ (a : G) (ha : a ≠ 0 ) : Perm G :=
37
+ (Units.mk0 a ha).mulRight
38
+ #align equiv.mul_right₀ Equiv.mulRight₀
39
+
40
+ theorem mulRight_bijective₀ (a : G) (ha : a ≠ 0 ) : Function.Bijective ((· * a) : G → G) :=
41
+ (Equiv.mulRight₀ a ha).bijective
42
+ #align equiv.mul_right_bijective₀ Equiv.mulRight_bijective₀
43
+
44
+ end GroupWithZero
45
+
46
+ end Equiv
You can’t perform that action at this time.
0 commit comments