Skip to content

feat: Domokos reduction for quiver moduli - #34

Open
pbelmans wants to merge 10 commits into
bocklandtfrom
domokos
Open

feat: Domokos reduction for quiver moduli#34
pbelmans wants to merge 10 commits into
bocklandtfrom
domokos

Conversation

@pbelmans

@pbelmans pbelmans commented Jul 9, 2026

Copy link
Copy Markdown
Member

Implements the two reduction operations from Domokos, Quiver moduli spaces of a given dimension (doi:10.4171/JCA/97):

  • tau_reduction (τ_u) merges and deletes a large vertex (Definition 2.1, Lemma 3.1);
  • sigma_reduction (σ_u) reflects a small source or sink (Definition 2.2, Lemma 3.3).

Both operations have pair-only (Q, d) methods matching the paper and weight-aware (Q, d, theta) methods that transport a King-normalized stability parameter. QuiverModuliSpace overloads return an isomorphic moduli problem with the standard denominator sum, rather than reusing a closure tied to the original vertex set.

The PR also provides is_large, is_small_source, is_small_sink, the terminating greedy driver tau_sigma_reduce, and is_taus_minimal for Definition 2.3 in the class of all sincere quiver-dimension-vector pairs.

Correctness and contracts

  • The branch is rebased onto the corrected bocklandt head.
  • Sincerity is asserted throughout the Domokos API.
  • Weight-aware entry points validate vector lengths, King normalization, and existence of semistable representations; output normalization is asserted.
  • is_taus_minimal depends only on (Q, d), as the cited definition does.
  • A state limit throws an indeterminate-search error instead of returning true; true now means the reachable reduction graph was exhausted.
  • Reduction arithmetic is checked, so a growing reflection orbit raises OverflowError instead of wrapping into a false witness.
  • The breadth-first queue uses a head index rather than repeated popfirst! calls.

Paper example and search limits

The paper does not give a finite bound for deciding Definition 2.3 by graph search. In Section 9 it proves its infinite-orbit example minimal by a case split and inequalities that force every reflection sequence to keep increasing total dimension. The docstring now explains this and includes both that example and a four-vertex pair where a cap of one is indeterminate but a cap of 100 finds a delayed tau reduction.

Tests

The full local suite passes, including doctests and 31 Domokos tests. The regressions cover:

  • pair-only and weight-aware tau and sigma reductions;
  • preservation of Hodge diamonds and dimension in the cited examples;
  • sigma involutivity and the greedy fixpoint;
  • sincerity, normalization, and semistability validation;
  • replacement of custom denominator closures;
  • bounded-search and delayed-reduction behavior;
  • checked overflow along the Section 9 orbit.

Large-vertex merge (tau_u) and small source/sink reflection (sigma_u) from
Domokos (doi:10.4171/JCA/97), with tau_sigma_reduce and is_taus_minimal.
Formulas use QuiverTools' King sign, so the tau case split is mirrored.
Check tau/sigma against the paper's Section 9 pair and reductions to P^2 and
the 3-Kronecker 6-fold, sigma involution, and tau-sigma minimality.
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