On Actually Computing With Symmetry In Algebraic Geometry

Most people coming into this field think symmetry means you can just divide your problem by the size of the group and call it a day. It doesn't work like that in practice. I spent about three years dealing with group actions on varieties before I stopped making the same mistakes everyone else makes initially. The basic setup is straightforward. You have a variety X and a finite group G acting on it. The quotient X/G exists as an algebraic object, and that's genuinely useful. But the moment you try to compute with it, things get messy fast.

Getting Started With Symmetry And Algebraic Geometry

Start with the invariant ring. If G acts on a polynomial ring k[x_1,...,x_n], the ring of invariants k[x_1,...,x_n]^G is what you actually care about. Noether's bound tells you generators live in degree at most |G|, but that bound is terrible in practice. For a generic group action, you're looking at invariant theory software, not hand calculations. I used to try computing Reynolds operators by averaging over the group. For groups bigger than about 50 elements, this becomes absurd. What actually works is using Molien's formula to figure out the Hilbert series first, which tells you how many generators and relations to expect before you write a single line of code. If Molien says you need something like forty generators in degree twelve, you know you're in for a rough time regardless of your approach. The computational tools here are primarily Magma and Singular with the invariant theory libraries. Magma's GInvariantRing command handles a surprising amount of stuff out of the box, but it's slow and memory-hungry. Singular's inv_toy is faster for small examples but breaks down on anything non-trivial. I ended up writing my own interface that calls both depending on the situation.

Here's a specific problem that cost me about two weeks last year. I was working with a group action of a cyclic group of order 168 on a weighted projective space, trying to resolve the singularities of the quotient. The naive approach — compute the invariant ring, find the defining equations, then resolve — gave me a system so large that every singularity resolution package I threw at it just timed out or ran out of memory. The variety had dimension three and the defining ideal had over 200 generators in a ring with six variables. The workaround was to avoid computing the full invariant ring. Instead, I worked locally around each singular point using the Reynolds operator on the local ring. Since the group is cyclic, the Reynolds operator is just averaging, and locally you only need to handle a few variables at a time. I identified the singular locus by computing where the Jacobian of the invariant map dropped rank, which gave me about eight charts to deal with instead of the whole thing at once. Each chart resolved in under a minute. Total time for the whole resolution was maybe twenty minutes instead of however long the global approach would have taken.

Get the Full Details

Line Geometry Rotational Symmetry Rhombus Lines Of Symmetry Line And
Line Geometry Rotational Symmetry Rhombus Lines Of Symmetry Line And

Things Nobody Warns You About

The first counter-intuitive thing: the quotient map X -> X/G is rarely flat. Beginners assume flatness because it's such a nice property everywhere else in algebraic geometry, but quotients by finite groups can have nasty fibers. The fiber over a point in the quotient has size equal to the index of the stabilizer, so points with nontrivial stabilizers give smaller fibers. This breaks a lot of naive arguments that depend on flat base change. The second thing: Mori dream spaces. If your variety is a Mori dream space and your group action preserves the cone of effective divisors in the right way, the graded ring associated to a divisor is finitely generated, and you can run a minimal model program on the quotient. This is useful because it means the birational geometry of X/G is actually computable in some cases. Most people never encounter this because it requires checking conditions that are easy to state and hard to verify in practice. There's also the issue of whether your quotient is factorial. Even if X is smooth and G acts freely, X/G might not be factorial. The class group of the quotient relates to the character group of G and the Picard group of X through a formula that involves the ramification locus. I once assumed a quotient was a UFD because the variety looked smooth enough, and it took me months to figure out why my divisor class calculations were wrong. The quotient had a singular point with local class group Z/2Z, which meant not every divisor was principal. This matters a lot if you're trying to write down explicit equations for bundles or line packages.

When This Approach Fails Completely

Algebraic invariant theory breaks down when G is infinite. Reductive groups are fine — you get good results from Geometric Invariant Theory — but unipotent groups can have invariant rings that aren't even finitely generated. Nagata gave the classic counterexample with a group acting on a polynomial ring in thirteen variables. If your symmetry group isn't reductive, don't bother trying to compute the full invariant ring. Work with slices or local invariants instead. Even for reductive groups, computational complexity is brutal. The ring of invariants can have generators and relations of degree that grow exponentially with the dimension of the representation. There's no way around this. If you're working with something like SL_2 acting on binary forms of degree ten or higher, you should expect that any general-purpose invariant theory computation will be prohibitively expensive unless the problem has special structure you can exploit. The other major failure mode is characteristic p. Everything gets worse when the characteristic divides the group order. Maschke's theorem fails, representations aren't semisimple, and the invariant ring can behave in ways that have no analogue in characteristic zero. If you're doing computations and your results don't match what you'd expect from a characteristic zero heuristic, check your characteristic first. I've seen people spend weeks debugging code only to realize they were working over a field of characteristic two.

For anyone actually working in this area, the most practical advice is to learn when not to compute. The invariant ring is often the wrong object to focus on. Look at the moduli interpretation instead. What does X/G parametrize? If you can describe the moduli problem directly, you sometimes get explicit equations without ever touching invariant theory. This is especially powerful for quotient stacks, where you can work with the stack structure and forget about the coarse moduli space until the very end. If you want to dive deeper, Derksen and Kemper's book is the standard reference. It's thorough but not particularly beginner-friendly. For a more computational angle, Sturmfels' work on Gröbner bases and invariant theory has some useful algorithms. The online docs for Magma and Singular are adequate but incomplete — you'll need to read source code or ask people who actually use these systems regularly. One last thing. Don't confuse the categorical quotient with the geometric quotient. The categorical quotient always exists for affine varieties, but the geometric quotient, which is the one that actually looks like the orbit space topologically, only exists when the action is free. Most papers use "quotient" to mean one or the other without being clear about which. This ambiguity causes real problems when you're trying to reproduce results or compare different approaches.

Mathematical Surveys and Monographs: Mirror Symmetry and Algebraic ...
Mathematical Surveys and Monographs: Mirror Symmetry and Algebraic ...