Documentation

Mathlib.GroupTheory.RegularWreathProduct

Regular wreath product #

This file defines the regular wreath product of groups, and the canonical maps in and out of the product. The regular wreath product of D and Q is the product (Q → D) × Q with the group operation ⟨a₁, a₂⟩ * ⟨b₁, b₂⟩ = ⟨a₁ * (fun x ↦ b₁ (a₂⁻¹ * x)), a₂ * b₂⟩.

Main definitions #

Notation #

This file introduces the global notation D ≀ᵣ Q for RegularWreathProduct D Q.

Tags #

group, regular wreath product, sylow p-subgroup

structure RegularWreathProduct (D : Type u_1) (Q : Type u_2) :
Type (max u_1 u_2)

The regular wreath product of groups Q and D. It is the product (Q → D) × Q with the group operation ⟨a₁, a₂⟩ * ⟨b₁, b₂⟩ = ⟨a₁ * (fun x ↦ b₁ (a₂⁻¹ * x)), a₂ * b₂⟩.

  • left : QD

    The function of Q → D

  • right : Q

    The element of Q

Instances For
    theorem RegularWreathProduct.ext_iff {D : Type u_1} {Q : Type u_2} {x y : D ≀ᵣ Q} :
    x = y x.left = y.left x.right = y.right
    theorem RegularWreathProduct.ext {D : Type u_1} {Q : Type u_2} {x y : D ≀ᵣ Q} (left : x.left = y.left) (right : x.right = y.right) :
    x = y

    The regular wreath product of groups Q and D. It is the product (Q → D) × Q with the group operation ⟨a₁, a₂⟩ * ⟨b₁, b₂⟩ = ⟨a₁ * (fun x ↦ b₁ (a₂⁻¹ * x)), a₂ * b₂⟩.

    Equations
    Instances For
      instance RegularWreathProduct.instMul {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
      Mul (D ≀ᵣ Q)
      Equations
      theorem RegularWreathProduct.mul_def {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] (a b : D ≀ᵣ Q) :
      a * b = { left := a.left * fun (x : Q) => b.left (a.right⁻¹ * x), right := a.right * b.right }
      @[simp]
      theorem RegularWreathProduct.mul_left {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] (a b : D ≀ᵣ Q) :
      (a * b).left = a.left * fun (x : Q) => b.left (a.right⁻¹ * x)
      @[simp]
      theorem RegularWreathProduct.mul_right {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] (a b : D ≀ᵣ Q) :
      (a * b).right = a.right * b.right
      instance RegularWreathProduct.instOne {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
      One (D ≀ᵣ Q)
      Equations
      @[simp]
      theorem RegularWreathProduct.one_left {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
      left 1 = 1
      @[simp]
      theorem RegularWreathProduct.one_right {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
      right 1 = 1
      instance RegularWreathProduct.instInv {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
      Inv (D ≀ᵣ Q)
      Equations
      @[simp]
      theorem RegularWreathProduct.inv_left {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] (a : D ≀ᵣ Q) :
      a⁻¹.left = fun (x : Q) => a.left⁻¹ (a.right * x)
      @[simp]
      theorem RegularWreathProduct.inv_right {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] (a : D ≀ᵣ Q) :
      instance RegularWreathProduct.instGroup {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
      Equations
      • One or more equations did not get rendered due to their size.
      instance RegularWreathProduct.instInhabited {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
      Equations
      def RegularWreathProduct.rightHom {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
      D ≀ᵣ Q →* Q

      The canonical projection map D ≀ᵣ Q →* Q, as a group hom.

      Equations
      Instances For
        def RegularWreathProduct.inl {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
        Q →* D ≀ᵣ Q

        The canonical map Q →* D ≀ᵣ Q sending q to ⟨1, q⟩

        Equations
        Instances For
          @[simp]
          theorem RegularWreathProduct.left_inl {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] (q : Q) :
          (inl q).left = 1
          @[simp]
          theorem RegularWreathProduct.right_inl {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] (q : Q) :
          (inl q).right = q
          @[simp]
          theorem RegularWreathProduct.rightHom_eq_right {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] :
          @[simp]
          theorem RegularWreathProduct.fun_id {D : Type u_1} {Q : Type u_2} [Group D] [Group Q] (q : Q) :
          rightHom (inl q) = q
          def RegularWreathProduct.equivProd (D : Type u_3) (Q : Type u_4) :
          D ≀ᵣ Q (QD) × Q

          The equivalence map for the representation as a product.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            instance RegularWreathProduct.instFinite {D : Type u_1} {Q : Type u_2} [Finite D] [Finite Q] :
            def RegularWreathProduct.congr {D₁ : Type u_3} {Q₁ : Type u_4} {D₂ : Type u_5} {Q₂ : Type u_6} [Group D₁] [Group Q₁] [Group D₂] [Group Q₂] (f : D₁ ≃* D₂) (g : Q₁ ≃* Q₂) :
            D₁ ≀ᵣ Q₁ ≃* D₂ ≀ᵣ Q₂

            Define an isomorphism from D₁ ≀ᵣ Q₁ to D₂ ≀ᵣ Q₂ given isomorphisms D₁ ≀ᵣ Q₁ and Q₁ ≃* Q₂.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              instance RegularWreathProduct.instSMulProd (D : Type u_1) (Q : Type u_2) [Group D] [Group Q] (Λ : Type u_3) [MulAction D Λ] :
              SMul (D ≀ᵣ Q) (Λ × Q)
              Equations
              @[simp]
              theorem RegularWreathProduct.smul_def (D : Type u_1) (Q : Type u_2) [Group D] [Group Q] (Λ : Type u_3) [MulAction D Λ] {w : D ≀ᵣ Q} {p : Λ × Q} :
              w p = (w.left (w.right * p.2) p.1, w.right * p.2)
              instance RegularWreathProduct.instMulActionProd (D : Type u_1) (Q : Type u_2) [Group D] [Group Q] (Λ : Type u_3) [MulAction D Λ] :
              MulAction (D ≀ᵣ Q) (Λ × Q)
              Equations
              instance RegularWreathProduct.instFaithfulSMulProdOfNonempty (D : Type u_1) (Q : Type u_2) [Group D] [Group Q] (Λ : Type u_3) [MulAction D Λ] [FaithfulSMul D Λ] [Nonempty Q] [Nonempty Λ] :
              FaithfulSMul (D ≀ᵣ Q) (Λ × Q)
              def RegularWreathProduct.toPerm (D : Type u_1) (Q : Type u_2) [Group D] [Group Q] (Λ : Type u_3) [MulAction D Λ] :

              The map sending the wreath product D ≀ᵣ Q to its representation as a permutation of Λ × Q given D-set Λ.

              Equations
              Instances For
                theorem RegularWreathProduct.toPermInj (D : Type u_1) (Q : Type u_2) [Group D] [Group Q] (Λ : Type u_3) [MulAction D Λ] [FaithfulSMul D Λ] [Nonempty Λ] :
                def IteratedWreathProduct (G : Type u) (n : ) :

                The wreath product of group G iterated n times.

                Equations
                Instances For
                  noncomputable def Sylow.mulEquivIteratedWreathProduct (p : ) [hp : Fact (Nat.Prime p)] (n : ) (α : Type u_3) [Finite α] ( : Nat.card α = p ^ n) (G : Type u_4) [Group G] [Finite G] (hG : Nat.card G = p) (P : Sylow p (Equiv.Perm α)) :

                  The encoding of the Sylow p-subgroups of Perm α as an iterated wreath product.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For