Documentation

Mathlib.Algebra.Group.Subgroup.ZPowers.Basic

Subgroups generated by an element #

Tags #

subgroup, subgroups

def Subgroup.zpowers {G : Type u_1} [Group G] (g : G) :

The subgroup generated by an element.

Instances For
    def AddSubgroup.zmultiples {G : Type u_1} [AddGroup G] (g : G) :

    The additive subgroup generated by an element.

    Instances For
      @[simp]
      theorem Subgroup.mem_zpowers {G : Type u_1} [Group G] (g : G) :
      g โˆˆ zpowers g
      @[simp]
      theorem AddSubgroup.mem_zmultiples {G : Type u_1} [AddGroup G] (g : G) :
      g โˆˆ zmultiples g
      theorem Subgroup.coe_zpowers {G : Type u_1} [Group G] (g : G) :
      โ†‘(zpowers g) = Set.range fun (x : โ„ค) => g ^ x
      theorem AddSubgroup.coe_zmultiples {G : Type u_1} [AddGroup G] (g : G) :
      โ†‘(zmultiples g) = Set.range fun (x : โ„ค) => x โ€ข g
      @[implicit_reducible]
      noncomputable instance Subgroup.decidableMemZPowers {G : Type u_1} [Group G] {a : G} :
      DecidablePred fun (x : G) => x โˆˆ zpowers a
      @[implicit_reducible]
      noncomputable instance AddSubgroup.decidableMemZMultiples {G : Type u_1} [AddGroup G] {a : G} :
      DecidablePred fun (x : G) => x โˆˆ zmultiples a
      theorem Subgroup.mem_zpowers_iff {G : Type u_1} [Group G] {g h : G} :
      h โˆˆ zpowers g โ†” โˆƒ (k : โ„ค), g ^ k = h
      theorem AddSubgroup.mem_zmultiples_iff {G : Type u_1} [AddGroup G] {g h : G} :
      h โˆˆ zmultiples g โ†” โˆƒ (k : โ„ค), k โ€ข g = h
      @[simp]
      theorem Subgroup.zpow_mem_zpowers {G : Type u_1} [Group G] (g : G) (k : โ„ค) :
      g ^ k โˆˆ zpowers g
      @[simp]
      theorem AddSubgroup.zsmul_mem_zmultiples {G : Type u_1} [AddGroup G] (g : G) (k : โ„ค) :
      k โ€ข g โˆˆ zmultiples g
      @[simp]
      theorem Subgroup.npow_mem_zpowers {G : Type u_1} [Group G] (g : G) (k : โ„•) :
      g ^ k โˆˆ zpowers g
      @[simp]
      theorem AddSubgroup.nsmul_mem_zmultiples {G : Type u_1} [AddGroup G] (g : G) (k : โ„•) :
      k โ€ข g โˆˆ zmultiples g
      @[simp]
      theorem Subgroup.forall_zpowers {G : Type u_1} [Group G] {x : G} {p : โ†ฅ(zpowers x) โ†’ Prop} :
      (โˆ€ (g : โ†ฅ(zpowers x)), p g) โ†” โˆ€ (m : โ„ค), p โŸจx ^ m, โ‹ฏโŸฉ
      @[simp]
      theorem AddSubgroup.forall_zmultiples {G : Type u_1} [AddGroup G] {x : G} {p : โ†ฅ(zmultiples x) โ†’ Prop} :
      (โˆ€ (g : โ†ฅ(zmultiples x)), p g) โ†” โˆ€ (m : โ„ค), p โŸจm โ€ข x, โ‹ฏโŸฉ
      @[simp]
      theorem Subgroup.exists_zpowers {G : Type u_1} [Group G] {x : G} {p : โ†ฅ(zpowers x) โ†’ Prop} :
      (โˆƒ (g : โ†ฅ(zpowers x)), p g) โ†” โˆƒ (m : โ„ค), p โŸจx ^ m, โ‹ฏโŸฉ
      @[simp]
      theorem AddSubgroup.exists_zmultiples {G : Type u_1} [AddGroup G] {x : G} {p : โ†ฅ(zmultiples x) โ†’ Prop} :
      (โˆƒ (g : โ†ฅ(zmultiples x)), p g) โ†” โˆƒ (m : โ„ค), p โŸจm โ€ข x, โ‹ฏโŸฉ
      theorem Subgroup.forall_mem_zpowers {G : Type u_1} [Group G] {x : G} {p : G โ†’ Prop} :
      (โˆ€ g โˆˆ zpowers x, p g) โ†” โˆ€ (m : โ„ค), p (x ^ m)
      theorem AddSubgroup.forall_mem_zmultiples {G : Type u_1} [AddGroup G] {x : G} {p : G โ†’ Prop} :
      (โˆ€ g โˆˆ zmultiples x, p g) โ†” โˆ€ (m : โ„ค), p (m โ€ข x)
      theorem Subgroup.exists_mem_zpowers {G : Type u_1} [Group G] {x : G} {p : G โ†’ Prop} :
      (โˆƒ g โˆˆ zpowers x, p g) โ†” โˆƒ (m : โ„ค), p (x ^ m)
      theorem AddSubgroup.exists_mem_zmultiples {G : Type u_1} [AddGroup G] {x : G} {p : G โ†’ Prop} :
      (โˆƒ g โˆˆ zmultiples x, p g) โ†” โˆƒ (m : โ„ค), p (m โ€ข x)
      @[simp]
      theorem MonoidHom.map_zpowers {G : Type u_1} [Group G] {N : Type u_3} [Group N] (f : G โ†’* N) (x : G) :
      theorem Int.mem_zmultiples_iff {a b : โ„ค} :
      b โˆˆ AddSubgroup.zmultiples a โ†” a โˆฃ b
      @[simp]
      theorem Subgroup.zpowers_le {G : Type u_1} [Group G] {g : G} {H : Subgroup G} :
      zpowers g โ‰ค H โ†” g โˆˆ H
      @[simp]
      theorem AddSubgroup.zmultiples_le {G : Type u_1} [AddGroup G] {g : G} {H : AddSubgroup G} :
      zmultiples g โ‰ค H โ†” g โˆˆ H
      theorem Subgroup.zpowers_le_of_mem {G : Type u_1} [Group G] {g : G} {H : Subgroup G} :
      g โˆˆ H โ†’ zpowers g โ‰ค H

      Alias of the reverse direction of Subgroup.zpowers_le.

      theorem AddSubgroup.zmultiples_le_of_mem {G : Type u_1} [AddGroup G] {g : G} {H : AddSubgroup G} :
      g โˆˆ H โ†’ zmultiples g โ‰ค H
      @[simp]
      theorem Subgroup.zpowers_eq_bot {G : Type u_1} [Group G] {g : G} :
      zpowers g = โŠฅ โ†” g = 1
      @[simp]
      theorem AddSubgroup.zmultiples_eq_bot {G : Type u_1} [AddGroup G] {g : G} :
      zmultiples g = โŠฅ โ†” g = 0
      theorem Subgroup.zpowers_ne_bot {G : Type u_1} [Group G] {g : G} :
      zpowers g โ‰  โŠฅ โ†” g โ‰  1
      theorem AddSubgroup.zmultiples_ne_bot {G : Type u_1} [AddGroup G] {g : G} :
      zmultiples g โ‰  โŠฅ โ†” g โ‰  0