LeanPool.Polylean.ConjInvLength.LengthBound #
@[implicit_reducible]
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[implicit_reducible]
Equations
@[implicit_reducible]
Equations
Equations
Instances For
@[implicit_reducible]
Equations
Render a letter as a string.
Equations
Instances For
@[implicit_reducible]
Equations
The formal inverse of a letter.
Equations
Instances For
@[implicit_reducible, inline]
Equations
@[reducible, inline]
A word is a list of letters.
Instances For
Render a word by concatenating its rendered letters.
Equations
- w.toString = List.foldl (fun (x : String) (y : LeanPool.Polylean.Letter) => toString x ++ toString y) "" w
Instances For
@[implicit_reducible]
Equations
@[implicit_reducible]
Equations
- LeanPool.Polylean.Word.instPowNat = { pow := fun (w : LeanPool.Polylean.Word) (n : ℕ) => w.pow n }
def
LeanPool.Polylean.splits
(l : Letter)
(w : Word)
:
List { p : Word × Word // List.length p.fst + List.length p.snd < List.length w }
All splits of a word around occurrences of a letter, with length witnesses.
Equations
Instances For
@[irreducible]
A recursively computed conjugation-invariant length candidate.
Equations
- One or more equations did not get rendered due to their size.
- LeanPool.Polylean.length [] = 0
Instances For
@[implicit_reducible]
Equations
- LeanPool.Polylean.instPowWordLetter = { pow := fun (w : LeanPool.Polylean.Word) (l : LeanPool.Polylean.Letter) => w.conj l }