[back] [prev] [next] [index] [root]

 


OrderSubfieldSub

Calculates subfields with specified block systems.

Syntax:

L := OrderSubfieldSub(o, p);
L := OrderSubfieldSub(o, p, d);
L := OrderSubfieldSub(o, p, d, L1);

list
  L  
order
  o  
integer
  p  
integer
  d  
list
  L1  

See also:  OrderSubfield

Description:

This function calculates non-trivial subfields of Quo( o) using a special prime number p, which may not divide the discriminant of the equation order of o. If d is specified, only subfields of relative degree d are calculated. L1 is a potential block system of the form [block|1, … ,block|r]. The computation time is dependent on the cycle decomposition corresponding to the prime p. It is very difficult to choose a "good" prime. In some cases it is better to use this function instead of OrderSubfield.


Example:


kash> o:=Order(Poly(Zx,[1,0,-4,0,1]));
Generating polynomial: x^4 - 4*x^2 + 1

kash> OrderSubfieldSub(o,5);
[ Generating polynomial: x^2 - 4*x - 2
    , Generating polynomial: x^2 - 2
    , Generating polynomial: x^2 + 4*x + 1
     ]
kash> o:=Order(Poly(Zx,[1,0,-4,0,1]));
Generating polynomial: x^4 - 4*x^2 + 1

kash> OrderSubfieldSub(o,5);
> [ Generating polynomial: x^2 - 4*x - 2
    , Generating polynomial: x^2 - 2
    , Generating polynomial: x^2 + 4*x + 1
     ]


<- back[back] [prev] [next] [index] [root]