On Wednesday, March 21, 2018 at 9:23:26 AM UTC, John Cremona wrote:
>
>
>
> On 20 March 2018 at 23:57, Dima Pasechnik <[email protected] <javascript:>> 
> wrote:
>
>>
>>
>> On Tuesday, March 20, 2018 at 4:06:46 PM UTC, John Cremona wrote:
>>>
>>> Working with your degree 8 polynomial over Q is almost certainly 
>>> better.  I would also recommend reducing the defining polynomial first:
>>>
>>> sage: R.<g> = QQ[]
>>> sage: pol = g^8 - 5661818/709635*g^7 + 11951452814641/503581833225*g^6 - 
>>> 5464287298588/167860611075*g^5 + 42311165180509/503581833225*g^4 + 
>>> 290446480816/167860611075*g^3 + 6817133713732/503581833225*g^2 - 
>>> 11294971392/55953537025*g + 2238425344/503581833225
>>> sage: K.<a> = NumberField(pol)
>>> sage: K1=K.optimized_representation()[0]; K1
>>> Number Field in a1 with defining polynomial x^8 - 2*x^7 - 
>>> 2073127276349*x^6 - 585042438455127612*x^5 + 17251120619520968221641540*x^4 
>>> + 47323235466058260399591984538122*x^3 + 
>>> 52569579991119152255555179191805210311*x^2 + 
>>> 26979907667586120684167115024265757878264932*x + 
>>> 5304889912416030130201287805372669997413025784321
>>>
>>> -- not obviously a lot better, but at least it has integer 
>>> coefficients.  We can easily find its Galois group abstractly:
>>>
>>
>> Thanks---I was not aware about  optimized_representation().
>>
>
> Underneath it's the pari function "polred" which does the work.  It's a 
> good way of getting a nicer polynomial defining the same number field.  In 
> most cases, calling it with two isomorphic fields will return the same nice 
> version; not always, so there is the version polredabs which is guaranteed 
> to always give the same output for any polynomial defining the field.  (We 
> use this in the LMFDB.)
>  
>
>>
>> Let me explain a bit what I'm trying to do.
>>
>> Given 7 points in P^2 with coefficients in Q, I need 
>> 1) to find an irreducible cubic q through them s.t. q intersects qbar 
>> (it's complex conjugate) in 9 distinct real points, and
>>
>
> Assuming that your 7 points are in general position (no three on a line, 
> no 6 on a conic), the cubics through them form a 2-dimensional family (they 
> are all linear combinations of 3 of them, up to scaling).  One way to get 
> your q would be to take two such rational cubics q1 and q2 which intersect 
> in 9 points and then let q=q1+i*q2, which intersects qbar in the same 9 
> points.
>

Thanks for pointing out an option of rational cubics. It might be easier to 
work with them, right?
Is there a way to do a rational parametrisation of cubcs over Q[i] in Sage?

By the way, hat I get might be fun for a number theorist: 
I start with 6 points [[1,0,0],[0,1,0],[0,0,1],[1,1,0],[1,0,1],[0,1,1]] in 
P^2
(I had to drop the 7th point, but it turns out to be OK)
Through these 6 points I take the unique cubic q singular at a point on  
the conic c={x^2+y^2+z^2=0},
say at a point over Z[i] - a Pythagorean triple (a,b,ic) with the last 
coordinate made purely imaginary.

It appears it is always true that q also contains (a^4,b^4,c^4) !
(so this gives me a 7th point I need back, amazingly :-))




 
>
>> 2) to get hold of the points of the intersection of q and qbar with the 
>> conic c={x^2+y^2+z^2=0}, and construct 
>> cubics r and rbar through these 12 points so that q*qbar+r*rbar is 
>> divisible by x^2+y^2+z^2; (and r should not vanish on any of the
>>
> 9 points of intersection of q and qbar...)
>> I am told this is called a complex structure on the conic c, but OK; I 
>> need it to do some real algebraic geometry. :-)
>>
>> I've done 1) by choosing 2 points on c with coordinates in Q[i], and they 
>> together with the original 7 points
>> give me q, and their conjugates give me qbar, and they have the real 
>> intersection, as I need.
>>
>
> That sounds better than my construction in that I would expect the 
> intersection s of q and c not to lie in Q(i).
>  
>
>>
>> Now, for 2) I have the "ugly degree 4 polynomial" over Q[i] mentioned 
>> above, 
>> that specifies the intersection of q and c, (I know 2 intersection
>> points, and this gives me the remaining 4). The similar situation is for 
>> qbar.
>> Now, I can "go symbolic", i.e. solve these degree 4 equations in 
>> radicals, and use these radicals for computation.
>> Or I could construct an appropriate field extension, where these roots 
>> live...
>>
>> Perhaps there is a better way to do this, I don't know.
>>
>>
> I have in the past successfully used QQbar to find intersection points of 
> two curves each defined over Q.  Once you have an intersection point with 
> QQbar coordinates you can find out what number field it is defined over and 
> then go back to find the points again, working over that field.  I used to 
> do that a lot with Magma's AlgebraicallyClosedFIeld and it also works using 
> QQbar.
>
> John
>  
>
>>  
>>
>>>
>>> sage: K1.galois_group(type='pari')
>>> Galois group PARI group [1152, -1, 47, "[S(4)^2]2"] of degree 8 of the 
>>> Number Field in a1 with defining polynomial x^8 - 2*x^7 - 2073127276349*x^6 
>>> - 585042438455127612*x^5 + 17251120619520968221641540*x^4 + 
>>> 47323235466058260399591984538122*x^3 + 
>>> 52569579991119152255555179191805210311*x^2 + 
>>> 26979907667586120684167115024265757878264932*x + 
>>> 5304889912416030130201287805372669997413025784321
>>>
>>> That code means its a double cover of S4^2 (1152 = 2*24^2).  That's 
>>> bigger than the 32 you were expecting though, so perhaps working with 
>>> relative extensions would be better after all.
>>>
>>> John
>>>
>>>
>>> On 20 March 2018 at 15:44, Dima Pasechnik <[email protected]> wrote:
>>>
>>>> I do not know how efficiently relative extensions of Q[i] are 
>>>> implemented.
>>>> I would not mind an absolute field.
>>>> I need things like computing resultants and factoring univariate 
>>>> polynomials to work not too slowly.
>>>>
>>>> I did some Groebner basis computation that gave me what I suspect is an 
>>>> superfield of what I need, and it is of degree 32 over Q, with really huge 
>>>> coefs....
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "sage-nt" 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/sage-nt.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "sage-nt" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> Visit this group at https://groups.google.com/group/sage-nt.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-nt" 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/sage-nt.
For more options, visit https://groups.google.com/d/optout.

Reply via email to