ASKSAGE: Sage Q&A Forum - Latest question feedhttps://ask.sagemath.org/questions/Q&A Forum for SageenCopyright Sage, 2010. Some rights reserved under creative commons license.Mon, 18 Jan 2021 09:41:46 -0600How can I compute a fixed field over the p-adicshttps://ask.sagemath.org/question/55336/how-can-i-compute-a-fixed-field-over-the-p-adics/I have problems to implement the following set up:
I want to have a field $K = \mathbb{Q}_3$ and an extension $L = \mathbb{Q}_3(\alpha)$ over $K$ where $f:=\min_K(\alpha) = x^4 - 3x^2 + 18$. This extension has degree $4$ and ramification index $2$. Furthermore, let $F/K$ be the unique unramified extension of $K$ of degree $4$ which is generated by a primitive $5$-th root of unity $\zeta_5$.
Then one can show that $\varphi: \alpha \mapsto \frac{(2 \alpha^2 - 3)\sqrt{-\frac{2}{7}}}{\alpha},$ $\zeta_5 \mapsto \zeta_5^3$ is an element of the Galois group of $LF/K$. Now let $L' = (LF)^{\langle \varphi \rangle}$. This must be a quadratic and totally ramified extension of $K$. There are only two possibilities for that: $K(\sqrt{3})$ or $K(\sqrt{-3})$.
**Question**: How to determine whether $L' = K(\sqrt{3})$ or $L' = K(\sqrt{-3})$ (or equivalently, $\varphi(\sqrt{3}) = \sqrt{3}$ or $\varphi(\sqrt{-3}) = \sqrt{-3}$)?
Since I only have only superficial knowledge about Sage, I was not even able to set up the easy things like the field $L$ properly. When I use
K = Qp(3)
R.<x> = ZZ[]
f = x^4 - 3*x^2 + 18
L.<alpha> = K.extension(f)
I get an error that my polynomial $f$ must be either unramified or Eisenstein (which of course does not exist since $L/K$ is neither unramified nor totally ramified). Furthermore, I have no idea how to approach with my problem with Sage otherwise. And since computation by hand is pretty hard in this case (I already tried!), it would be nice to solve with problem here, so I can use it for similar computations in the future.
Could you please help me with this problem?RotdatMon, 18 Jan 2021 09:41:46 -0600https://ask.sagemath.org/question/55336/restricting a NumberField to the reals for the calculation of a Galois grouphttps://ask.sagemath.org/question/55072/restricting-a-numberfield-to-the-reals-for-the-calculation-of-a-galois-group/I am trying to calculate a Galois Group. I have the following code
x=QQbar(7**(1/8))
L.<x>=NumberField(x.minpoly())
G=L.galois_group(names='x')
print(G)
The output is
Galois group of Galois closure in x of Number Field in x with defining polynomial x^8 - 7
I would like to restrict the number field L to the reals. My number field should be non-complex and contain the real root of the minimum polynomial only. How do I acchieve that in my code?
ThanksTintin1Sat, 02 Jan 2021 07:18:14 -0600https://ask.sagemath.org/question/55072/Pre-set memory limit reached - Gaperrorhttps://ask.sagemath.org/question/52555/pre-set-memory-limit-reached-gaperror/ Hello everyone, I am using a Sage code to compute galois group of a polynomial of degree 24. It is a symbolic polynomial so this code gives possible galois groups. When I run it for lower degrees it gives output but when the polynomial has degree 24 it doesn't compute. Because it computes subgroups of a group of order over 264 million. I know it is very hard to find these groups but i need it. I tried so hard for 3 weeks or more. I use sagemathcell, cocalc and Oracle Virtual Box. I tried so many things but they didn't work. It gives GAPerror: reached pre-set memory limit OR runtime error Gap produced error output, error, variable $sage37 must have a value. I guess the problem is computing conjugacy classes of subgroups. How can I eliminate this Gap error?
P.S1: I am very beginner at Sage. My knowledge about coding, programming etc. is very small.
P.S2: I cannot write the code here because it doesn't belong to me. I found it on internet. But if you want to see I can send you the link.nomaddSat, 18 Jul 2020 06:53:37 -0500https://ask.sagemath.org/question/52555/Why is Galois group computation failing?https://ask.sagemath.org/question/51944/why-is-galois-group-computation-failing/ L = NumberField(x^2 - x - 1, 'theta')
G = L.galois_group()
works
L = NumberField(x^3 - x - 1, 'theta')
G = L.galois_group()
gives me the error
TypeError: You must specify the name of the generator.
rain1Sat, 13 Jun 2020 05:42:27 -0500https://ask.sagemath.org/question/51944/PARI Group Labellinghttps://ask.sagemath.org/question/51427/pari-group-labelling/I have a Galois group that I'm tying to determine:
f = x^5 - 792*x^4 + 71280*x^3 + 39517632*x^2 - 7519640832*x + 314605513728
d = 3
A = -9504*d^2
B = 365904*d^3
K.<a> = NumberField(f)
R.<y> = K[]
g = y^2 - a^3 - A*a - B
L.<z> = NumberField(y^2 - a^3-A*a-B)
G = L.galois_group()
I have a couple of issues: When I type `G[1]`, it says
GaloisGroup_v1 is not subscriptable
The second is the output for `G` says
[10,-1,1,'C(10)=5[x]2']
I know this is the PARI label and the last entry is the GAP 4 label. But for the life of me I cannot find anywhere where it explicitly tells me what `C(10)=5[x]2` means.rdrrSat, 16 May 2020 12:56:09 -0500https://ask.sagemath.org/question/51427/.is_galois Computationhttps://ask.sagemath.org/question/49620/is_galois-computation/Given an irreducible polynomial $f$, Sage computes whether a given field $K= \mathbb{Q}(f)$ is Galois with $K$.is_galois. This works well if $f$ is of low degree, say 1-20. But when $f$ is large, say degree 100 or more, this is very time consuming.
For $K$ to be Galois, it must have the same degree as $f$ and because we would expect (at random) $f$ to have Galois group $S_n$, $\text{Gal}(K/\mathbb{Q})$ will be very large. So in theory, determining 'Is Galois Y/N' should run much faster than actually computing the Galois group - which is very hard.
How does Sage .is_galois work? Does it try to compute the Galois group and compare sizes, or does it use some other method? If in computing $\text{Gal}(K/\mathbb{Q})$ you find a group with size at least $> \deg f$, does it automatically stop and give 'False'? If not, is there a way to force such a feature using features already built into Sage?nmbthrTue, 21 Jan 2020 09:04:23 -0600https://ask.sagemath.org/question/49620/implement given divisor as a specific hyperelliptic curve divisorhttps://ask.sagemath.org/question/40589/implement-given-divisor-as-a-specific-hyperelliptic-curve-divisor/I get the values of a divisor for a hyperelliptic curve from a research paper to ensure the divisor is correct and i want to use this divisor on calculation.
so Idid the following:
[A Secured Cloud System using Hyper Elliptic Curve](https://www.google.com.eg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwjLjIvt_cvYAhWGvBQKHWlACL8QFggqMAE&url=https%3A%2F%2Fwww.ijser.org%2Fresearchpaper%2FA-Secured-Cloud-System-using-Hyper-Elliptic-Curve-Cryptography.pdf&usg=AOvVaw3gkCA7QngzSue-BZCV2DB8)
and in sage:
p = 4112543547855339322343814790708185367671872426434747235319998473455582535888229747778325047393413053
K = GF(p)
R.<x> = K[]
f = x^5 + 7943193*x^4 + 6521255*x^3 + 1065528*x^2 + 3279922*x + 3728927
C = HyperellipticCurve( f )
J = C.jacobian()
X = J(K)
u, v = x^2 + 22457213658579645161*x + 62960708771725664757, 65279057408798633572*x + 32004384923913711271
D = X( [u,v] )
> verbose 0 (3324:
> multi_polynomial_ideal.py,
> groebner_basis) Warning: falling back
> to very slow toy implementation.
> verbose 0 (1083:
> multi_polynomial_ideal.py, dimension)
> Warning: falling back to very slow toy
> implementation. Error in lines 9-9
> Traceback (most recent call last):
> File
> "/cocalc/lib/python2.7/site-packages/smc_sagews/sage_server.py",
> line 1013, in execute
> exec compile(block+'\n', '', 'single') in namespace, locals File
> "", line 1, in <module> File
> "/ext/sage/sage-8.1/local/lib/python2.7/site-packages/sage/schemes/hyperelliptic_curves/jacobian_homset.py",
> line 145, in __call__
> return JacobianMorphism_divisor_class_field(self,
> tuple(P)) File
> "/ext/sage/sage-8.1/local/lib/python2.7/site-packages/sage/schemes/hyperelliptic_curves/jacobian_morphism.py",
> line 388, in __init__
> polys, C)) ValueError: Argument polys (= (x^2 + 22457213658579645161*x
> + 62960708771725664757, 65279057408798633572*x +
> 32004384923913711271)) must be divisor
> on curve Hyperelliptic Curve over
> Finite Field of size
> 4112543547855339322343814790708185367671872426434747235319998473455582535888229747778325047393413053
> defined by y^2 = x^5 + 7943193*x^4 +
> 6521255*x^3 + 1065528*x^2 + 3279922*x
> + 3728927.
Does this mean the paper is wrong or I am at wrong.
and if so, how can I modify my work?sherifasagewadSat, 13 Jan 2018 05:03:30 -0600https://ask.sagemath.org/question/40589/What is a PARI group?https://ask.sagemath.org/question/40369/what-is-a-pari-group/Take for instance the example:
G = NumberField(x^5 + 15*x + 12, 't').galois_group(type="pari"); G
This gives an output:
Galois group PARI group [20, -1, 3, "F(5) = 5:4"] of degree 5 of the Number Field in t with defining polynomial x^5 + 15*x + 12
So I wonder what is the meaning of [20, -1, 3, "F(5) = 5:4"]. Is it some kind of permutation?
The relevant page of the [documentation](http://doc.sagemath.org/html/en/reference/groups/sage/groups/pari_group.html?highlight=pari%20group#module-sage.groups.pari_group) doesn't clarify it.Rodrigo RayaSat, 30 Dec 2017 06:30:00 -0600https://ask.sagemath.org/question/40369/Computing Galois group of a polynomial?https://ask.sagemath.org/question/24289/computing-galois-group-of-a-polynomial/ Here's my attempt so far:
x = polygen(QQ, 'x');
K.<z> = NumberField(x^4+x^2+2*x+1)
G = K.galois_group(type='gap')
And now I get several pages of error messages beginning with
verbose 0 (1780: permgroup_named.py, cardinality) Warning: TransitiveGroups requires the GAP database package. Please install it with ``sage -i database_gap``.
However! - I have installed this:
install_package()
[...
'database_gap-4.7.4',
...]
Anybody got any ideas on where I can go from here?AlasdairFri, 26 Sep 2014 01:41:20 -0500https://ask.sagemath.org/question/24289/question about GaloisGroup_v1?https://ask.sagemath.org/question/10845/question-about-galoisgroup_v1/Q1.<a> = NumberField(x^3- 2);Q1;
Q2.<b>= CyclotomicField(3);Q2;
Q3.<c> = Q2.extension(x^3 - 2);Q3;
Q3.absolute_polynomial();
G=Q3.galois_group();G;
G.number_field();Q
1.is_galois();
Q2.is_galois();
G2=Q2.galois_group('pari');G2;
G1.<m>=Q1.galois_group('pari');G1;
Traceback (click to the left of this block for traceback)
...
AttributeError: 'GaloisGroup_v1' object has no attribute '_first_ngens'
cjshWed, 18 Dec 2013 21:15:22 -0600https://ask.sagemath.org/question/10845/