Documentation

Mathlib.GroupTheory.CommutingProbability

Commuting Probability #

This file introduces the commuting probability of finite groups.

Main definitions #

TODO #

noncomputable def commProb (M : Type u_1) [Mul M] :
โ„š

The commuting probability of a finite type with a multiplication operation.

Instances For
    theorem commProb_def (M : Type u_1) [Mul M] :
    commProb M = โ†‘(Nat.card { p : M ร— M // Commute p.1 p.2 }) / โ†‘(Nat.card M) ^ 2
    theorem commProb_prod (M : Type u_1) [Mul M] (M' : Type u_2) [Mul M'] :
    commProb (M ร— M') = commProb M * commProb M'
    theorem commProb_pi {ฮฑ : Type u_2} (i : ฮฑ โ†’ Type u_3) [Fintype ฮฑ] [(a : ฮฑ) โ†’ Mul (i a)] :
    commProb ((a : ฮฑ) โ†’ i a) = โˆ a : ฮฑ, commProb (i a)
    theorem commProb_function {ฮฑ : Type u_2} {ฮฒ : Type u_3} [Fintype ฮฑ] [Mul ฮฒ] :
    commProb (ฮฑ โ†’ ฮฒ) = commProb ฮฒ ^ Fintype.card ฮฑ
    @[simp]
    theorem commProb_eq_zero_of_infinite (M : Type u_1) [Mul M] [Infinite M] :
    commProb M = 0
    theorem commProb_pos (M : Type u_1) [Mul M] [Finite M] [h : Nonempty M] :
    theorem commProb_eq_one_iff {M : Type u_1} [Mul M] [Finite M] [h : Nonempty M] :
    commProb M = 1 โ†” Std.Commutative fun (x1 x2 : M) => x1 * x2
    theorem commProb_def' (G : Type u_2) [Group G] :
    commProb G = โ†‘(Nat.card (ConjClasses G)) / โ†‘(Nat.card G)
    theorem Subgroup.commProb_subgroup_le {G : Type u_2} [Group G] [Finite G] (H : Subgroup G) :
    commProb โ†ฅH โ‰ค commProb G * โ†‘H.index ^ 2
    theorem DihedralGroup.commProb_odd {n : โ„•} (hn : Odd n) :
    commProb (DihedralGroup n) = (โ†‘n + 3) / (4 * โ†‘n)
    @[irreducible]
    def DihedralGroup.reciprocalFactors (n : โ„•) :
    List โ„•

    A list of Dihedral groups whose product will have commuting probability 1 / n.

    Instances For
      theorem DihedralGroup.reciprocalFactors_even {n : โ„•} (h0 : n โ‰  0) (h2 : Even n) :
      theorem DihedralGroup.reciprocalFactors_odd {n : โ„•} (h1 : n โ‰  1) (h2 : Odd n) :
      reciprocalFactors n = n % 4 * n :: reciprocalFactors (n / 4 + 1)
      @[reducible, inline]
      abbrev DihedralGroup.Product (l : List โ„•) :

      A finite product of Dihedral groups.

      Instances For
        theorem DihedralGroup.commProb_cons (n : โ„•) (l : List โ„•) :
        @[irreducible]
        theorem DihedralGroup.commProb_reciprocal (n : โ„•) :
        commProb (Product (reciprocalFactors n)) = 1 / โ†‘n

        Construction of a group with commuting probability 1 / n.