Skip to content

Build reflection/Dynkin research corpus and compiler sketch - #2

Open
isomorphisms wants to merge 15 commits into
mainfrom
research/reflections-dynkin
Open

Build reflection/Dynkin research corpus and compiler sketch#2
isomorphisms wants to merge 15 commits into
mainfrom
research/reflections-dynkin

Conversation

@isomorphisms

@isomorphisms isomorphisms commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator

What this adds

  • Federico Ardila's official Coxeter-groups YouTube/course/index links, including the Lecture 8 correction warning.
  • Sourcing/licensing notes and original chapter-level orientation for Humphreys, Reflection Groups and Coxeter Groups; the copyrighted book itself is not mirrored.
  • A broader reflection/Coxeter reading list.
  • Summaries of John Baez's main ADE/Dynkin sequences and compiler-oriented takeaways.
  • Householder-reflector notes connecting Coxeter/reflection structure to numerical linear algebra.
  • An open-source survey covering Sage, coxeter3, CHEVIE, GAP, LAPACK, Eigen, egg/egglog, TensorRight, and related implementations.
  • An Idriç-shaped pseudocode sketch for Coxeter systems, Dynkin/Cartan data, generator words, Householder reflectors, and proof-carrying rewrites.
  • A compiler rewrite sketch centered on preserving certified group structure before lowering to dense matrix multiplication.
  • A first executable exact reducer for A2/A3 with deterministic reduced words and replayable involution/commute/braid evidence.
  • Exhaustive small-word tests, tamper/replay tests, long-input coverage, and a small Sage/coxeter3 behavioral-oracle script.

Integration tracking

First executable slice

Implemented in reducer.py and deliberately limited to A2/A3.

The reducer uses the exact type-A permutation/inversion model only to decide whether appending a generator raises or lowers Coxeter length. Every actual word transformation is an explicit Coxeter rewrite recorded in a replayable evidence chain. A3's longest reduced word has length 6, so the only search is a bounded braid-class BFS of length at most 7 to expose a cancellation or select the lexicographically least reduced expression.

tests/test_reducer.py checks exact element preservation, minimal length, full evidence replay, evidence tamper rejection, exhaustive short inputs, canonical output, and 1000-generator inputs.

oracles/sage_compare.py compares the returned element and length against Sage's reflection backend and repeats the fixtures with Sage's optional implementation="coxeter3" when available. It intentionally does not require Sage/coxeter3 to choose the same reduced spelling.

This PR still does not introduce a general Coxeter-matrix reducer, minimal-root automaton, or equality saturation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant