Hi thank you for your reply! Yes this is for GSoC.

There are general steps for calculating the Galois Group (I am using 
"Galois Theory" by Ian Stewart as my reference), involving the tower law 
and working out the the Q-automorphisms of K (K being the splitting field 
for the given polynomial). I am not too sure about that precise algorithms.

For the tower law, I am not too sure if field extensions and its degree are 
implemented in SymPy? I am aware there is a algebraic field class in the 
polys module, that gives you Q(α) from Q. But is it worth implementing 
field extension Q(α)(β):Q(α) for example. Also I might need a bit of help 
with understanding the code (what is dtype?). 

And for example: 

> def from_QQ_gmpy(K1, a, K0):

"""Convert a GMPY ``mpq`` object to ``dtype``. """

return K1(K1.dom.convert(a, K0))

I don't quite understand this - it seems to do with rational fields.

In GAP you mentioned, fields are generated as follows

58.1-3 Field
> ‣ Field( z, ... )

( function )

‣ Field( [F, ]list )

( function )

Field returns the smallest field K that contains all the elements z, ..., 
or the smallest field K that contains all elements in the list list. If no 
subfield F is given, K is constructed as a field over itself, i.e. the left 
acting domain of K is K. Called with a field F and a list list, Field 
constructs 
the field generated by F and the elements in list, as a vector space over F.

I am wondering if you could do similar thing in SymPy? Again I might need 
help understanding the field class in the polys module.

58.3-1 GaloisGroup
> ‣ GaloisGroup( F )

( attribute )

The *Galois group* of a field F is the group of all field automorphisms of F 
that 
fix the subfield K =LeftActingDomain( F ) pointwise.
Note that the field extension F > K need *not* be a Galois extension.
gap> g:= GaloisGroup( AsField( GF(2^2), GF(2^12) ) );;
gap> Size( g ); IsCyclic( g );
6
true
gap> h:= GaloisGroup( CF(60) );;
gap> Size( h ); IsAbelian( h );
16
true

Then they used this for the Galois group, not sure if it can tell you the 
abstract structure of the whole group, or just test for properties. (and I 
am not sure I understand how to tell what K is in this context?)

Also I am not too sure if automorphisms are implemented in SymPy? (I am 
aware that group isomorphism is yet to be implemented in SymPy?)

The correspondence is between the subgroups of the Galois Group and the 
intermediate fields of K:L, so if you draw a lattice diagram the diagram 
looks the same. I think this might be too difficult to implement.

Thank you!

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/0e925b3d-412c-4bf4-bf9e-033e8389ce40%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to