MathOverflow is a question and answer site for professional mathematicians. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Let $V$ be a polynomial representation of the general linear group $\Gamma:=\DeclareMathOperator{\Gl}{Gl}\Gl_n(\newcommand{\C}{\mathbb C}\C)$.

In chapter 4.6 of his book "Algorithms in Invariant Theory", Bernd Sturmfels describes an algorithm he calls Hilbert's Algorithm, which calculates a finite set of generators for the ring of invariants $$\C[V]^\Gamma = \left\{~ f\in\C[V] ~:~ \forall\gamma\in\Gamma:~ \gamma.f=f ~\right\}.$$ My question: Are there any software implementations of this algorithm (or, of any algorithm that does the same thing) in computer algebra systems? I would prefer free software, but if the only implementation is in a commercial product, I'd still use it.

share|cite|improve this question
I have no useful comment on this very interesting question (although I think I heard people talking about implementing this recently at a Macaulay2 conference -- but it's not there yet), but I thought it might be worth remarking that this appears to me to be the 5000th question in ag.algebraic-geometry. – Karl Schwede Sep 11 '12 at 4:14
up vote 3 down vote accepted

Magma (not free, unfortunately) is capable of this. The method FundamentalInvariants(R) : RngInvar -> RngMPol should do what you need.

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.