Package sage :: Package rings :: Package number_field :: Module galois_group :: Class GaloisGroup
[hide private]
[frames] | no frames]

Class GaloisGroup

source code

                      object --+    
                               |    
structure.sage_object.SageObject --+
                                   |
                                  GaloisGroup


The Galois group of a number field.

This is just a fairly minimal object at present.  To get the
underlying group, do \code{G.group()}, and to get the
corresponding number field do \code{G.number_field()}.  Galois
groups are mainly useful in Sage right now for getting their
structure and order, but not much more.  Of course much more
general functionality is planned. 

EXAMPLES:
    sage: K = QQ[2^(1/3)]
    sage: G = K.galois_group(); G
    Galois group PARI group [6, -1, 2, "S3"] of degree 3 of the Number Field in a with defining polynomial x^3 - 2
    sage: G.order()
    6
    sage: G.group()
    PARI group [6, -1, 2, "S3"] of degree 3
    sage: G.number_field()
    Number Field in a with defining polynomial x^3 - 2



Instance Methods [hide private]
 
__init__(self, group, number_field)
Create a Galois group.
source code
 
__cmp__(self, other)
Compare two number field Galois groups.
source code
 
__repr__(self)
Display print representation of a Galois group.
source code
 
group(self)
Return the underlying abstract group.
source code
 
order(self)
Return the order of this Galois group.
source code
 
number_field(self)
Return the number field of which this is the Galois group.
source code

Inherited from structure.sage_object.SageObject: __hash__, __new__, _axiom_, _axiom_init_, _gap_, _gap_init_, _gp_, _gp_init_, _interface_, _interface_init_, _interface_is_cached_, _kash_, _kash_init_, _macaulay2_, _macaulay2_init_, _magma_, _magma_init_, _maple_, _maple_init_, _mathematica_, _mathematica_init_, _maxima_, _maxima_init_, _octave_, _octave_init_, _pari_, _pari_init_, _r_init_, _sage_, _singular_, _singular_init_, category, db, dump, dumps, plot, rename, reset_name, save, version

Inherited from object: __delattr__, __getattribute__, __reduce__, __reduce_ex__, __setattr__, __str__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, group, number_field)
(Constructor)

source code 

Create a Galois group.

EXAMPLES:
    sage: NumberField([x^2 + 1, x^2 + 2],'a').galois_group()
    Galois group PARI group [4, 1, 2, "E(4) = 2[x]2"] of degree 4 of the Number Field in a0 with defining polynomial x^2 + 1 over its base field

Overrides: object.__init__

__cmp__(self, other)
(Comparison operator)

source code 

Compare two number field Galois groups.  First the number
fields are compared, then the Galois groups if the number
fields are equal.  (Of course, if the number fields are the
same, the Galois groups are automatically equal.)
        
EXAMPLES:
    sage: G = NumberField(x^3 + 2, 'alpha').galois_group()
    sage: H = QQ[sqrt(2)].galois_group()
    sage: cmp(G,H)
    -1
    sage: H == H
    True
    sage: G == G
    True

__repr__(self)
(Representation operator)

source code 

Display print representation of a Galois group.

EXAMPLES:
    sage: G = NumberField(x^4 + 2*x + 2, 'a').galois_group()
    sage: G.__repr__()
    'Galois group PARI group [24, -1, 5, "S4"] of degree 4 of the Number Field in a with defining polynomial x^4 + 2*x + 2'

Overrides: structure.sage_object.SageObject.__repr__

group(self)

source code 

Return the underlying abstract group.

EXAMPLES:
    sage: G = NumberField(x^3 + 2*x + 2, 'theta').galois_group()
    sage: H = G.group(); H
    PARI group [6, -1, 2, "S3"] of degree 3
    sage: P = H.permutation_group(); P  # optional -- requires Gap optional databases
    Transitive group number 2 of degree 3
    sage: list(P)                       # optional 
    [(), (2,3), (1,2), (1,2,3), (1,3,2), (1,3)]

order(self)

source code 

Return the order of this Galois group.

EXAMPLES:
    sage: G = NumberField(x^5 + 2, 'theta_1').galois_group(); G
    Galois group PARI group [20, -1, 3, "F(5) = 5:4"] of degree 5 of the Number Field in theta_1 with defining polynomial x^5 + 2
    sage: G.order()
    20

number_field(self)

source code 

Return the number field of which this is the Galois group.

EXAMPLES:
    sage: G = NumberField(x^6 + 2, 't').galois_group(); G
    Galois group PARI group [12, -1, 3, "D(6) = S(3)[x]2"] of degree 6 of the Number Field in t with defining polynomial x^6 + 2
    sage: G.number_field()
    Number Field in t with defining polynomial x^6 + 2