Proving theorems in combinatorics on words using Lean 4.
-
Updated
Mar 24, 2025 - Lean
Proving theorems in combinatorics on words using Lean 4.
Souce code for my MSc Thesis in Computer Science "Nested Marvellous Sequences"
A Haskell module exporting five functions that implement enumeration mechanisms described in Theorem 6.4 from the monograph A.O. Matveev, Symmetric Cycles, Jenny Stanford Publishing, 2023, and illustrated in Example 6.5.
A formal proof of the Commutation Lemma in Combinatorics on words.
A Haskell module exporting functions that implement enumeration mechanisms described in Theorems 7.5, 7.7, 7.9 and 7.11 from the monograph A.O. Matveev, Symmetric Cycles, Jenny Stanford Publishing, 2023, and illustrated in Examples 7.6, 7.8, 7.10 and 7.12.
Binary Smallest Grammar Problem NP-completeness candidate proof - manuscript, verification code, reproducibility tests, and expert-audit materials.
Lyndon words, Duval factorization, necklace and bracelet enumeration, and De Bruijn sequences in pure Python.
A Haskell SmirnovWordsModule.hs module exporting six functions for calculating the numbers of Smirnov words over three-letter and four-letter alphabets. Based on Appendix A of the monograph A.O. Matveev, Symmetric Cycles, Jenny Stanford Publishing, 2023.
First-order-logic decision procedure for automatic sequences (a Walnut-style prover in Rust): adaptive determinization ladder, guess-and-verify FE construction, Fibonacci/Tribonacci/Pell numeration, resource guard, Python API, web GUI. Benchmarked against Walnut.
Word Structures Lab develops open, reproducible mathematical and computational methods for understanding repetition and structure in words, while making the underlying ideas accessible enough to be explored, verified, challenged, and extended by others.
AI-assisted mathematical research manuscripts with reproducible materials across combinatorics and words, matrix and coding theory, topology, order and discrete geometry, algebra, matroids, and continuous optimization.
To associate your repository with the combinatorics-on-words topic, visit your repo's landing page and select "manage topics."