# computer program-software for galois

I need a reference for a good algebra program-software, especially for Galois theory. What I have found so far is PARI which calculates the galois group over $\mathbb Q$ of a polynomial up to degree 8, but what I am missing which I need, is to be able to calculate, say for $a=\sqrt{2}+\sqrt{3}+\sqrt{5}$, the irreducible polynomial $irr_{\mathbb{Q}, a}$(x), or even maybe over different fields. Maybe Pari can calculate that as well but personally I couldn't find how and the manual was not very illuminating. Other programs I have heard of for algebra are CoCoa and Macaulay but it 's really time consuming searching what are the capabilities of each one of them, so I decided to post this as a question, in case anyone could suggest such a program which he found most convenient.

So overall 2 questions: 1)In general, which program do you find most convenient for abstract algebra?

2)Specifically for Galois? (need not be different from the above)

I like SageMath for abstract algebra and Galois theory.

It has the functionality that you ask for (see field of algebraic numbers in the manual):

sage: f = QQbar(sqrt(2) + sqrt(3) + sqrt(5)).minpoly(); f
x^8 - 40*x^6 + 352*x^4 - 960*x^2 + 576


You can find the Galois group (this uses PARI, which is part of Sage, in the background):

sage: M.<a> = NumberField(f)
sage: M.is_galois()
True
sage: G = M.galois_group(type='pari')
sage: G.group()
PARI group [8, 1, 3, "E(8)=2[x]2[x]2"] of degree 8


You can also find the minimal polynomial over an intermediate field:

sage: L.<sqrt2>, L_to_M = M.subfield(sqrt(M(2)))
sage: M_over_L.<aa> = M.relativize(L_to_M)
sage: aa.minpoly()
x^4 - 4*sqrt2*x^3 - 4*x^2 + 24*sqrt2*x - 24


Documentation of further functionality can be found in the reference manual and the brief thematic tutorial.