ReidemeisterSchreier.Schreier

6 Theorem | 1 Definition

This module formalizes Schreier generators and rewriting.

import
  • Mathlib.Data.Nat.Basic
Imported by

Declarations

def rankTransform (r i : ℕ) : ℕ :=
  if r = 0 then 0 else 1 + i * (r - 1)

The Schreier rank transform \(T(r,i)=1+i(r-1)\), with the rank-zero convention.

@[simp] theorem rankTransform_zero_left (i : ℕ) : rankTransform 0 i = 0

Schreier's rank transform satisfies the displayed cardinal-arithmetic identity.

Show proof
@[simp] theorem rankTransform_succ (r i : ℕ) : rankTransform (r + 1) i = 1 + i * r

Schreier's rank transform satisfies the displayed cardinal-arithmetic identity.

Show proof
@[simp] theorem rankTransform_one_left (i : ℕ) : rankTransform 1 i = 1

Schreier's rank transform satisfies the displayed cardinal-arithmetic identity.

Show proof
theorem rankTransform_eq_one_add {r i : ℕ} (hr : r ≠ 0) :
    rankTransform r i = 1 + i * (r - 1)

For nonzero \(r\), the Schreier rank transform is \(1+i(r-1)\).

Show proof
theorem rankTransform_mul_index (r i j : ℕ) :
    rankTransform (rankTransform r i) j = rankTransform r (i * j)

Multiplying subgroup indices composes the Schreier rank transform.

Show proof
theorem rankTransform_mono_left {r s i : ℕ} (hrs : r ≤ s) :
    rankTransform r i ≤ rankTransform s i

The Schreier rank transform is monotone in the rank variable.

Show proof